Virtuozzo CentOS VE mit veth Fehler: sysfs class device: Invalid argument

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen
Hinweis: Bitte beachten Sie, dass dieser Artikel / diese Kategorie sich entweder auf ältere Software/Hardware Komponenten bezieht oder aus sonstigen Gründen nicht mehr gewartet wird.
Diese Seite wird nicht mehr aktualisiert und ist rein zu Referenzzwecken noch hier im Archiv abrufbar.

Bei der Verwendung von veth Devices in einem CentOS 4 VE mit Updatestand CentOS 4.7 treten bei der Konfiguration eines veth Devices folgende Fehler auf:

  • Bringing up interface eth0: sysfs class device: Invalid argument
  • Error, some other host already uses address 10.20.1.101.

Ursache ist eine aktualisierte Version des arping Kommandos.

Problembeschreibung

Bei der Konfiguration eines veth Devices für ein VE mit CentOS 4.7 kommt es zu dem folgenden Fehler. Mit älteren CentOS Versionen bis inklusive 4.6 tritt das Problem nicht auf.

[root@sr2500test-node1 ~]# vznetcfg br new bridgeEth2 networkEth2
[root@sr2500test-node1 ~]# vznetcfg br attach networkEth2 eth2
[root@sr2500test-node1 ~]# vzlist 104
      VEID      NPROC STATUS    IP_ADDR         HOSTNAME                        
       104         11 running                   centos4test                     
[root@sr2500test-node1 ~]# vzctl exec 104 cat /etc/redhat-release
CentOS release 4.7 (Final)
[root@sr2500test-node1 ~]# vzctl set 104 --netif_add eth0 --save
Configure veth devices: veth104.0 
Saved parameters for VE 104
[root@sr2500test-node1 ~]# vzctl set 104 --ifname eth0 --network networkEth2 --ipadd 10.20.1.101/255.255.255.0 --gw 10.20.1.1 --save
Configure veth devices:  
Configure bridged network...
Error, some other host already uses address 10.20.1.101.
Shutting down interface eth0:  [  OK  ]
Shutting down interface venet0:  [  OK  ]
Shutting down loopback interface:  [  OK  ]
Setting network parameters:  [  OK  ]
Bringing up loopback interface:  [  OK  ]
Bringing up interface eth0:  sysfs class device: Invalid argument
Error, some other host already uses address 10.20.1.101.
[FAILED]
Bringing up interface venet0:  [  OK  ]
Saved parameters for VE 104
[root@sr2500test-node1 ~]# 

Ursache

Die in CentOS 4.7 aktualisierte Version des arping Kommandos überprüft Einträge im /sys/ (sysfs) Verzeichnis durch die ergänzte Infiniband Unterstützung[1][2]. Bei den CentOS 4 VEs ist aber die Virtualisierung des sysfs nicht standardmäßig aktiviert. Daher scheitert ab CentOS 4.7 die korrekte Ausführung des arping Kommandos in einem Virtuozzo VE.

Lösung

Die Aktivierung der sysfs Virtualisierung behebt das Problem. Dazu muss in der VE Konfiguration bei der Variable TECHNOLOGIES der Wert sysfs ergänzt werden. Nach einem Neustart des VE funktioniert dann arping im VE und somit auch die veth Konfiguration:

[root@sr2500test-node1 ~]# grep TECHNOLOGIES /etc/vz/conf/104.conf 
TECHNOLOGIES="x86_64 nptl"
[root@sr2500test-node1 ~]# vi /etc/vz/conf/104.conf 
[root@sr2500test-node1 ~]# grep TECHNOLOGIES /etc/vz/conf/104.conf 
TECHNOLOGIES="sysfs x86_64 nptl"
[root@sr2500test-node1 ~]# vzctl set 104 --netif_del eth0 --save
Deleting veth devices: veth104.0 
Saved parameters for VE 104
[root@sr2500test-node1 ~]# vzctl restart 104
Restart VE
Stopping VE ...
VE was stopped
VE is unmounted
Starting VE ...
VE is mounted
Setting devperms 20002 dev 0x7f00
Adding port redirection to VE(1): 4643 8443 
Hostname for VE set: centos4test
Setting devperms 60010 dev 0x20
VE start in progress...
[root@sr2500test-node1 ~]# vzctl set 104 --netif_add eth0 --save
Configure veth devices: veth104.0 
Saved parameters for VE 104
[root@sr2500test-node1 ~]# vzctl set 104 --ifname eth0 --network networkEth2 --ipadd 10.20.1.101/255.255.255.0 --gw 10.20.1.1 --save
Configure veth devices:  
Configure bridged network...
Shutting down interface eth0:  [  OK  ]
Shutting down interface venet0:  [  OK  ]
Shutting down loopback interface:  [  OK  ]
Setting network parameters:  [  OK  ]
Bringing up loopback interface:  [  OK  ]
Bringing up interface eth0:  [  OK  ]
Bringing up interface venet0:  [  OK  ]
Saved parameters for VE 104
[root@sr2500test-node1 ~]# 

Referenzen

Weitere Informationen


Foto Werner Fischer.jpg

Autor: Werner Fischer

Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.


Das könnte Sie auch interessieren

NFS Dateisystem in Virtuozzo einbinden
Verteilung des Arbeitsspeichers bei VEs
VLANs in Virtuozzo konfigurieren