18.04システムでNetplanを実行しています。 18.04で、16.04システムからNetplanにネットワーク構成のほとんどをワークアウトして変換できましたが、一部の結合を使用するブリッジでMTUを9000に設定しようとすると問題が発生しますVLANの。
私の構成:
# Ceph network configuration
network:
version: 2
renderer: networkd
ethernets:
eth2:
dhcp4: no
dhcp6: no
optional: true
mtu: 9000
eth3:
dhcp4: no
dhcp6: no
optional: true
mtu: 9000
bonds:
bond1:
interfaces: [ eth2, eth3 ]
parameters:
mode: 802.3ad
mii-monitor-interval: 100
lacp-rate: fast
vlans:
bond1.220:
id: 220
link: bond1
mtu: 9000
bridges:
br-ceph-access:
addresses: [ x.x.x.x/24 ]
interfaces: [ bond1.220 ]
parameters:
forward-delay: 9
hello-time: 2
max-age: 12
stp: false
結合の一部である両方のNICにVLANにも「mtu:9000」を追加しました。ボンドインターフェースまたはブリッジインターフェースに「mtu:9000」を追加すると「unknown key mtu」というエラーが生成されるため、これを実行しました。
いずれの場合も、mtu: 9000
の関連セクションで以下に示すように、ip a
設定は適用されません(mtu 15000
に注意してください):
4: eth2: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond1 state UP group default qlen 1000
link/ether b2:07:76:18:10:5b brd ff:ff:ff:ff:ff:ff
5: eth3: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond1 state UP group default qlen 1000
link/ether b2:07:76:18:10:5b brd ff:ff:ff:ff:ff:ff
10: br-ceph-access: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 4e:b5:52:25:a4:c5 brd ff:ff:ff:ff:ff:ff
inet x.x.x.x/24 brd 172.16.238.255 scope global br-ceph-access
valid_lft forever preferred_lft forever
11: bond1: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether b2:07:76:18:10:5b brd ff:ff:ff:ff:ff:ff
だから私はここでどこが間違っていますか? Netplanでmtuを設定する適切な方法は何ですか?報告する必要があるバグを発見しましたか?
MTU設定を「bonds:」セクションと「bridges:」セクションの両方に追加することでこれを解決しました(「ethernets:」セクションから削除)。動作設定は次のとおりです。
# Ceph network configuration
network:
version: 2
renderer: networkd
ethernets:
eth2:
dhcp4: no
optional: true
eth3:
dhcp4: no
optional: true
bonds:
bond1:
interfaces: [ eth2, eth3 ]
mtu: 9000
parameters:
mode: 802.3ad
mii-monitor-interval: 100
lacp-rate: fast
vlans:
bond1.220:
id: 220
link: bond1
optional: true
bridges:
br-ceph-access:
optional: true
addresses: [ 172.16.238.133/24 ]
interfaces: [ bond1.220 ]
mtu: 9000
parameters:
forward-delay: 9
hello-time: 2
max-age: 12
stp: false
MACアドレスでデバイスを一致させたいと思います。そうしないと、systemd-networkdがMTUを適用するデバイスを正確に知ることが困難になります。また、ボンドに追加されるときにオプションが基礎となるインターフェイスに適用されるため、ボンド自体のMTUが9000であることも指定する必要があります。
network:
version: 2
renderer: networkd
ethernets:
eth2:
match:
macaddress: 00:00:aa:bb:cc:dd
dhcp4: no
dhcp6: no
optional: true
mtu: 9000
eth3:
match:
macaddress: 01:01:aa:bb:cc:de
dhcp4: no
dhcp6: no
optional: true
mtu: 9000
bonds:
bond1:
mtu: 9000
interfaces: [ eth2, eth3 ]
parameters:
mode: 802.3ad
mii-monitor-interval: 100
lacp-rate: fast
vlans:
bond1.220:
id: 220
link: bond1
mtu: 9000
bridges:
br-ceph-access:
addresses: [ x.x.x.x/24 ]
interfaces: [ bond1.220 ]
parameters:
forward-delay: 9
hello-time: 2
max-age: 12
stp: false
ただし、一致するデバイスには独自の問題があります。 https://github.com/CanonicalLtd/netplan/commit/a27122bc8d8e066b1a90a7fd8d65342e8b906a8e を参照してください