目次
5、802.3ad (mode=4)
6. Balance-tlb (mode=5)
7、balance-alb (mode=6)
ホームページ 運用・保守 CentOS CentOS でボンドを構成する方法

CentOS でボンドを構成する方法

Jun 15, 2021 am 11:14 AM
centos

centos の次のチュートリアル コラムでは、CentOS でボンドを設定する方法を紹介します。

CentOS 構成ボンディング

1. ネットワーク カード ボンディングとは何ですか。その簡単な原理

ネットワーク カード ボンディングは、「ネットワーク カード バンドル」とも呼ばれ、複数の物理的なボンディングを使用します。仮想ネットワーク カードとなるネットワーク カード 負荷分散または冗長性を提供し、帯域幅を増加させるネットワーク カード。ネットワーク カードが故障しても、ビジネスに影響はありません。この集約されたデバイスは単一のイーサネット インターフェイス デバイスのように見えます。つまり、これらのネットワーク カードは同じ IP アドレスを持ち、並列リンクは 1 つの論理リンクに集約されます。このテクノロジーは、Cisco などのネットワーク会社ではトランキングおよびイーサチャネル テクノロジーと呼ばれ、Linux 2.4.x カーネルではボンディングと呼ばれます。

ボンディングには 7 つのモードがあります:

#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   网卡虚拟化方式
ログイン後にコピー

ボンディング モジュールのすべての動作モードは、マルチマスター動作モードとアクティブ/スタンバイ動作モードの 2 つのカテゴリに分類できます。バランス RR とブロードキャストは、マルチマスター動作モードとアクティブ バックアップに属します。アクティブバックアップモードに属します。 (balance-xor、適応型送信負荷分散モード (balance-tlb)、および適応型負荷分散モード (balance-alb) もマルチマスター動作モードに属し、IEEE 802.3ad ダイナミック リンク アグリゲーション モード (802.3ad) は、アクティブおよびバックアップ モード タイプ 作業モード

これら 7 つのモードの詳細な紹介:

1. Balance-rr (mode=0)

ラウンドロビン戦略: 最初から各スレーブ インターフェイスでデータ パケットを順番に送信します。このモードでは、ロード バランシングとフォールト トレランス機能が提供されます。

2. active-backup (mode=1)

Active-backup (active-backup) ) ) ポリシー: バインディングでは、1 つのスレーブのみがアクティブになります。他のスレーブは、アクティブなスレーブ インターフェイスに障害が発生した場合にのみアクティブになります。スイッチの混乱を避けるために、バインドされた MAC アドレスは、この時点で 1 つの外部ポートでのみ表示されますボンディング バージョン 2.6.2 以降では、アクティブ/スタンバイ モードでフェイルオーバーが発生すると、ボンディングは 1 つ以上の Gratuitous ARP を新しくアクティブ化されたスレーブに送信します。ボンディングのメイン スレーブ インターフェイスとインターフェイス上の設定はすべての VLAN インターフェイスから送信されます。 gratuitous ARP (少なくとも 1 つの IP アドレスがこれらのインターフェイスに設定されている限り) VLAN インターフェイスで送信される Gratuitous ARP には、適切な VLAN ID が伴います。このモードはフォールト トレランスを提供します。主要なオプションは、以下に記載されていますが、このモード

3. Balance-xor (mode=2)

XOR 戦略: 選択された送信ハッシュ戦略に基づく

このモードは、ロード バランシングとフォールト トレランスを提供します。 .

4. ブロードキャスト (モード=3)

ブロードキャスト戦略: すべてのスレーブ インターフェイスですべてのパケットを送信します。このモードはフォールト トレランスを提供します。

5、802.3ad (mode=4)

IEEE 802.3ad ダイナミック リンク アグリゲーション。同じ速度と二重モードを共有する集約グループを作成します。すべてのスレーブは、802.3ad 仕様に従って集約リンクを確立するために使用できます。 Salve の送信選択は送信のハッシュ ポリシーに依存します。デフォルトのポリシーは単純な XOR ポリシーであり、ハッシュ ポリシーは xmit_hash_policy オプションを通じて変更できます。すべての送信戦略、特に 802.3ad 規格の第 43.2.4 章にあるパケットの順序ミスの要件が 802.3ad と互換性があるわけではないことに注意してください。異なる個人による実装には、多くの場合、大きな非互換性があります。

前提条件:
1. 各スレーブの基本ドライバーは、速度と二重ステータスを取得するための Ehtool をサポートしています。
2. スイッチは、IEEE 802.3ad ダイナミック リンク アグリゲーションをサポートします。ほとんどのスイッチでは、802.3ad モードを有効にするために何らかの設定が必要です。

6. Balance-tlb (mode=5)

適応型送信負荷分散: チャネル バインディングには特別なスイッチのサポートは必要ありません。出力トラフィックの分散は、各スレーブの現在の負荷 (相対速度の計算) によって異なります。インポート トラフィックは現在のスレーブから受信されます。スレーブの受信時にエラーが発生した場合、他のスレーブは引き継ぎに失敗したスレーブの MAC アドレスを引き続き受信します。
前提条件:
各スレーブの基本ドライバーは、レート ステータスを取得するための Ehtool をサポートしています。

7、balance-alb (mode=6)

適応型ロード バランシング: Balance-tlb (モード 5) と IPV4 トラフィックの受信ロード バランシングを含み、特別なスイッチのサポートが必要です。受信ロード バランシングは、ARP ネゴシエーションを通じて実現されます。ボンディング ドライバーは、ローカル マシンによって送信された ARP 応答 (ARP 応答メッセージ) をインターセプトし、サーバーがデバイスごとに異なるハードウェア アドレスを使用できるように、ARP メッセージの送信元アドレスをボンディングのスレーブのハードウェア アドレスで書き換えます。このサーバーによって確立された接続の受信トラフィックも負荷分散されます。マシンが ARP 要求を送信すると、ボンディング ドライバーは ARP メッセージを通じてノードの IP 情報をコピーして保存します。別のノードから ARP Reply を受信すると、ボンディング ドライバーはノードのハードウェア アドレスを取得し、バインドされたスレーブのハードウェア アドレスを含む ARP Reply で送信ノードに応答します。 ARP ネゴシエーションを使用したロード バランシングに関する 1 つの問題は、ボンドのハードウェア アドレスを使用して ARP メッセージをブロードキャストするたびに、他のノードから送信されたすべてのデータが 1 つのスレーブに集中することです。他のすべてのノードへの ARP 更新を処理するときに、各ノードはハードウェア アドレスが再学習され、トラフィックが再分散されます。新しいスレーブが追加されるか、非アクティブなスレーブが再アクティブ化されると、受信したトラフィックも再分配されます。受信トラフィックの負荷は、ボンド内の最高レートのスレーブのセットにシリアル (ラウンドロビン) で分散されます。
リンクが再接続されるか、新しいスレーブが追加されると、bond はすべてのクライアントへの ARP 応答を再初期化します。 ARP 応答がスイッチによってブロックされないようにするには、uplay パラメータの値はスイッチの転送遅延以上にする必要があります。
前提条件:
1. 各スレーブの基本ドライバーは、レート ステータスを取得するための Ehtool をサポートしています。

2. 基本ドライバーは、デバイスの電源をオンにしたときのハードウェア アドレスのリセットをサポートします。各スレーブには一意のハードウェア アドレスも必要です。 curr_active_slave が失敗すると、そのハードウェア アドレスは新しく選択された curr_active_slave ハードウェア アドレスに置き換えられます。

CentOS で Bond0 と Bond1 を構成します:

最初にLinux がボンディングをサポートしているかどうかを確認する必要があります。RHEL4 はデフォルトですでにサポートしています (ほとんどのディストリビューションがサポートしています)

# 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
ログイン後にコピー

以上がCentOS でボンドを構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Centosで中国語を入力する方法 Centosで中国語を入力する方法 Apr 07, 2024 pm 08:21 PM

CentOS で中国語入力を使用する方法には、次のものが含まれます。 fcitx 入力方法を使用する: fcitx をインストールして有効にし、ショートカット キーを設定し、ショートカット キーを押して入力方法を切り替え、ピンインを入力して候補単語を生成します。 iBus 入力方法を使用する: iBus をインストールして有効にし、ショートカット キーを設定し、ショートカット キーを押して入力方法を切り替え、ピンインを入力して候補単語を生成します。

CentOS7でUSBディスクファイルを読み取る方法 CentOS7でUSBディスクファイルを読み取る方法 Apr 07, 2024 pm 08:18 PM

CentOS 7 で U ディスク ファイルを読み取るには、まず U ディスクを接続し、そのデバイス名を確認する必要があります。次に、次の手順に従ってファイルを読み取ります。 USB フラッシュ ドライブをマウントします: mount /dev/sdb1 /media/sdb1 (「/dev/sdb1」を実際のデバイス名に置き換えます) USB フラッシュ ドライブ ファイルを参照します: ls /media /sdb1; cd /media /sdb1/ディレクトリ; cat ファイル名

CentOS7でroot権限を入力する方法 CentOS7でroot権限を入力する方法 Apr 02, 2024 pm 08:57 PM

CentOS 7 の root 権限に入る方法は 2 つあります。 sudo コマンドを使用します。ターミナルで sudo su - と入力し、現在のユーザー パスワードを入力します。 root ユーザーとして直接ログインします。ログイン画面で「その他」を選択し、「root」と root パスワードを入力します。注: root 権限で慎重に操作し、sudo 権限でタスクを実行し、root パスワードを定期的に変更してください。

SCP 使用法のヒント - ファイルを再帰的に除外する SCP 使用法のヒント - ファイルを再帰的に除外する Apr 22, 2024 am 09:04 AM

scp コマンドを使用すると、ネットワーク ホスト間でファイルを安全にコピーできます。データ転送と認証には ssh を使用します。一般的な構文は次のとおりです: scpfile1user@host:/path/to/dest/scp -r/path/to/source/user@host:/path/to/dest/scp ファイルを除外する scp コマンドを使用する場合はできないと思いますファイルをフィルタリングまたは除外します。ただし、ファイルを除外し、ssh を使用して安全にコピーするという良い回避策があります。このページでは、scp を使用してディレクトリを再帰的にコピーするときにファイルをフィルタリングまたは除外する方法について説明します。 rsync コマンドを使用してファイルを除外する方法 構文は次のとおりです。 rsyncav-essh-

centos にログインするためのパスワードを忘れた場合の対処方法 centos にログインするためのパスワードを忘れた場合の対処方法 Apr 07, 2024 pm 07:33 PM

CentOS パスワードを忘れた場合の解決策は次のとおりです。 シングルユーザー モード: シングルユーザー モードに入り、passwd root を使用してパスワードをリセットします。レスキュー モード: CentOS Live CD/USB から起動し、ルート パーティションをマウントし、パスワードをリセットします。リモート アクセス: SSH を使用してリモートに接続し、sudo passwd root でパスワードをリセットします。

CentOS7でroot権限を有効にする方法 CentOS7でroot権限を有効にする方法 Apr 07, 2024 pm 08:03 PM

CentOS 7 では root 権限がデフォルトで無効になっていますが、次の手順で有効にできます: 一時的に有効にする: ターミナルで「su root」と入力し、root パスワードを入力します。永続的に有効にする: 「/etc/ssh/sshd_config」を編集し、「PermitRootLogin no」を「yes」に変更し、SSH サービスを再起動します。

centos7でroot権限を取得する方法 centos7でroot権限を取得する方法 Apr 07, 2024 pm 07:57 PM

CentOS 7 で root 権限を取得するには、いくつかの方法があります。 1. 「su」を使用してコマンドを実行します。 2. 「sudo」を使用して単一のコマンドを実行します。 3. root ユーザーを有効にし、パスワードを設定します。注: root 権限を使用する場合は、システムに損傷を与える可能性があるため注意してください。

CentOSでroot権限を入力する方法 CentOSでroot権限を入力する方法 Apr 07, 2024 pm 08:06 PM

CentOS で root 権限でタスクを実行するには、1) sudo コマンドを使用して一時的に root 権限を取得する、2) root ユーザーのパスワードを使用して直接ログインする、の 2 つの方法があります。 root 権限を使用する場合は細心の注意を払う必要があり、必要な場合にのみ使用することをお勧めします。

See all articles