想定構成
以下構成で10GbpsのNICを2本束ねる。
参考URL nmcli を使用したネットワークチーミングの設定
- チーミングインタフェースを作成
- 物理IFをチーミングに所属
- チーミングIFを有効化
teamingを設定する方法にはいくつかあるが,ここでは公式ドキュメント最初に出てくるnmcliを利用して設定する。なお,teamdは永続性がないためnmcliやifcfgファイルで設定する方がよさそう。
想定する設定は,
- interfaceは「enp1s0f0」「enp1s0f1」の2つを利用。
- LACP利用
- 送信負荷分散のハッシュ値にmac address(scx/dst), ip address(src/dst), tcp port(src/dst) の3つを含める。
Teamingインタフェース作成
nmcliコマンドでTeamingの論理インタフェースを作成する。
# nmcli connection add type team ifname team0 con-name team0 config '{"device": "team0", "runner": {"name": "lacp", "active": true, "fast_rate": true, "tx_hash": ["eth", "ipv4", "ipv6", "l4"]}, "link_watch": {"name": "ethtool"}}'
接続 'team0' (380df2de-dcef-4436-aded-9c4ab20e13e6) が正常に追加されました。
team0に所属させるインタフェースを設定する。オプションで「con-name」をつけると別名でインタフェースを定義できるが指定しないと「team-slave-enp1s0f0」のようになる。
# nmcli con add type team-slave ifname enp1s0f0 master team0
# nmcli con add type team-slave ifname enp1s0f1 master team0
IFの有効化
物理IF,TeamingIFのどちらを有効にしてもよい。
# nmcli con up team-slave-enp1s0f0
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/22)
# nmcli con up team-slave-enp1s0f1
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/25)
# nmclie con up team0
# ip link
18: team0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:6e:82:1d brd ff:ff:ff:ff:ff:ff
IPアドレスが設定されないとUPにならないが,後々内部ブリッジに接続させる予定なので今回はここまで。