LINUX.ORG.RU
ФорумAdmin

Как сконфигурировать bond на Almalinux 9

 , ,


0

2

Здравствуйте!

Помогите настроить bond через nmcli, на Almalinux 8 были такие настройки:

cat /etc/sysconfig/network-scripts/ifcfg-Bond_connection

BONDING_OPTS="mode=4 xmit_hash_policy=layer2+3 downdelay=0 miimon=1 updelay=0"
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=static
DEFROUTE=no
IPV4_FAILURE_FATAL=no
NAME="Bond connection"
DEVICE=bond0
ONBOOT=yes
IPADDR=172.31.0.22
PREFIX=24

cat /etc/sysconfig/network-scripts/ifcfg-bond0_port_1

TYPE=Ethernet
HWADDR=38:63:BB:3F:D2:02
NAME="bond0 port 1"
UUID=d843fe9b-ecc7-49df-a11b-b433f56cfb7e
DEVICE=eno3
ONBOOT=yes
MASTER=bond0
SLAVE=yes

cat /etc/sysconfig/network-scripts/ifcfg-bond0_port_2

TYPE=Ethernet
HWADDR=38:63:BB:3F:D2:03
NAME="bond0 port 2"
UUID=92738763-dbc5-4319-8b13-668a2dc4d814
DEVICE=eno4
ONBOOT=yes
MASTER=bond0
SLAVE=yes

Статику на первом порту настроить получилось.

nmcli con mod eno1 ipv4.addresses 192.168.0.200/24
nmcli con mod eno1 ipv4.gateway 192.168.0.1
nmcli con mod eno1 ipv4.dns 8.8.8.8,8.8.4.4
nmcli con mod eno1 ipv4.method manual
nmcli con up eno1
[root@server ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 38:63:bb:3f:d2:00 brd ff:ff:ff:ff:ff:ff
    altname enp2s0f0
    inet 192.168.0.200/24 brd 192.168.0.255 scope global noprefixroute eno1
       valid_lft forever preferred_lft forever
    inet6 fe80::3a63:bbff:fe3f:d200/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: eno2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 38:63:bb:3f:d2:01 brd ff:ff:ff:ff:ff:ff
    altname enp2s0f1
4: eno3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 38:63:bb:3f:d2:02 brd ff:ff:ff:ff:ff:ff
    altname enp2s0f2
5: eno4: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 38:63:bb:3f:d2:03 brd ff:ff:ff:ff:ff:ff
    altname enp2s0f3
6: ens2f0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 9c:dc:71:b6:5a:2c brd ff:ff:ff:ff:ff:ff
    altname enp5s0f0
7: ens2f1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 9c:dc:71:b6:5a:2d brd ff:ff:ff:ff:ff:ff
    altname enp5s0f1
8: ens2f2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 9c:dc:71:b6:5a:2e brd ff:ff:ff:ff:ff:ff
    altname enp5s0f2
9: ens2f3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 9c:dc:71:b6:5a:2f brd ff:ff:ff:ff:ff:ff
    altname enp5s0f3

nmcli connection add type bond con-name «Bond connection» ifname bond0

[root@server ~]# nmcli connection
NAME             UUID                                  TYPE      DEVICE 
eno1             f3fd9e77-4249-366b-bb9a-46ae2216f34e  ethernet  eno1   
Bond connection  5992f572-4a78-4247-a066-4782cf0de5b5  bond      bond0  
lo               57fba512-9739-4dd2-b9b7-39693e3eee0d  loopback  lo     
eno2             6bd7bec0-24ab-470a-b4cd-8194c098fda1  ethernet  --     
eno3             0a589586-ca94-48df-b406-6ce8d3dcd159  ethernet  --     
eno4             6f5aaa63-2e7a-4868-adb0-ca4c82142ad8  ethernet  --     
ens2f0           d2fb08b6-178e-419f-92be-64a8581bf4ff  ethernet  --     
ens2f1           ef8d918b-2c2b-48ee-8b45-5074d96d665f  ethernet  --     
ens2f2           69f0d44c-88fd-4ce2-b89b-4286fe92ef59  ethernet  --     
ens2f3           aee515ea-6c10-489a-9366-66d6e46ff0c8  ethernet  -- 

И далее:

nmcli connection modify «Bond connection» bond.options «mode=802.3ad»

Как задать нужные параметры?

nmcli connection modify «Bond connection» bond.options «mode=802.3ad, miimon 1, downdelay 0, updelay 0, xmit-hash-policy=layer2+3»

Так не выходит.

Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra
nmcli con add type bond con-name "Bond connection" ifname bond0 bond.options "mode=802.3ad,miimon=1,downdelay=0,updelay=0,xmit_hash_policy=layer2+3"

Вот так сработало.

Aleksandra
() автор топика
Последнее исправление: Aleksandra (всего исправлений: 1)
Ответ на: комментарий от Aleksandra

Еще было добавлено:

nmcli con add type ethernet con-name "bond0 port 1" ifname eno3 master bond0
nmcli con add type ethernet con-name "bond0 port 2" ifname eno4 master bond0

nmcli connection modify "Bond connection" ipv4.addresses '172.31.0.22/24'
nmcli connection modify "Bond connection" ipv4.method manual

nmcli connection up "Bond connection"
[root@server ~]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v5.14.0-611.13.1.el9_7.x86_64

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2+3 (2)
MII Status: down
MII Polling Interval (ms): 1
Up Delay (ms): 0
Down Delay (ms): 0
Peer Notification Delay (ms): 0

802.3ad info
LACP active: on
LACP rate: slow
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
System MAC address: 8e:26:5a:a2:0d:40
bond bond0 has no active aggregator

Что-то ведь не правильно сделано?

Aleksandra
() автор топика
Ответ на: комментарий от bigbit

В RHEL9 ничего в этом отношении не изменилось, конфиг от RHEL8 должен подойти.

Изменилось, пакет network-scripts удалили, конфиг может подхватить NM плагин ifcfg-rh, но не во всём корректно.

yandrey ★★
()
Последнее исправление: yandrey (всего исправлений: 1)
Ответ на: комментарий от yandrey

У меня в RHEL9 бондинг по-пережнему в файликах ifcfg-*, и все прекрасно работает. Файлики точно такие же, как у ТС, в этом отношеннии ничего не изменилось.

Даже когда редактируешь через nmcli/nmtui, изменения вносятся в эти файлики.

bigbit ★★★★★
()
Ответ на: комментарий от Aleksandra

Если пойти таким путём: один интерфейс оставить для управления и настроить «классическим способом»? А остальное в bond. То что в prox пишется похоже на правду, только LACP это «програмно-аппаратное» и без «ответной» части не поднимется.

anonymous
()
Ответ на: комментарий от anonymous

Именно из-за того, что я не вижу в её /proc ничего про интерфейсы входящие в bond я и спросил про вывод «ip li»
Если погасить порты со стороны коммутатора, то информация в /proc/net/bonding/bond0 про slave все равно есть, а у ТС этих данных нет.

vel ★★★★★
()