Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Beispiel-Tutorial zur Konfiguration von Netzwerkschnittstellen-Bonding

Beispiel-Tutorial zur Konfiguration von Netzwerkschnittstellen-Bonding

PHP中文网
PHP中文网Original
2017-06-21 13:46:032261Durchsuche

Beim

Bonding

geht es darum, die schnelle Netzwerkkarte für externe Dienste an dieselbe IP-Adresse zu binden, wodurch eine hohe Verfügbarkeit oder ein Lastausgleich erreicht werden kann. Natürlich ist es nicht möglich, für zwei Netzwerkkarten direkt dieselbe IP-Adresse festzulegen. Durch Bonding stellt eine virtuelle Netzwerkkarte externe Verbindungen bereit und die physische Netzwerkkarte wird auf dieselbe MAC-Adresse geändert.

Bonding-Arbeitsmodus

Modus 0 (Balance-rr)

Round-Robin-Strategie: Datenpakete nacheinander senden von Beginn bis Ende auf jeder Slave-Schnittstelle. Dieser Modus bietet Lastausgleichs- und Fehlertoleranzfunktionen.

Modus 1 (Active-Backuop)

Aktiv-Backup (Active-Backup)-Strategie: In der Bindung wird nur ein Slave aktiviert und nur bei Ausfall der aktiven Slave-Schnittstelle andere Slaves aktiviert . Um Verwechslungen am Switch zu vermeiden, ist die gebundene MAC-Adresse nur an einem externen Port sichtbar.

Modus 3 (Broadcast)

Broadcast-Strategie: Alle Pakete auf allen Slave-Schnittstellen senden. Dieser Modus bietet Fehlertoleranz.

Zweite Bonding-Konfiguration

1 Erstellen Sie die Konfigurationsdatei des Bonding-Geräts

[root@CentOS68 ~]# vim /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0

BOOTPROTO=none

BONDING_OPTS="miimon=100 mode=0"

IPADDR=200.200.200.200

PREFIX=24

GATEWAY=200.200.200.1

miimon ist die Zeit zum Festlegen des Erkennungslinks in Millisekunden. Wenn miimon=100, erkennt das System alle 100 Millisekunden den Verbindungsstatus einer Seite der Verbindung. Wenn eine Leitung nicht verfügbar ist, wird auf eine andere Leitung umgeschaltet.

Modus wird verwendet, um den Modus festzulegen.

2 Erstellen Sie die Slave-Konfigurationsdatei.

ist die Konfigurationsdatei der hinzuzufügenden Netzwerkkarte Wir verwenden eth1 und eth2 Zwei Netzwerkkarten, kommen Sie herunter und ändern Sie die Konfiguration der beiden Netzwerkkarten

[root@CentOS68 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

TYPE=Ethernet

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=0

MASTER gibt an, zu welchem ​​Bond die Testnetzwerkkarte gehört. SLAVE gibt die Zugehörigkeit an. USERCTL gibt an, ob der Benutzer über Kontrollberechtigungen verfügt.

Die Konfiguration von eth2 und eth1 ist ähnlich

[root@CentOS68 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth2

DEVICE=eth2

TYPE=Ethernet

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=0

3 Starten Sie den Netzwerkdienst neu

[root@CentOS68 ~]# service NetworkManager stop #centos6上不稳定,建议关闭
[root@CentOS68 ~]# service network restart

Schnittstelle Bond0 herunterfahren: [ OK ]

Schnittstelle eth0 herunterfahren: [ OK ]

Loopback-Schnittstelle herunterfahren: [ OK ]

Loopback-Schnittstelle aufrufen: [ OK ]

Schnittstelle Bond0 aufrufen: Feststellen, ob die IP-Adresse 200.200.200.200 bereits für Gerät Bond0 verwendet wird...

[ OK ]

Schnittstelle eth0 aufrufen: Feststellen, ob die IP-Adresse 192.168.29.68 bereits für das Gerät eth0 verwendet wird...

[ OK ]

Sie können das sehen wurde erfolgreich gestartet, schauen wir es uns noch einmal an Nächste IP-Adresse und MAC

[root@CentOS68 ~]# ip a

[…]

7: eth1: aa21124c6b020f25301b2a306db0db5c mtu 1500 qdisc pfifo_fast master bond0 state UP qlen 1000

link/ether 00:0c:29:74:74:45 brd ff:ff:ff:ff:ff:ff

8: eth2: 5082bcdb8b275bc92c853063db807a70 ff:ff:ff:ff:ff :ff

9: bond0: f16b17e17ec6cf7c4dd03dd151ee0e2e mtu 1500 qdisc noqueue state UP

link/ether 00: 0c:29:74:74:45 brd ff:ff:ff:ff:ff:ff

inet 200.200.200.200/24 ​​​​brd 200.200.200.255 Scope Global Bond0

inet6 fe80 ::20c:29ff:fe74:7445/64 Scope Link tentative dadfailed

valid_lft Forever Preferred_lft Forever

Sie können sehen, dass die IP-Adresse wirksam geworden ist und die MAC-Adressen identisch sind.

4 Überprüfen Sie den Status von Bond0

[root@CentOS68 ~]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (27. April 2011)

Bonding-Modus: Lastausgleich (Round-Robin)

MII-Status: aktiv

MII-Abfrageintervall (ms): 100

Hochlaufzeit (ms): 0

Abschaltverzögerung (ms): 0

Slave-Schnittstelle: eth1

MII-Status: aktiv

Geschwindigkeit: 1000 Mbit/s

Duplex : voll

Anzahl der Verbindungsfehler: 0

Permanente HW-Adresse: 00:0c:29:74:74:45

Slave-Warteschlangen-ID: 0

Slave-Schnittstelle: eth2

MII-Status: aktiv

Geschwindigkeit: 1000 Mbit/s

Duplex: voll

Anzahl Verbindungsfehler: 0

Permanente HW-Adresse: 00:0c:29:74:74:4f

Slave-Warteschlangen-ID: 0

Okay, alles läuft gut

5 Löschen Bindung

[root@CentOS68 ~]# ifconfig bond0 down

[root@CentOS68 ~]# rmmod bonding
Überprüfen Sie, ob der Löschvorgang erfolgreich war,

bond0: error fetching interface information: Device not found

已经找不到bond0,说明删除成功。

详细帮助:/etc/share/doc/kernel-doc-version/Documentation/networking/bonding.txt

 

三 nmcli实现bonding

 1 添加bonding接口

[root@centos7 ~]# nmcli connection add type bond con-name mybond0 ifname bond0 mode active-backup

Connection 'mybond0' (cc101e79-3dcb-49ee-8164-89c9e877c315) successfully added.

2添加从属接口

[root@centos7 ~]# nmcli connection add type bond-slave ifname ens34 master mybond0

Connection 'bond-slave-ens34' (9c8ff11a-72ef-4d63-a950-2ab777d2a1ea) successfully added.

[root@centos7 ~]# nmcli connection add type bond-slave ifname ens38 master mybond0

Connection 'bond-slave-ens38' (c40b3e6f-32f4-4d1a-a323-aed2519cf865) successfully added.

注意:如没有指定从属接口连接名,则该名称是接口名称加类型构成

3 启动从属接口

[root@centos7 ~]# nmcli connection up bond-slave-ens34

Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/40)

[root@centos7 ~]# nmcli connection up bond-slave-ens38

Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/41)

4 启动bonding 绑定

[root@centos7 ~]# nmcli connection up mybond0

Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/48)

5 查看绑定

[root@centos7 ~]# nmcli connection show

NAME UUID TYPE DEVICE

bond-slave-ens34 9c8ff11a-72ef-4d63-a950-2ab777d2a1ea 802-3-ethernet ens34

bond-slave-ens38 c40b3e6f-32f4-4d1a-a323-aed2519cf865 802-3-ethernet ens38

mybond0 cc101e79-3dcb-49ee-8164-89c9e877c315 bond bond0

6 添加IP地址

[root@centos7 ~]# nmcli connection modify mybond0 ipv4.method manual ipv4.addresses 200.1.1.1/24

7 删除bond绑定

(1)关闭bond

[root@centos7 ~]# nmcli connection down mybond0

Connection 'mybond0' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/18)

[root@centos7 ~]#

(2)删除bond

[root@centos7 ~]# nmcli connection delete mybond0

Connection 'mybond0' (9ed2f027-bbb1-44d1-87fc-7f7275d7fe70) successfully deleted.

(3)删除从属接口

[root@centos7 ~]# nmcli connection delete bond-slave-ens34

Connection 'bond-slave-ens34' (a46ad620-d4b5-43f9-a73a-447785504a17) successfully deleted.

[root@centos7 ~]# nmcli connection delete bond-slave-ens38

Connection 'bond-slave-ens38' (66b1f44d-ad71-4576-8061-f6cba2b976e8) successfully deleted.

 

好了

Das obige ist der detaillierte Inhalt vonBeispiel-Tutorial zur Konfiguration von Netzwerkschnittstellen-Bonding. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn