Ich habe einige Probleme beim Einrichten verbundener Schnittstellen in einem CentOS 6.5
Kickstart-Skript. Ich habe 8 physische Netzwerkschnittstellen, die paarweise als 4 verbundene Netzwerkschnittstellen konfiguriert werden sollen.
Meine Netzwerkeinstellungen sind wie folgt:
network --device=bond0 --noipv6 --bootproto=static --onboot=yes --ip=172.123.1.22 --netmask=255.255.255.0 --bondslaves=eth0,eth1 --bondopts=mode=active-backup,primary=eth0,miimon=80,updelay=60000
network --device=bond1 --noipv6 --bootproto=static --onboot=yes --ip=172.123.2.22 --netmask=255.255.255.0 --bondslaves=eth2,eth3 --bondopts=mode=active-backup,primary=eth2,miimon=80,updelay=60000
network --device=bond2 --noipv6 --bootproto=static --onboot=yes --ip=172.123.3.22 --netmask=255.255.255.0 --bondslaves=eth4,eth5 --bondopts=mode=active-backup,primary=eth4,miimon=80,updelay=60000
network --device=bond3 --noipv6 --bootproto=static --onboot=yes --ip=172.123.4.22 --netmask=255.255.255.0 --bondslaves=eth6,eth7 --bondopts=mode=active-backup,primary=eth6,miimon=80,updelay=60000
network --device=eth0 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth1 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth2 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth3 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth4 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth5 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth6 --noipv6 --nodns --bootproto=static --onboot=yes
network --device=eth7 --noipv6 --nodns --bootproto=static --onboot=yes
Mein Problem ist folgendes: bond0
ist richtig eingerichtet, aber bond1
und bond2
sind bond3
nicht eingerichtet.
Ich habe eine Reihe von Messageboard-Posts zu ähnlichen Themen gesehen, und die Lösung scheint immer darin zu bestehen, ein benutzerdefiniertes Bash-Skript zum Einrichten der verbundenen Schnittstellen einzufügen. Ich glaube jedoch nicht, dass dies die einzige Möglichkeit ist. Warum sollte es in der Kickstart-Datei einen Mechanismus zum Einrichten verbundener Schnittstellen geben, wenn dieser nicht richtig funktioniert?
Antwort1
Möglicherweise müssen Sie --activate
für jede der eth{1..7}
Schnittstellen einschließen, da standardmäßig nur die erste Schnittstelle aktiviert ist. (Und ich frage mich, ob Ihre verbundene Schnittstelle in Wirklichkeit nur verwendet eth0
, wenn dies die einzige aktive Schnittstelle ist.)
Antwort2
Die Möglichkeit, verbundene Schnittstellen in Ihrem Kickstart zu konfigurieren, ist eine relativ neue Ergänzung in der RHEL-Versionsreihe; und möglicherweise war 6.4 die erste Version, die dies unterstützte. Haben Sie es mit 6.6 versucht?
Aus den RHEL 6.4 Release Notes
Bonding konfigurieren Die Boot-Option „Bond“ und die Kickstart-Optionen „--bondslaves“ und „--bondopts“ können jetzt verwendet werden, um Bonding als Teil des Installationsvorgangs zu konfigurieren. Weitere Informationen zum Konfigurieren von Bonding finden Sie in den folgenden Teilen des Red Hat Enterprise Linux 6-Installationshandbuchs: Abschnitt „Kickstart-Optionen“ und Kapitel „Boot-Optionen“.
Allerdings geben die technischen Hinweise zu 6.5 und 6.6 nicht viel Aufschluss. (Obwohl dort ein Hinweis auf eine „Nicedelay“-Option für langsame Netzwerkgeräte steht.)
Mein bester Rat wäre, die Ausgabe von Anaconda zu erfassen.
Ich vermute, dass das erste funktioniert, weil es eth0 enthält, das vermutlich bereits aktiv ist, oder weil der Treiber bereits geladen ist.
Existieren die anderen vielleicht zum Zeitpunkt der Konfiguration noch nicht? Vielleicht solltest du die Ergebnisse ifconfig -a
in eine Datei im %pre o.ä. schreiben, wie in derTipps und Tricks-Teil der CentOS Kickstart-Wiki-Seite