starke performanceprobleme auf neuem Server

rakso

Well-Known Member
Hallo zusammen,

Auf meinem neuen hetzner EX4 rootserver ist freebsd 9 release amd64 extrem lahm, wie mit angezogener Handbremse und ich weiss nicht, woran es liegt.
Die Befhle auf der shell reagieren träge, die Webseiten sind langsam.

Wie komm ich dem Problem auf die Schliche?


Code:
last pid: 13648;  load averages:  1.53,  1.40,  1.03                                                up 4+19:35:27  14:31:57
277 processes: 2 running, 275 sleeping
CPU:     % user,     % nice,     % system,     % interrupt,     % idle
Mem: 546M Active, 961M Inact, 13G Wired, 22M Cache, 1056M Free
Swap: 16G Total, 126M Used, 16G Free
(dass der load über 1 ist, ist neu, vor 2 stunden, vor zpool scrub, war das noch bei ca 0,34)


Code:
iostat
       tty            ada0             ada1            pass0             cpu
 tin  tout  KB/t tps  MB/s   KB/t tps  MB/s   KB/t tps  MB/s  us ni sy in id
   0   415 110.64 131 14.12  108.74 132 13.97   0.00   0  0.00   5  0  1  0 94

Code:
# vmstat -i
interrupt                          total       rate
irq1: atkbd0                          46          0
irq23: ehci0 ehci1                920109          2
cpu0:timer                     101741607        244
irq264: re0                     21405355         51
irq265: ahci0                  110785009        266
cpu1:timer                      59644428        143
cpu5:timer                      58593670        141
cpu3:timer                      58709142        141
cpu6:timer                      58971425        141
cpu4:timer                      59277581        142
cpu2:timer                      59697442        143
cpu7:timer                      58033867        139
Total                          647779681       1559

CPU: Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz (3411.55-MHz K8-class CPU)
Origin = "GenuineIntel" Id = 0x206a7 Family = 6 Model = 2a Stepping = 7
[...]
real memory = 17179869184 (16384 MB)
avail memory = 16423165952 (15662 MB)
Event timer "LAPIC" quality 600
ACPI APIC Table: <ALASKA A M I>
FreeBSD/SMP: Multiprocessor System Detected: 8 CPUs
FreeBSD/SMP: 1 package(s) x 4 core(s) x 2 SMT threads

nach erster Abklärung im chat habe ich folgende Werte per Hand geändert.

dev.cpu.0.freq = 3401 (war zuvor 3100)
kern.eventtimer.periodic = 1 (war 0)
kern.eventtimer.idletick = 1 (war 0)

Diese Maßnahmen brachten aber keine Verbesserung.

Die datasets nutze ich mit standardwerte, also keine compression oder so.
Code:
NAME                          USED  AVAIL  REFER  MOUNTPOINT
tank                          400G  2.27T    21K  none
tank/data                    23.5G  2.27T  1.66M  /data
tank/data/jails              23.5G  2.27T  15.0G  /data/jails
tank/data/jails/web1         2.01G  2.27T  2.01G  /data/jails/web1
tank/data/jails/basejail      229M  2.27T   229M  /data/jails/basejail
tank/data/jails/db0          5.53G  2.27T  5.53G  /data/jails/db0
tank/data/jails/mail0         676M  2.27T   676M  /data/jails/mail0
tank/jweb1www                 295G  2.27T   295G  /data/jails/web1/data/www
tank/jdb0mysql               14.5G  2.27T  14.5G  /data/jails/db0/var/db/mysql
tank/jmail0maildirs          29.4G  2.27T  29.4G  /data/jails/mail0/data/maildirs
tank/jweb0data               23.9G  2.27T  23.9G  /data/jails/web0/data
tank/root                    13.9G  2.27T  13.7G  /
tank/root/tmp                34.5K  2.27T  34.5K  /tmp
tank/root/var                 147M  2.27T   147M  /var


Code:
 scan: scrub in progress since Sat Apr 14 12:31:18 2012
        33.2G scanned out of 409G at 5.44M/s, 19h38m to go
        0 repaired, 8.12% done

Code:
zpool iostat
               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
tank         398G  2.31T    214     94  25.5M  1.27M
 
Last edited:
Grundsätzlich erst mal keine Ahnung was es ist.

Dennoch eine Frage, womit bindest Du die Jails netzwerktechnisch an, mit pf oder ipfw?
 
So natürlich ist das nicht, schon gar nicht unter FreeBSD.

Wie auch immer, in dem Fall kann ich dir nicht weiter helfen - sorry.
 
Die Mainboards der Hetzner EQ4 verfügen über einen Realdreck Ethernetchip der zu duplex-missmatch neigt. Die nötige Einstellung lautet:
Code:
ifconfig re0 media 100baseTX mediaopt full-duplex,flag0
Der NIC des EQ4 wird sonst zumindestens unter FreeBSD 8.2 als 100Mbit/s half-duplex laufen. Der Switchport läuft allerdings als 100Mbit/s full-duplex. Dies führt aus sicht deines Servers zu excessive collisions. Dies kann so weit gehen das SSH unbenutzbar wird unter Last. Es könnte gut sein das der Chip deines EX4 das selbe Problem hat und auto neogation broken ist.
 
Code:
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
        ether xxx
        inet xxx netmask 0xffffffe0 broadcast xxx
        inet6 xxx%re0 prefixlen 64 scopeid 0x3 
        inet xxx netmask 0xfffffff8 broadcast xxx
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet 100baseTX <full-duplex>
        status: active
vor deinem Tip war
Code:
media: Ethernet autoselect (1000baseT <full-duplex>)


EIne Veränderung kann ich aber nicht feststellen. Es fühlt sich eher nach dem Dateisystem an. Bonnie++ kommt nicht in die Gänge..
 
??? hört sich nach Neuinstallation an??


Code:
Version  1.96       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
xxxxx           32G   171  99 12318   1  7458   1   420  82 108942   5  65.6   2
Latency             46535us   29089ms   22944ms    1030ms    1605ms    4881ms
Version  1.96       ------Sequential Create------ --------Random Create--------
xxxxx            -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16 10868  29 +++++ +++  5310  15  7586  26 +++++ +++ 12566  37
Latency             10352us      89us     144us    7572us      22us     143us
1.96,1.96,xxxx,1,1334519853,32G,,171,99,12318,1,7458,1,420,82,108942,5,65.6,2,16,,,,,10868,29,+++++,+++,5310,15,7586,26,+++++,+++,12566,37,46535us,29089ms,22944ms,1030ms,1605ms,4881ms,10352us,89us,144us,7572us,22us,143us

PS: Platten sind ST3000DM001-9YN166
ashift = 9

Was nun?
 
Last edited:
Hi,

steh ich grade aufm Schlauch? Hab mal bei mir geschaut ... immer 9 ... aber keine Probleme? Platten sind die 2TB SEAGATE ST32000444SS ...

Danke und Grüße,
Kai
 
wenn das bei mir die ursache des problems ist, scheint es sogar SPÜRBAR ineffizient zu sein. ich richte mich jetzt drauf ein den neuen srv nocheinmal zu installieren.
 
Hi,
berichte mal ob die neue Hypfburg die von Dir beschriebenen Performance Probleme so immer noch hat oder ob man da nun bärig schneller hypfen kann.
Gruß Bummibär
 
der datendurchsatz HDD hat sich deutlich verbessert, die unteren werte haben sich in etwa verdreifacht, die oben um noch mehr.

Code:
Version  1.96       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hosthostde    32G   189  99 111651  14 79399  11   434  84 224176  13 188.3   2
Latency             53207us   12433ms    4989ms    1026ms     314ms     548ms
Version  1.96       ------Sequential Create------ --------Random Create--------
hosthostde        -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16 31083  85 +++++ +++ 32638  93 31646  90 +++++ +++ 26736  74
Latency             13964us      79us     102us   22613us      23us      52us
1.96,1.96,hosthostde1,1334765360,32G,,189,99,111651,14,79399,11,434,84,224176,13,188.3,2,16,,,,,31083,85,+++++,+++,32638,93,31646,90,+++++,+++,26736,74,53207us,12433ms,4989ms,1026ms,314ms,548ms,13964us,79us,102us,22613us,23us,52us


So schön das ist, so schlecht ist jetzt die Netzwerkperformance

download von ftp2.de.freebsd.org

SRV1: 3 Mbit
SRV2: 30kb/s <-- um den gehts hier

Vor der Neuinstalllation scp von srv2 auf srv1 ging mit 8 MBit, jetzt revers nur mit 300 Kbit.
Gemäß Hetzner-Wiki ist die nic fest eingestellt:
ifconfig re0 media 100baseTX mediaopt full-duplex,flag0

wtf...?!

edit: eine test iso datei von hetzner geht mit 2 vs 11 Mbit
im rescuesystem 37 Mbit, liegt also wohl nicht an der hardware.
 
Last edited:
mein alter server ja auch und der neue (SRV2) schafft im rescue system auch 30 Mbit bei dem hetzner-iso. nur in fbsd isses isdn-speed.

jetzt also das gleiche - debugging - auf netzwerkebene.. grrrr. wie finde ich den flaschenhals?? aber ist eigentlich alles auf standard, kein altq oder sowas.. auch ohne pf.

ping is übrigend gut.
 
Last edited:
Hab auch einen EX4 bei Hetzner mit FreeBSD 9.0
Die EX-Reihe ist standardmäßig mit GBit angebunden (Autodiscovery)
so sieht meine NIC aus:

Code:
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
       nd6  options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
       media: Ethernet autoselect (1000baseT <full-duplex>)
       status: active
Intern (Server <-> Server) gehen fast 1GBit
von/zu Extern an die 450MBit

Und ich hab nicht den Fix aus dem Wiki angewendet,
laut Wiki "... älteren FreeBSD Versionen als 8.2 / 7.4 ... "
 
ifconfig im rescuesystem zeigt in der Tat Gigabit:
Code:
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
	options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
	ether xx:xx:xx:xx:xx:xx
	inet x.x.x.x netmask 0xffffffe0 broadcast xx.xx.xx.x
	nd6 options=3<PERFORMNUD,ACCEPT_RTADV>
	media: Ethernet autoselect (1000baseT <full-duplex>)
	status: active

wenn ich

ifconfig re0 media 1000baseT mediaopt full-duplex,flag0

setze, egal ob auf dem host oder im rescuesystem, ist die kiste nichtmehr erreichbar.

nur exakt nach dem wiki ( ifconfig re0 media 100baseTX mediaopt full-duplex,flag0 ) funktioniert es.
Dann aber max 3 Mbit down.


Keine Ahnung was da schon wieder los ist..
 
Ich setz da fast garnichts,

rc.conf:
Code:
ifconfig_re0="inet XX.XX.XX.XX netmask 255.255.255.224"
pciconf -l:
Code:
re0@pci0:4:0:0:    class=0x020000 card=0x84321043 chip=0x816810ec rev=0x06 hdr=0x00
 
nun gehts auch bei mir. das hetzner test iso aber nur mit ca 40 MBit, und zwischen den servern mit scp immerhin mit ca 10 MBit. Vermutlich liegts an der Verschlüsselung oder so.

Vom ftp2.de.freebsd.org server gehts nur mit 3 Mbit, das ist also nicht gerade einie gute Möglichkeit zum Speedtest.

Wie kann man das machen?
 
Mh, stockt bei Dir der Download?
Also lädt 2-3 Sekunden, stoppt länger und macht dann wieder weiter?

Wenn Dein Problem mit der Plattenperformance gelöst ist, müsstest du mehr Durchsatz haben

Code:
fetch http://hetzner.de/100MB.iso
100MB.iso                                     100% of   99 MB   55 MBps
 
Hi,
mach halt mal en iperf single und dual test zwischen zwei Servern und schau Dir das an. Wichtig wäre halt das beide Kisten möglichst wenig Netzwerktraffic bei der Testsituation haben bzw. wieviel schon in Use ist bekannt ist.
Gruß Bummibär
 
Back
Top