Hinweis:
- Dieses Tutorial ist in einer von Oracle bereitgestellten kostenlosen Übungsumgebung verfügbar.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Ersetzen Sie diese Werte durch die für Ihre Cloud-Umgebung spezifischen Werte.
Netzwerkanleihen mit Network Manager-CLI erstellen
Einführung
Eine Netzwerk-Bonding gruppiert mehrere physische Netzwerkschnittstellen in einem System in einer einzelnen logischen Gruppenschnittstelle und ist mit einem Netzwerk-Switch verbunden. Das Bonding kann eine höhere Verbindungsverfügbarkeit durch Redundanz ermöglichen, indem die Verbindung beibehalten wird, wenn ein Link in der Bond-Gruppe ausfällt. Außerdem bietet die Aggregation der physischen Netzwerkschnittstelle einen höheren Durchsatz, indem der Datenverkehr über die Schnittstellen in der Bindung verteilt wird. In dieser Übung erstellen Sie mit dem NMCLI-Utility eine Netzwerk-Bonding-Schnittstelle mit mehreren physikalischen Schnittstellen, ändern den Bond-Modus und löschen die Bond-Schnittstelle.
Ziele
In dieser Übung lernen Sie Folgendes:
- Bond-Schnittstelle erstellen
- Mehrere physikalische Schnittstellen als Links in der Bond-Schnittstellengruppe hinzufügen
- Änderung des Bond-Modus für die Überwachung des Status und der Verteilung des Traffics über die Bond-Interface-Links
- Bond-Schnittstelle löschen
Hinweis: Die Verfahren in diesem Tutorial folgen den Empfehlungen von Oracle Engineering.
Voraussetzungen
- Ein Cloud-Instanzsystem mit dem aktuellen Release Oracle Linux 8 ist installiert
Bond-Schnittstelle erstellen
In dieser Übungsumgebung wird eine Oracle Linux 8-Cloud-Instanz verwendet, wobei vier Netzwerkschnittstellen verfügbar sind. Sie erstellen eine Bond-Schnittstelle mit drei dieser Netzwerkschnittstellen. Alle Schnittstellen befinden sich im gleichen privaten Subnetz des virtuellen Cloud-Netzwerks.
Hinweis: Sie können sich ein kostenloses Video ansehen, das zeigt, wie die Bond-Schnittstelle erstellt wird, indem Sie auf den Link im Abschnitt Weitere Informationen am Ende des Tutorials klicken.
-
Befolgen Sie die Anweisungen unter Oracle Linux Lab - Grundlagen, um eine SSH-Verbindung herzustellen und sich bei Ihrer Übungssysteminstanz anzumelden.
In den folgenden Abschnitten wird dargestellt, wie Sie die SSH-Verbindung zur Instanz herstellen.
- Öffentliche IP-Adresse kopieren
- Verbindung mit Oracle Linux-Instanz herstellen
ssh oracle@<ip address of instance>
-
Erstellen Sie eine Bond-Schnittstelle. Setzen Sie den Verbindungsnamen der Bindung auf Bondconn1 und den Schnittstellennamen auf bond0.
sudo nmcli connection add type bond con-name "Bondconn1" ifname bond0
-
Zeigen Sie die neu erstellte Anleihe an.
sudo nmcli connection
Beispielausgabe:
NAME UUID TYPE DEVICE Bondconn1 6a5605dc-49ad-4f8d-8e10-7c130b95aba7 bond bond0 System ens3 21d47e65-8523-1a06-af22-6f121086f085 ethernet ens3
-
Zeigen Sie die Bond-Konfigurationsdatei an, um detaillierte Informationen für die neue Bond-Schnittstelle anzuzeigen.
sudo nmcli connection show "Bondconn1"
Hinweis: Mit der Leertaste fahren Sie mit der nächsten Informationsseite in der Ausgabe fort. Verwenden Sie die Taste 'q', um die Ausgabe zu beenden und zur Befehlszeile zurückzukehren.
Partielle Beispielausgabe:
connection.id: Bondconn1 connection.uuid: e8092374-4397-4452-bc55-2f64c506b518 connection.stable-id: -- connection.type: bond connection.interface-name: bond0 connection.autoconnect: yes connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) ... ... bond.options: mode=balance-rr proxy.method: none proxy.browser-only: no proxy.pac-url: -- proxy.pac-script: -- GENERAL.NAME: Bondconn1 GENERAL.UUID: 37845378-f29a-4b10-8107-49b9f5a0f564 GENERAL.DEVICES: bond0 GENERAL.IP-IFACE: -- GENERAL.STATE: activating ... ... connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown connection.lldp: default connection.mdns: -1 (default) connection.llmnr: -1 (default) connection.wait-device-timeout: -1 ipv4.method: auto lines 1-25
Machen Sie sich mit der Suche nach Informationen in der Ausgabe vertraut, wie z.B. Bond-ID, UUID, Schnittstellenname, IP-Einstellungen und den verwendeten Bond-Modus.
Bond-Modus ändern
Der Bond-Modus gibt an, wie die Bond-Schnittstelle den Traffic über ihre Links verteilt und wie sie den Ausfall einer oder mehrerer Links in der Bond-Gruppe durch Änderung des Verhaltens von Load Balancing und Geräte-Failover behandelt.
-
Ändern Sie den von der Bond-Schnittstelle verwendeten Bond-Modus mit der Befehlsoption
bond.options "mode=active-backup"
von Round Robin in Active Backup.sudo nmcli connection modify Bondconn1 bond.options "mode=active-backup"
Hinweis: Die unterstützten Modi sind Round-Robin (balance-rr), Active Backup (active-backup), XOR (balance-xor), Broadcast (broadcast), 802.3ad (802.3ad), Adaptive Transmission Load Balancing (balance-tlb) und Adaptive Load Balancing (balance-alb).
Weitere Informationen zur Funktionsweise der verschiedenen Bond-Modi finden Sie unter diesem Dokumentationslink:
-
Zeigen Sie die Detailinformationen für die neue Bond-Schnittstelle an, um den geänderten Bond-Modus anzuzeigen.
sudo nmcli connection show "Bondconn1"
Partielle Beispielausgabe:
... ... ... cipv6.dhcp-timeout: 0 (default) ipv6.dhcp-send-hostname: yes ipv6.dhcp-hostname: -- ipv6.dhcp-hostname-flags: 0x0 (none) ipv6.token: -- bond.options: mode=active-backup proxy.method: none proxy.browser-only: no proxy.pac-url: -- lines 56-80
Schnittstellenverknüpfungen zur Bond-Schnittstelle hinzufügen
-
Zeigen Sie die Netzwerkgeräte-Schnittstelleninformationen im System an.
sudo nmcli device
Beispielausgabe:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 bond0 bond connecting (getting IP configuration) Bondconn1 ens5 ethernet disconnected -- ens6 ethernet disconnected -- ens7 ethernet disconnected -- lo loopback unmanaged --
Die Bond-Schnittstelle und vier Netzwerkgeräte sind aufgelistet. Die Geräte
ens5
,ens6
,ens7
werden als "nicht verbunden" aufgelistet. Diese Geräte können als Schnittstellenverbindungen für die Bond-Schnittstelle verwendet werden. -
Fügen Sie die Schnittstelle
ens5
als Link für die Bondschnittstellengruppe hinzu.sudo nmcli connection add type ethernet slave-type bond con-name bond0-if1 ifname ens5 master bond0
Beispielausgabe:
Connection 'bond0-if1' (56e98603-099c-46d1-acd5-1268e4ef9005) successfully added.
-
Fügen Sie die Schnittstelle
ens6
als zweiten Link für die Bond-Schnittstellengruppe hinzu.sudo nmcli connection add type ethernet slave-type bond con-name bond0-if2 ifname ens6 master bond0
Beispielausgabe:
Connection 'bond0-if2' (577a9de4-43f4-46c7-9b29-dc51ef0f7c65) successfully added.
-
Zeigen Sie die Netzwerkgeräte-Schnittstelleninformationen im System an.
sudo nmcli device
Beispielausgabe:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 ens5 ethernet connected bond0-if1 ens6 ethernet connected bond0-if2 bond0 bond connecting (getting IP configuration) Bondconn1 ens7 ethernet disconnected -- lo loopback unmanaged --
Die beiden Links sind nun der Bond-Schnittstelle zugeordnet.
IP-Adresse für die Bond-Schnittstelle konfigurieren
Standardmäßig ist die Anleihe für die Verwendung von DHCP konfiguriert. IP-Adresszuweisung, Gateway- und Netzwerkauflösungsinformationen können für die logische Bond-Schnittstelle konfiguriert werden.
-
Mit dem Befehl
ip addr
können Sie prüfen, obbond0
seinen Status alsUP
meldet.ip addr
Beispielausgabe:
17: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 02:00:17:09:f8:b0 brd ff:ff:ff:ff:ff:ff inet6 fe80::cd09:f18d:f202:3ae4/64 scope link noprefixroute valid_lft forever preferred_lft forever
-
Wenn in der Ausgabe
bond0
alsDOWN
angezeigt wird, führen Sie den Befehlsudo nmcli connection up "Bondconn1"
aus, um den Status inUP
zu ändern.sudo nmcli connection up "Bondconn1"
Beispielausgabe:
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/61)
-
-
Weisen Sie die IP-Adresse und die Subnetzmaske
'192.168.1.10/24'
der Schnittstellebond0
mit der Befehlsoptionipv4.addresses
zu.sudo nmcli connection modify "Bondconn1" ipv4.addresses '192.168.1.10/24'
-
Legen Sie die IP-Adresszuweisungsmethode auf "Manuell" fest. Dadurch werden die IP-Adresse und die Maske für die Bond-Schnittstelle konfiguriert.
sudo nmcli connection modify "Bondconn1" ipv4.method manual
-
Zeigen Sie die drei Netzwerkinformationen der Schicht für das System an.
Der Schnittstelle
bond0
ist jetzt eine IP-Adresse zugewiesen.ip addr
Partielle Beispielausgabe:
33: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 00:00:17:01:2f:ef brd ff:ff:ff:ff:ff:ff inet 192.168.1.10/24 brd 192.168.1.255 scope global noprefixroute bond0 valid_lft forever preferred_lft forever inet6 fe80::5149:fd05:55e5:9eff/64 scope link noprefixroute valid_lft forever preferred_lft forever
Zusätzliche Links zur Bond-Schnittstelle zuweisen
-
Weisen Sie das letzte nicht zugewiesene Netzwerkgerät
ens7
der Schnittstellebond0
zu.sudo nmcli conn add type ethernet slave-type bond con-name bond0-if3 ifname ens7 master bond0
Die Befehlsausgabe zeigt, dass die Bond-Schnittstellen erfolgreich hinzugefügt wurden.
-
Zeigen Sie die Netzwerkgeräte-Schnittstelleninformationen im System an.
sudo nmcli device
Beispielausgabe:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 bond0 bond connected Bondconn1 ens5 ethernet connected bond0-if1 ens6 ethernet connected bond0-if2 ens7 ethernet connected bond0-if3 lo loopback unmanaged --
Die Ausgabe zeigt das dritte an die Bond-Schnittstelle angeschlossene Netzwerkgerät.
-
Zeigen Sie die Bond-Konfigurationsinformationen an.
Dies zeigt Informationen über die Anleihe, ihren Status sowie die Verknüpfungsschnittstellen in der Bond-Gruppe und ihren Status.
cat /proc/net/bonding/bond0
Beispielausgabe:
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Peer Notification Delay (ms): 0 Slave Interface: ens5 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 02:00:17:09:f8:b0 Slave queue ID: 0 Slave Interface: ens6 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 00:00:17:02:a1:10 Slave queue ID: 0 Slave Interface: ens7 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 02:00:17:03:f1:3a Slave queue ID: 0
Die Ausgabe zeigt die Bond-Konfiguration und den Status, einschließlich der aktiven Bond-Links, ihrer Informationen und ihres Status.
Bond-Links löschen
Um die Bond-Schnittstelle zu entfernen, entfernen wir zuerst die Bond-Links.
Achtung: Löschen Sie keine Bond-Schnittstelle mit aktiven Schnittstellenlinks, die damit verbunden sind.
-
Verwenden Sie den Befehl
sudo nmcli connection delete
, und fügen Sie den Namen der Bond Link-Schnittstelle hinzu. Entfernen Sie zunächst diebond0-if3
-Verbindung, und wiederholen Sie dann die Aktion für die restlichen Bond-Schnittstellen.Hinweis: Die Reihenfolge, in der Sie die Anleiheverknüpfungen löschen, ist nicht wichtig.
sudo nmcli connection delete bond0-if3
Beispielausgabe:
Connection 'bond0-if3' (5751ef04-43f4-46c7-9b29-dc51ef0f7c65) successfully deleted.
sudo nmcli connection delete bond0-if2
Beispielausgabe:
Connection 'bond0-if2' (577a9de4-43f4-46c7-9b29-dc51ef0f7c65) successfully deleted.
sudo nmcli connection delete bond0-if1
Beispielausgabe:
Connection 'bond0-if1' (56e98603-099c-46d1-acd5-1268e4ef9005) successfully deleted.
-
Verwenden Sie den Befehl
sudo nmcli device
, um zu prüfen, ob die Geräte getrennt wurden.sudo nmcli device
Beispielausgabe:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 bond0 bond connected Bondconn1 ens5 ethernet disconnected -- ens6 ethernet disconnected -- ens7 ethernet disconnected -- lo loopback unmanaged --
Bond-Schnittstelle löschen
Bevor Sie die Bond-Schnittstelle löschen, setzen Sie die Verbindung mit dem Befehl sudo nmcli connection down
in den Status down
.
-
Übergang der Bond-Schnittstelle.
sudo nmcli connection down "Bondconn1"
Beispielausgabe:
Connection 'Bondconn1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/86)
-
Verwenden Sie den Befehl
ip addr
, um zu prüfen, ob die Bond-Schnittstelle entfernt wurde.ip addr
Die Ausgabe zeigt, dass die Bond-Schnittstelle nicht mehr aufgelistet ist.
-
Verwenden Sie den Befehl
sudo nmcli connection delete
zusammen mit dem Bond-Schnittstellennamen, um die Bond-Schnittstelle zu löschen.sudo nmcli connection delete "Bondconn1"
Beispielausgabe:
Connection 'Bondconn1' (a3d42efc-52ba-474a-9eea-67a4342420df) successfully deleted.
-
Verwenden Sie zum Prüfen den Befehl
sudo nmcli connection
.sudo nmcli connection
Beispielausgabe:
NAME UUID TYPE DEVICE System ens3 21d47e65-8523-1a06-af22-6f121086f085 ethernet ens3
Die Ausgabe zeigt, dass die einzige Verbindung
ens3
ist. -
Zeigen Sie die Bond-Konfigurationsdatei an.
cat /proc/net/bonding/bond0
cat: /proc/net/bonding/bond0: No such file or directory
Hinweis: Wenn Sie die Bond-Schnittstelle löschen, wird auch die Konfigurationsdatei entfernt.
Weitere Informationen finden Sie unter
Weitere zugehörige Ressourcen anzeigen:
- Oracle Learning Library
- Oracle-Dokumentation
- Video: Netzwerk-Bonding in Oracle Linux mit dem NMCLI-Utility
Weitere Lernressourcen
Sehen Sie sich andere Übungen auf der Website docs.oracle.com/learn an, oder greifen Sie auf Inhalte zu, die Sie über den Oracle Learning-Kanal YouTube benötigen. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Produktdokumentation finden Sie unter Oracle Help Center.
Create Network Bonds using Network Manager CLI
F56790-01
May 2022
Copyright © 2022, Oracle and/or its affiliates.