2つのネットワークカードバインディングが機能しない

2つのネットワークカードバインディングが機能しない

スイッチに 2 つの NIC (および管理用 NIC) が接続された Linux サーバーがあり、それをチームとして構成して LACP を使用したいが、不明な理由でボンディングが動作/開始されません。

また、LACP 設定を無視してループモードに入ります。

Huawei社のスイッチ構成:

interface Eth-Trunk10
description #### Server ####
port link-type trunk
port trunk allow-pass vlan 167
stp disable
mode lacp
load-balance src-dst-mac

/etc/ネットワーク/インターフェース:

auto lo
iface lo inet loopback

iface enp3s0 inet manual

auto enp4s0
iface enp4s0 inet manual
    bond-master bond1

auto eno1
iface eno1 inet manual
    bond-master bond1

auto bond1
iface bond1 inet manual
    bond-slaves eno1 enp4s0
    bond-miimon 100
    bond-mode 802.3ad
    bond-lacp-rate 1

auto bond1.167
iface bond1.167 inet static
    address x.x.x.x
    netmask 255.255.255.248
    vlan-raw-device bond1

auto vmbr0
iface vmbr0 inet static
    address  a.a.a.b
    netmask  255.255.255.248
    gateway a.a.a.a
    bridge-ports enp3s0
    bridge-stp off
    bridge-fd 0

/proc/net/ボンディング/bond1:

Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: load balancing (round-robin)
MII Status: down
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: enp4s0
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 00:1b:21:3a:6f:f9
Slave queue ID: 0

Slave Interface: eno1
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 00:1b:21:3a:6f:fb
Slave queue ID: 0

ネットワーク状態:

● networking.service - Raise network interfaces
   Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
   Active: active (exited) since Tue 2019-09-24 19:33:18 CEST; 13s ago
     Docs: man:interfaces(5)
  Process: 16974 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=0/SUCCESS)
 Main PID: 16974 (code=exited, status=0/SUCCESS)

Sep 24 19:33:18 rakete systemd[1]: Starting Raise network interfaces...
Sep 24 19:33:18 rakete ifup[16974]: /etc/network/if-pre-up.d/ifenslave: 47: echo: echo: I/O error
Sep 24 19:33:18 rakete ifup[16974]: /etc/network/if-pre-up.d/ifenslave: 47: echo: echo: I/O error
Sep 24 19:33:18 rakete ifup[16974]: Waiting for vmbr0 to get ready (MAXWAIT is 2 seconds).
Sep 24 19:33:18 rakete systemd[1]: Started Raise network interfaces.

lsmod | grep 債券:

bonding               159744  0

このエラーメッセージに役立つものが見つかりません。ここで誰かがLinuxのバインディング機能を経験していますか?

アップデート、IP検索:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master mgmt state UP mode DEFAULT group default qlen 1000
link/ether b4:2e:99:3d:68:64 brd ff:ff:ff:ff:ff:ff
3: enp4s0: <BROADCAST,MULTICAST,SLAVE> mtu 1500 qdisc pfifo_fast master bond1 state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
4: eno1: <BROADCAST,MULTICAST,SLAVE> mtu 1500 qdisc pfifo_fast master bond1 state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
5: bond1: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
6: bond1.167@bond1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state LOWERLAYERDOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
7: mgmt: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether b4:2e:99:3d:68:64 brd ff:ff:ff:ff:ff:ff

答え1

[...] Is bond1.167 ready and a bonding interface ?

答えは「いいえ」です。これは VLAN サブインターフェイスであり、これは設定の問題を暗示します。

構成では、bond1インターフェースを定義し、bond1.167電子に依存するインターフェースを定義する必要があります。段落を設定しようとすると、指定したログに示すようにVLANインターフェイスにボンディング設定を適用しようとします。

修正する:別の質問があります。enpu4s0そして1番定義リファレンス債券1定義(参照:with bond-master bond1)の前に、パッケージの構成スクリプトが表示されます。奴隷ラーメン正しく応答しません。いくつかのテストが完了したら、次のいずれかの回避策を選択できることを確認しました。

  1. 削除するそのインターフェイスから。そうすると、実際のインターフェースが表示されます(債券1構成)しかし上下ならそれでも彼らは非論理的だと思います。
  2. 最初はそのまま置きますが、参照は除外してください。債券1インターフェイスで(削除してbond-master bond1)後で物理インターフェイスをシャットダウンしてifdown再びオンにすると、結合設定が破損します。
  3. 定義を次に移動します。債券1定義、維持bond-master bond1(そしてまだ残ってbond-slaves eno1 enp4s0いる)債券1定義)。構成手順以外には、このアプローチには何の欠点も見られず、最終的にこの方法を使用するようになりました。

おそらく上下2の場合この問題は以前よりもうまく処理できます上下なら:

ネットワークインターフェイスの依存関係を検出できます。

それともネットワーク管理者サーバーには少し過剰かもしれませんが。

次の設定を試してください(アドレスの変更)。

auto lo
iface lo inet loopback

iface enp3s0 inet manual

auto bond1
iface bond1 inet manual
    bond-slaves eno1 enp4s0
    bond-miimon 100
    bond-mode 802.3ad
    bond-lacp-rate 1

auto enp4s0
iface enp4s0 inet manual
    bond-master bond1

auto eno1    
iface eno1 inet manual
    bond-master bond1

auto bond1.167
iface bond1.167 inet static
    address 192.0.2.2
    netmask 255.255.255.248        
    vlan-raw-device bond1

次に、次の点を考慮してください(LXC Debian 10コンテナを使用してテスト)。

# cat /proc/net/bonding/bond1 
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Peer Notification Delay (ms): 0

802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
System MAC address: 00:1b:21:3a:6f:fb
Active Aggregator Info:
    Aggregator ID: 1
    Number of ports: 1
    Actor Key: 15
    Partner Key: 1
    Partner Mac Address: 00:00:00:00:00:00

Slave Interface: eno1
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:1b:21:3a:6f:fb
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: monitoring
Partner Churn State: monitoring
Actor Churned Count: 0
Partner Churned Count: 0
details actor lacp pdu:
    system priority: 65535
    system mac address: 00:1b:21:3a:6f:fb
    port key: 15
    port priority: 255
    port number: 1
    port state: 79
details partner lacp pdu:
    system priority: 65535
    system mac address: 00:00:00:00:00:00
    oper key: 1
    port priority: 255
    port number: 1
    port state: 1

Slave Interface: enp4s0
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:1b:21:3a:6f:f9
Slave queue ID: 0
Aggregator ID: 2
Actor Churn State: monitoring
Partner Churn State: monitoring
Actor Churned Count: 0
Partner Churned Count: 0
details actor lacp pdu:
    system priority: 65535
    system mac address: 00:1b:21:3a:6f:fb
    port key: 15
    port priority: 255
    port number: 2
    port state: 71
details partner lacp pdu:
    system priority: 65535
    system mac address: 00:00:00:00:00:00
    oper key: 1
    port priority: 255
    port number: 1
    port state: 1

# cat /proc/net/vlan/bond1.167 
bond1.167  VID: 167  REORDER_HDR: 1  dev->priv_flags: 1021
         total frames received            0
          total bytes received            0
      Broadcast/Multicast Rcvd            0

      total frames transmitted           12
       total bytes transmitted          976
Device: bond1
INGRESS priority mappings: 0:0  1:0  2:0  3:0  4:0  5:0  6:0 7:0
 EGRESS priority mappings: 

関連情報