action #151273
closed[qe-core] Introduce a test for verifying bonded networks supported on NM in ALP
Added by dvenkatachala about 1 year ago. Updated 10 months ago.
40%
Description
Add a new test in ALP to verify that bonded networks are supported on Network Manager.
Introduce the test at : https://openqa.suse.de/group_overview/497
Acceptance Criteria¶
- Ensure that the necessary kernel modules for bonding are loaded. Create and verify a new bonded interface.
- Add Ethernet interfaces as slaves.
- Verify that network connectivity is maintained through the bonded interface
Files
clipboard-202312071044-gpheg.png (6.46 KB) clipboard-202312071044-gpheg.png | amanzini, 2023-12-07 09:44 | ||
OVS_DPDK-VM-VM_test (5.85 KB) OVS_DPDK-VM-VM_test | szarate, 2024-01-29 09:08 | ||
OVS_DPDK_single_VM.txt (3.65 KB) OVS_DPDK_single_VM.txt | szarate, 2024-01-29 09:08 |
Updated by dvenkatachala almost 1 year ago
I performed the manual steps, and below are the steps for reference to automate.
- Ensure that the necessary kernel modules for bonding are loaded.
localhost:~ # lsmod | grep bonding
bonding 258048 0
tls 151552 1 bonding
- Create a new bond interface (e.g., bond0) using nmcli and verify it.
localhost:~ # nmcli con add type bond ifname bond0 con-name bond0
Connection 'bond0' (f3d989fd-6f94-4afa-aa21-22dd8684b757) successfully added.
localhost:~ # ip a s bond0
4: bond0: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 5a:b2:d6:22:db:42 brd ff:ff:ff:ff:ff:ff
localhost:~ #
- Add the network interfaces you want to bond as slaves to the bond interface. Here, I have added 2 ethernet interfaces,
localhost:~ # nmcli con add type ethernet ifname eth0 master bond0
Connection 'bond-slave-eth0' (c3f01588-8dcd-46f7-8bd2-d86021e906dc) successfully added.
localhost:~ # nmcli con add type ethernet ifname eth1 master bond0
Connection 'bond-slave-eth1' (78cbc2e0-36e1-4c37-a039-a26fa49d55fb) successfully added.
- Activate the Bond Interface and reboot the ALP machine. Once it boots up, verify the 'bond0' interface to ensure that its state is 'activated' and that the devices (slaves) are correctly associated.
localhost:~ # nmcli conn up bond0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/6)
localhost:~ # reboot
localhost:~ # ip a
2: eth0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000
link/ether 5a:b2:d6:22:db:42 brd ff:ff:ff:ff:ff:ff permaddr 52:54:00:a8:32:c0
altname enp1s0
3: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000
link/ether 5a:b2:d6:22:db:42 brd ff:ff:ff:ff:ff:ff permaddr 52:54:00:c0:39:64
altname enp7s0
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 5a:b2:d6:22:db:42 brd ff:ff:ff:ff:ff:ff
inet 192.168.100.196/24 brd 192.168.100.255 scope global dynamic noprefixroute bond0
valid_lft 3344sec preferred_lft 3344sec
inet6 fe80::1bd3:b0e6:3448:9ab4/64 scope link noprefixroute
valid_lft forever preferred_lft forever
localhost:~ # nmcli conn show
NAME UUID TYPE DEVICE
bond0 96c2aa1c-48f7-401c-96ac-de120c5de9a1 bond bond0
lo fb3ee61f-eb8c-4a42-853f-28d3a080d18a loopback lo
bond-slave-eth0 c3f01588-8dcd-46f7-8bd2-d86021e906dc ethernet eth0
bond-slave-eth1 78cbc2e0-36e1-4c37-a039-a26fa49d55fb ethernet eth1
- Test connectivity from the bond interface.
localhost:~ # ping -I bond0 google.com -c 1
PING google.com (142.250.187.174) from 192.168.100.196 bond0: 56(84) bytes of data.
64 bytes from sof02s46-in-f14.1e100.net (142.250.187.174): icmp_seq=1 ttl=114 time=37.3 ms
--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 37.268/37.268/37.268/0.000 ms
localhost:~ #
Updated by amanzini 12 months ago · Edited
- Status changed from Feedback to In Progress
- % Done changed from 0 to 40
PR merged, working on schedule also for microos on o3 as requested in PR comment jobgroup: https://openqa.opensuse.org/tests/overview?build=20231204&version=Tumbleweed&groupid=1&distri=microos
Updated by amanzini 12 months ago
- Status changed from In Progress to Feedback
PR https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/18283 for making the test independent from the network device name, after merging we can schedule on o3
Updated by amanzini 12 months ago
PR for scheduling on o3: https://github.com/os-autoinst/opensuse-jobgroups/pull/401
Updated by szarate 10 months ago
- File OVS_DPDK_single_VM.txt OVS_DPDK_single_VM.txt added
- File OVS_DPDK-VM-VM_test OVS_DPDK-VM-VM_test added
- https://bugzilla.suse.com/show_bug.cgi?id=1219099
- Checking/extending with HA
- Likely get https://www.intel.com/content/www/us/en/partner/showcase/offering/a5b3b0000004fTUAAY/dynanic-fpga-accelerated-dpdk-smartnic.html
- I have in mind Intel ACC100 - pf_bb_config
- so that's I'd like to have something at least from a functional perspective running, build some bare-metal when there's the hardware available, we move to the real deal
- Test SVR-IO VM to VM and Baremetal