PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : unerklärliche Geschwindigkeiteseinbrüche bei einem KVM Gast



apt pupil
02.02.12, 00:38
Hallo Leute
ich betreibe einen Server bei einem Provider

auf diesem Läuft KVM mit Libvirt; mit 2 VServer
Der Server hatte bisher 3 IP-Adressen:
Host: xxx.xxx.70.90
VServer1: xxx.xxx.70.92
Vserver2: xxx.xxx.70.93
(alle sind im selben Subnetz /29)
Auf dem Host läuft eine mit Bridge-Utils eingerichtete Netzwerkbrücke br0.

Jetzt sollte auf VServer2 ein weiterer Webauftritt SSL bekommen.
ich habe eine IP bestellt und dann diese erhalten:
xxx.xxx.68.185
Eine Information in welchem Subnetz diese Adresse ist habe ich nicht bekommen.
Also habe ich dem VHost 2 in der libvirt-Konfiguration eine weiter Netzwekkarte hinzugefügt, den VServer neu gestartet und die Netzwerkkarte wie folgt konfiguriert:



iface eth1 inet static
address xxx.xxx.68.185
netmask 255.255.255.255
gateway xxx.xxx.70.81
pointopoint xxx.xxx.70.81

was ja dann soweit auch ganz gut funktioniert.
habe dann den Apachen für die neue IP klar gemacht (die gleiche Konfig wie schon beim bestehenden SSL-Auftritt, von der neuen IP Adresse, dem DocumentRoot und dem Zertifikat abgesehn), dann kurz getestet -> geht

Dann hat mir jemand gesagt die neue Seite wäre super lahm, egal ob mit oder ohne SSL

Hab dann nachgeschaut und es Stimmt tatsächlich
wenn ich von einem anderen Server aus die Webseite mit wget herunterlade, erhalte ich in 90% aller Fälle Downloadraten zwischen 30/s und 150 kb/s. In 10 % aller Fälle sind es Downloadraten zwischen 1-2 MB/s

Wenn ich die Webseite IP technisch auf die ursprüngliche IP zurücksetze (das wäre dann die Adresse welche der VServer2 schon länger besitzt) und dann (über einen eigens dafür angelegten DNS-Record) die Webseite herunterlade habe ich immer downloadraten von mindestens 1,5 MB/s

Vom Host aus habe ich zur neuen IP downloadraten von 28,5 MB/s
Vom anderen Vserver aus 20 MB/s

ich verstehe nicht wo der Fehler sein soll.
Laut dem Provider ist die IP Adresse nicht irgendwie gedrosselt.

Das Problem scheint nicht am Webserver zu liegen, FTP auf diese IP zeigt ein ähnliches verhalten. Extrem schwankende Übertragungsraten.

Hat jemand da eine Idee?

könnte es an der Netzwerkbrücke liegen? (ich meine: die funktioniert wie ein Switch, der sollte es doch egal sein welche IP Adressen sie umlenkt). nzw wie kann man diese debugen? ich habe in so ziemlich allen logfiles auf dem Host und dem Gast nachgeschaut, aber keinen Hinweis auf eine Fehlfunktion gefunden

Bin für jeden Tipp dankbar

jhw
02.02.12, 09:31
Wie schaut denn die Ausgabe von 'ifconfig' aus?

apt pupil
02.02.12, 11:20
auf VHost2:


eth0 Link encap:Ethernet Hardware Adresse 00:50:56:00:01:ec
inet Adresse:xxx.xxx.70.93 Bcast:xxx.xxx.70.95 Maske:255.255.255.240
inet6-Adresse: fe80::250:56ff:fe00:1ec/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:2694323 errors:0 dropped:0 overruns:0 frame:0
TX packets:4111072 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:179696779 (171.3 MiB) TX bytes:6098210548 (5.6 GiB)

eth1 Link encap:Ethernet Hardware Adresse 00:50:56:00:05:6c
inet Adresse:xxx.xxx.68.185 Bcast:xxx.255.255.255 Maske:255.255.255.255
inet6-Adresse: fe80::250:56ff:fe00:56c/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:24577 errors:0 dropped:0 overruns:0 frame:0
TX packets:98 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:3876006 (3.6 MiB) TX bytes:7088 (6.9 KiB)

lo Link encap:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metrik:1
RX packets:15904 errors:0 dropped:0 overruns:0 frame:0
TX packets:15904 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:3634016 (3.4 MiB) TX bytes:3634016 (3.4 MiB)


auf dem Wirt-System:


br0 Link encap:Ethernet Hardware Adresse 6c:62:6d:99:87:4f
inet Adresse:xxx.xxx.70.90 Bcast:xxx.xxx70.95 Maske:255.255.255.240
inet6-Adresse: fe80::6e62:6dff:fe99:874f/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:14135 errors:0 dropped:0 overruns:0 frame:0
TX packets:10396 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:12379753 (11.8 MiB) TX bytes:2419898 (2.3 MiB)

eth0 Link encap:Ethernet Hardware Adresse 6c:62:6d:99:87:4f
inet6-Adresse: fe80::6e62:6dff:fe99:874f/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:6060930 errors:0 dropped:0 overruns:0 frame:0
TX packets:9133756 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:424651260 (404.9 MiB) TX bytes:13523126287 (12.5 GiB)
Interrupt:29 Basisadresse:0x6000

lo Link encap:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metrik:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

vnet0 Link encap:Ethernet Hardware Adresse fe:50:56:00:01:d6
inet6-Adresse: fe80::fc50:56ff:fe00:1d6/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:5022144 errors:0 dropped:0 overruns:0 frame:0
TX packets:3352389 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:500
RX bytes:7434703514 (6.9 GiB) TX bytes:242805948 (231.5 MiB)

vnet1 Link encap:Ethernet Hardware Adresse fe:50:56:00:01:ec
inet6-Adresse: fe80::fc50:56ff:fe00:1ec/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:4111102 errors:0 dropped:0 overruns:0 frame:0
TX packets:2708754 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:500
RX bytes:6098233148 (5.6 GiB) TX bytes:181958627 (173.5 MiB)

vnet2 Link encap:Ethernet Hardware Adresse fe:50:56:00:05:6c
inet6-Adresse: fe80::fc50:56ff:fe00:56c/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:99 errors:0 dropped:0 overruns:0 frame:0
TX packets:24585 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:500
RX bytes:7174 (7.0 KiB) TX bytes:3876614 (3.6 MiB)

auch hier sind keine Errors /und/oder gedroppte pakete Sichtbar.

Das Interface Vnet2 auf dem Wirt-system wird zum Interface eth1 in Vhost2 durchgeschleift

noch etwas vom Wirt:


brctl show
bridge name bridge id STP enabled interfaces
br0 8000.6c626d99874f no eth0
vnet0
vnet1
vnet2

apt pupil
02.02.12, 17:52
/edit:
hi Leute

ich habe das problem etwas eingrenzen können. ich vermute mal daß es an der Bridge liegt:
ich habe auf Wirt und auf dem betroffenen Gast einen tcpdump laufen gelassen und von einem anderen Server aus eine webseite angefordert.
der Gast erhilt 30% weniger pakete als das Wirt-System

wenn man sich das anschaut:



brctl show
bridge name bridge id STP enabled interfaces
br0 8000.6c626d99874f yes eth0 <- wirt
vnet0 <- vhost1, eth0, funzt problemlos
vnet1 <- vhost2, eth0, funzt problemlos
vnet2 <- vhost2, eth1 <- macht probleme


showmachs zeigt aber folgendes an:

brctl showmacs br0
port no mac addr is local? ageing timer
1 00:26:88:76:14:07 no 0.00
2 00:50:56:00:01:d6 no 1.30
3 00:50:56:00:01:ec no 1.30
1 6c:62:6d:99:87:4f yes 0.00
2 fe:50:56:00:01:d6 yes 0.00
3 fe:50:56:00:01:ec yes 0.00
4 fe:50:56:00:05:6c yes 0.00

zum ersten teil:
1 Mac-Adresse des Gateways °°
2 gehört zu vhost1 eth0
3 gehört zu vhost2 eth0

der untere teil:
1 gehört zu Wirt -> eth0 / br0
2 gehört zu Wirt -> vnet0
3 gehört zu Wirt -> vnet1
4 gehört zu Wirt -> vnet2

... sieht man die zur neuen IP Adresse gehörende mac adresse nicht in den bridge mac adressen. leider koppelt der provider die ip adressen mit den mac adressen.
diese müsste bei den showmacs im oberen Bereich auftreten.
wüsste man nur wie man das beeinflussen kann

iptables und ebtables habe ich auf dem Wirt bereits geflusht, ohne erfolg :-(