Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So konfigurieren Sie die Bindung in CentOS

So konfigurieren Sie die Bindung in CentOS

藏色散人
藏色散人nach vorne
2021-06-15 11:14:225047Durchsuche

Die folgende Tutorial-Kolumne von centos zeigt Ihnen, wie Sie Bond in CentOS konfigurieren. Ich hoffe, dass es für Freunde hilfreich ist, die es benötigen!

CentOS-Konfigurationsbindung

1. Was ist Netzwerkkarten-Bonding und sein einfaches Prinzip

Netzwerkkarten-Bonding wird auch „Netzwerkkarten-Bündelung“ genannt, bei dem mehrere physische Netzwerkkarten zur Virtualisierung auf einer Netzwerkkarte verwendet werden, um einen Lastausgleich zu ermöglichen oder Redundanz, erhöhen Sie die Rolle der Bandbreite. Wenn eine Netzwerkkarte ausfällt, hat dies keine Auswirkungen auf das Geschäft. Dieses aggregierte Gerät scheint ein einzelnes Ethernet-Schnittstellengerät zu sein, das heißt, diese Netzwerkkarten haben dieselbe IP-Adresse und die parallelen Verbindungen werden zu einer logischen Verbindung zusammengefasst. Diese Technologie wird bei Netzwerkunternehmen wie Cisco als Trunking- und Etherchannel-Technologie bezeichnet. Diese Technologie wird im Linux 2.4.x-Kernel als Bonding bezeichnet.

Es gibt 7 Bindungsmodi:

#defineBOND_MODE_ROUNDROBIN       0   (balance-rr模式)网卡的负载均衡模式
#defineBOND_MODE_ACTIVEBACKUP     1   (active-backup模式)网卡的容错模式
#defineBOND_MODE_XOR              2   (balance-xor模式)需要交换机支持
#defineBOND_MODE_BROADCAST        3    (broadcast模式)
#defineBOND_MODE_8023AD           4   (IEEE 802.3ad动态链路聚合模式)需要交换机支持
#defineBOND_MODE_TLB              5   自适应传输负载均衡模式
#defineBOND_MODE_ALB              6   网卡虚拟化方式

Alle Arbeitsmodi des Bonding-Moduls können in zwei Kategorien unterteilt werden: Multi-Master-Arbeitsmodus und Aktiv-Standby-Arbeitsmodus. Balance-Rr und Broadcast gehören zum Multi-Master-Arbeitsmodus und Aktiv-Backup gehört zum Aktiv -Backup-Arbeitsmodus. (Balance-XOR, der adaptive Übertragungslastausgleichsmodus (Balance-tlb) und der adaptive Lastausgleichsmodus (Balance-Alb) gehören ebenfalls zum Multi-Master-Arbeitsmodus, und der dynamische Link-Aggregation-Modus IEEE 802.3ad (802.3ad) gehört zum Aktiver und Backup-Modus.

Stellen Sie diese 7 Modi im Detail vor:

1. Balance-rr (Modus=0)

Round-Robin-Strategie: Senden Sie Datenpakete nacheinander von Anfang bis Ende Modus bietet Lastausgleichs- und Fehlertoleranzfunktionen.

Aktive-Backup-Strategie (Aktiv-Standby): In der Bindung wird nur ein Slave aktiviert Um ein Switch-Chaos zu vermeiden, ist die gebundene MAC-Adresse nur an einem externen Port sichtbar. In Bongding 2.6.2 und späteren Versionen erfolgt eine Fehlermigration im aktiven und Backup-Modus Senden Sie ein oder mehrere unentgeltliche ARPs auf der Haupt-Slave-Schnittstelle des Bonding und alle auf der Schnittstelle konfigurierten VLAN-Schnittstellen senden unentgeltliche ARPs, sofern auf diesen Schnittstellen mindestens eine unentgeltliche ARP-Adresse konfiguriert ist Die Schnittstelle wird mit der entsprechenden VLAN-ID verbunden. Die unten dokumentierte primäre Option beeinflusst das Verhalten dieses Modus

XOR

Dieser Modus bietet Lastausgleichs- und Fehlertoleranzfunktionen

Broadcast-Strategie: Übertragen Sie alle Nachrichten auf allen Slave-Schnittstellen

.

5, 802.3ad (Modus=4)

Dynamische Link-Aggregation nach IEEE 802.3ad. Erstellen Sie Aggregationsgruppen mit derselben Geschwindigkeit und demselben Duplexmodus. Alle Slaves können zum Aufbau von aggregierten Verbindungen gemäß der 802.3ad-Spezifikation verwendet werden. Die ausgehende Auswahl von Salve hängt von der Hash-Richtlinie der Übertragung ab. Die Standardrichtlinie ist eine einfache XOR-Richtlinie, und die Hash-Richtlinie kann über die Option xmit_hash_policy geändert werden. Es ist zu beachten, dass nicht alle Übertragungsstrategien mit 802.3ad kompatibel sind, insbesondere die Anforderungen zur Paketfehlordnung in Kapitel 43.2.4 des 802.3ad-Standards. Implementierungen verschiedener Personen weisen oft große Inkompatibilitäten auf.

Voraussetzung:
1. Der Basistreiber jedes Slaves unterstützt Ehtool, um die Rate und den Duplexstatus zu erhalten.
2. Der Switch unterstützt die dynamische Link-Aggregation nach IEEE 802.3ad. Die meisten Switches erfordern eine gewisse Konfiguration, um den 802.3ad-Modus zu aktivieren.

6. balance-tlb (mode=5)

Adaptiver Übertragungslastausgleich: Für die Kanalbindung ist keine spezielle Switch-Unterstützung erforderlich. Die Verteilung des ausgehenden Datenverkehrs hängt von der aktuellen Auslastung jedes Slaves ab (Berechnung der relativen Geschwindigkeit). Der Importverkehr wird vom aktuellen Slave empfangen. Wenn beim Salve-Empfang ein Fehler auftritt, erhalten andere Slaves weiterhin die MAC-Adresse des Slaves, der nicht übernehmen konnte.
Voraussetzung:
Der Basistreiber jedes Slaves unterstützt Ehtool, um den Tarifstatus zu erhalten.

7, Balance-Alb (Modus=6)

Adaptiver Lastausgleich: Beinhaltet Balance-TLB (Modus 5) und Empfangslastausgleich für IPV4-Verkehr und erfordert keine spezielle Switch-Unterstützung. Der Empfangslastausgleich wird durch ARP-Aushandlung implementiert. Der Bonding-Treiber fängt vom lokalen Computer gesendete ARP-Antworten (ARP-Antwortnachrichten) ab und schreibt die Quelladresse der ARP-Nachricht mit der Hardwareadresse eines Slaves des Bonds um, sodass der Server unterschiedliche Hardwareadressen für verschiedene Geräte verwendet. Der eingehende Datenverkehr der von diesem Server aufgebauten Verbindungen wird ebenfalls lastverteilt. Wenn die Maschine eine ARP-Anfrage sendet, kopiert und speichert der Bonding-Treiber die IP-Informationen des Knotens über die ARP-Nachricht. Beim Empfang einer ARP-Antwort von einem anderen Knoten erhält der Bonding-Treiber die Hardware-Adresse des Knotens und antwortet mit einer ARP-Antwort, die die Hardware-Adresse des gebundenen Slaves enthält, an den sendenden Knoten. Ein Problem beim Lastausgleich mithilfe der ARP-Aushandlung besteht darin, dass jedes Mal, wenn die Hardwareadresse der Bindung zum Senden einer ARP-Nachricht verwendet wird, alle von anderen Knoten gesendeten Daten auf einen Slave konzentriert werden. Bei der Verarbeitung von ARP-Updates für alle anderen Knoten wird dies von jedem Knoten ausgeführt Hardwareadressen werden neu gelernt, was zu einer Umverteilung des Datenverkehrs führt. Wenn ein neuer Slave hinzugefügt oder ein inaktiver Slave reaktiviert wird, wird der empfangene Datenverkehr ebenfalls neu verteilt. Die Empfangsverkehrslast wird seriell (Round-Robin) auf eine Gruppe von Slaves mit der höchsten Rate in der Bindung verteilt.
Wenn eine Verbindung wiederhergestellt oder ein neuer Slave hinzugefügt wird, initialisiert Bond die ARP-Antworten an alle Clients neu. Der Wert des Updelay-Parameters muss gleich oder größer als die Weiterleitungsverzögerung des Switches sein, um zu verhindern, dass ARP-Antworten vom Switch blockiert werden.
Voraussetzung:
1. Der Basistreiber jedes Slaves unterstützt Ehtool, um den Tarifstatus zu erhalten.

2. Der Basistreiber unterstützt das Zurücksetzen der Hardwareadresse beim Einschalten des Geräts. Jeder Slave muss außerdem über eine eindeutige Hardwareadresse verfügen. Wenn curr_active_slave ausfällt, wird seine Hardwareadresse durch die neu ausgewählte curr_active_slave-Hardwareadresse ersetzt.

Bond0 und Bond1 auf CentOS konfigurieren:

Zunächst müssen Sie prüfen, ob Linux Bonding unterstützt. RHEL4 unterstützt es bereits standardmäßig. (Die meisten Distributionen unterstützen es)

# modinfo bonding
  
 
  
filename:       /lib/modules/2.6.18-8.el5/kernel/drivers/net/bonding/bonding.ko
  
author:         Thomas Davis, 
    tadavis@lbl.gov
     and many others
  
de.ion:    Ethernet Channel Bonding Driver, v3.0.3
  
version:        3.0.3
  
license:        GPL
  
srcversion:     2547D22885C2FDF28EF7D98

如果有类似上面的信息输出,说明已经支持了.      

1、配置Bond 0 负载均衡   

特点:  

1. 双网块同时工作,实现负载均衡,某一网卡不正常时,不会引发网络中断.  

2. 恢复不能正常工作的网卡时,会引发网络中断几秒,然后双网卡同时工作.  

    1.编辑虚拟网络接口配置文件,指定网卡IP    

    cp /etc/sysconfig/network-scripts/ifcfg-lo ifcfg-bond0
  
vi  ifcfg-bond0
  
 
  
DEVICE=bond0
  
IPADDR=10.10.10.1
  
NETMASK=255.255.255.0
  
NETWORK=10.10.10.0
  
BROADCAST=10.10.10.255
  
ONBOOT=yes
  
BOOTPROTO=none
  
USERCTL=no
  
GATEWAY=192.168.0.1

    2.在bond0上添加网关,是确保默认路由无故障   

[root@Linux ~]# route
    
Kernel IP routing table
    
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    
10.0.0.0        *               255.255.255.0   U     0      0        0 bond0
    
10.0.0.0        *               255.255.255.0   U     0      0        0 eth0
    
10.0.0.0        *               255.255.255.0   U     0      0        0 eth1
    
169.254.0.0     *               255.255.0.0     U     0      0        0 bond0
    
default         10.0.0.1        0.0.0.0         UG    0      0        0 bond0
    
 
    
vi  ifcfg-eth0
    
 
    
DEVICE=eth0
    
BOOTPROTO=none
    
ONBOOT=yes
    
USERCTL=no
    
MASTER=bond0
    
SLAVE=yes
    
 
    
vi  ifcfg-eth1
      
 
      
DEVICE=eth1
      
BOOTPROTO=none
      
ONBOOT=yes
      
USERCTL=no
      
MASTER=bond0
      
SLAVE=yes

3 # vi /etc/modprobe.conf              

编辑/etc/modprobe.conf 文件,加入如下一行内容,以使系统在启动时加载bonding模块,对外虚拟网络接口设备为 bond0       

        加入下列两行        

alias bond0 bonding 
      
options bond0 miimon=100 mode=0

        说明:       

miimon是用来进行链路监测的。 比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;      

        mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。       

   mode=0表示load balancing (round-robin)为负载均衡方式,两块网卡都工作。      

   mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份.                

4 # vi /etc/rc.d/rc.local       

          加入以下内容          

# 仅在热备模式下,eht0 eth1网卡的工作顺序.
        
 
        
ifenslave bond0 eth0 eth1

到这时已经配置完毕重新启动机器.        

重启会看见以下信息就表示配置成功了        

................         

Bringing up interface bond0 OK 
        
Bringing up interface eth0 OK 
        
Bringing up interface eth1 OK

2、配置Bond 1 热备模式         

特点:        

1. 正在工作的网卡不正常后,切换到备用网卡,此时会中间几秒钟        

2. 恢复不正常的网卡时,不会引发网络中断.      

          其他步骤一致,只在第3步骤,将mode设置成1即可.         

alias bond0 bonding 
        
options bond0 miimon=100 mode=1

Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie die Bindung in CentOS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen