From 7c1d43f369d7949a9e74b82f95c48e4802c12f72 Mon Sep 17 00:00:00 2001 From: Peter Mikus Date: Thu, 19 Jun 2025 12:18:35 +0200 Subject: [PATCH] fix(infra): Altra Signed-off-by: Peter Mikus Change-Id: I9afd2db45824ac9f76c34eea5d4bf69fdb303e57 (cherry picked from commit 18879f54ccd1c5c5832c094b1349ccce5b2e01c3) --- .../fdio_dc_testbed_specifications.md | 12 ++--- .../lf_inventory/host_vars/10.30.51.72.yaml | 26 +++++++++- .../lf_inventory/host_vars/10.30.51.73.yaml | 26 +++++++++- .../roles/calibration/defaults/main.yaml | 4 -- .../roles/docker_images/files/base/Dockerfile | 58 +++++++++++++++++++++- topologies/available/lf_3n_alt_testbed34.yaml | 48 ------------------ 6 files changed, 109 insertions(+), 65 deletions(-) diff --git a/docs/content/infrastructure/fdio_dc_testbed_specifications.md b/docs/content/infrastructure/fdio_dc_testbed_specifications.md index 28c39fcdbf..ae5e158c09 100644 --- a/docs/content/infrastructure/fdio_dc_testbed_specifications.md +++ b/docs/content/infrastructure/fdio_dc_testbed_specifications.md @@ -886,8 +886,8 @@ FD.io CSIT lab contains following server types: - IPMI IP: 10.30.50.72 - Host IP: 10.30.51.72 - portnames: - - s62-t34-sut1-c1/p1 - 40GE-port1 xl710-QDA2-2p40GE. - - s62-t34-sut1-c1/p2 - 40GE-port2 xl710-QDA2-2p40GE. + - s62-t34-sut1-c1/p1 - 100GE-port1 ConnectX5-2p100GE. + - s62-t34-sut1-c1/p2 - 100GE-port2 ConnectX5-2p100GE. - s62-t34-sut1-c8/p1 - 100GE-port1 ConnectX6-2p100GE. - s62-t34-sut1-c8/p2 - 100GE-port2 ConnectX6-2p100GE. - SUT [Server-Type-E23]: @@ -896,8 +896,8 @@ FD.io CSIT lab contains following server types: - IPMI IP: 10.30.50.73 - Host IP: 10.30.51.73 - portnames: - - s63-t34-sut2-c1/p1 - 40GE-port1 xl710-QDA2-2p40GE. - - s63-t34-sut2-c1/p2 - 40GE-port2 xl710-QDA2-2p40GE. + - s63-t34-sut2-c1/p1 - 100GE-port1 ConnectX5-2p100GE. + - s63-t34-sut2-c1/p2 - 100GE-port2 ConnectX5-2p100GE. - s63-t34-sut2-c8/p1 - 100GE-port1 ConnectX6-2p100GE. - s63-t34-sut2-c8/p2 - 100GE-port2 ConnectX6-2p100GE. - TG [Server-Type-E32]: @@ -1362,10 +1362,6 @@ FD.io CSIT lab contains following server types: ``` - testbed34: - - ring1 40GE-ports xl710-QDA2-2p40GE on SUTs: - - s64-t34-tg1-c4/p1 - s62-t34-sut1-c1/p2. - - s62-t34-sut1-c1/p1 - s63-t34-sut2-c1/p2. - - s63-t34-sut2-c1/p1 - s64-t34-tg1-c4/p2. - ring2 100GE-ports ConnectX6-2p100GE Mellanox on SUTs: - s64-t34-tg1-c8/p1 - s62-t34-sut2-c8/p1. - s62-t34-sut1-c8/p1 - s63-t34-sut2-c8/p2. diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.72.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.72.yaml index b7c8c26aae..a5adbd2cc2 100644 --- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.72.yaml +++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.72.yaml @@ -19,8 +19,30 @@ sysctl: nr_hugepages: 32768 max_map_count: 20000 +kernel_version_by_distro_by_arch: + ubuntu: + noble: + x86_64: + - "6.8.0-60-generic" + inventory_ipmi_hostname: "10.30.50.72" cpu_microarchitecture: "altra" -intel_700_matrix: "dpdk23.11" -mellanox_matrix: "dpdk23.11" +mellanox_matrix: "dpdk24.07" + +docker_sut: true +docker_volumes: + - source: "/dev/null" + target: "/etc/sysctl.d/80-vpp.conf" + - source: "/opt/boot/" + target: "/opt/boot/" + - source: "/opt/dpdk-24.11.1/" + target: "/opt/dpdk-24.11.1/" + - source: "/usr/bin/iperf3" + target: "/usr/bin/iperf3" + - source: "/usr/lib/x86_64-linux-gnu/libiperf.so.0" + target: "/usr/lib/x86_64-linux-gnu/libiperf.so.0" + - source: "/usr/lib/x86_64-linux-gnu/libiperf.so.0.0.0" + target: "/usr/lib/x86_64-linux-gnu/libiperf.so.0.0.0" + - source: "/var/run/docker.sock" + target: "/var/run/docker.sock" \ No newline at end of file diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.73.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.73.yaml index 0811b038b7..dba1144543 100644 --- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.73.yaml +++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.73.yaml @@ -19,8 +19,30 @@ sysctl: nr_hugepages: 32768 max_map_count: 20000 +kernel_version_by_distro_by_arch: + ubuntu: + noble: + x86_64: + - "6.8.0-60-generic" + inventory_ipmi_hostname: "10.30.50.73" cpu_microarchitecture: "altra" -intel_700_matrix: "dpdk23.11" -mellanox_matrix: "dpdk23.11" +mellanox_matrix: "dpdk24.07" + +docker_sut: true +docker_volumes: + - source: "/dev/null" + target: "/etc/sysctl.d/80-vpp.conf" + - source: "/opt/boot/" + target: "/opt/boot/" + - source: "/opt/dpdk-24.11.1/" + target: "/opt/dpdk-24.11.1/" + - source: "/usr/bin/iperf3" + target: "/usr/bin/iperf3" + - source: "/usr/lib/x86_64-linux-gnu/libiperf.so.0" + target: "/usr/lib/x86_64-linux-gnu/libiperf.so.0" + - source: "/usr/lib/x86_64-linux-gnu/libiperf.so.0.0.0" + target: "/usr/lib/x86_64-linux-gnu/libiperf.so.0.0.0" + - source: "/var/run/docker.sock" + target: "/var/run/docker.sock" \ No newline at end of file diff --git a/fdio.infra.ansible/roles/calibration/defaults/main.yaml b/fdio.infra.ansible/roles/calibration/defaults/main.yaml index 8f3f0c8226..56922b7048 100644 --- a/fdio.infra.ansible/roles/calibration/defaults/main.yaml +++ b/fdio.infra.ansible/roles/calibration/defaults/main.yaml @@ -9,10 +9,6 @@ kernel_version_by_distro_by_arch: jammy: x86_64: - "5.15.0-46-generic" - - "5.15.0-1000-aws" - - "5.4.0-1009-aws" - aarch64: - - "5.15.0-46-generic" noble: x86_64: - "6.8.0-45-generic" diff --git a/fdio.infra.ansible/roles/docker_images/files/base/Dockerfile b/fdio.infra.ansible/roles/docker_images/files/base/Dockerfile index a08b82f89b..4ca70ab8b2 100644 --- a/fdio.infra.ansible/roles/docker_images/files/base/Dockerfile +++ b/fdio.infra.ansible/roles/docker_images/files/base/Dockerfile @@ -1,6 +1,62 @@ # Import necessary base images ARG BASE_IMAGE -FROM ${BASE_IMAGE} + +FROM ${BASE_IMAGE:-ubuntu} AS dpdk_stage + +ARG DPDK_VERSION + +# Setup the environment +ENV DEBIAN_FRONTEND=noninteractive + +# Configure locales +RUN apt-get update -qq \ + && apt-get install -y \ + apt-utils \ + locales \ + && sed -i 's/# \(en_US\.UTF-8 .*\)/\1/' /etc/locale.gen \ + && locale-gen en_US.UTF-8 \ + && dpkg-reconfigure --frontend=noninteractive locales \ + && update-locale LANG=en_US.UTF-8 \ + && TZ=Etc/UTC && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \ + && rm -r /var/lib/apt/lists/* +ENV LANG="en_US.UTF-8" LANGUAGE="en_US" LC_ALL="en_US.UTF-8" + +RUN apt-get -q update \ + && apt-get install -y -qq \ + build-essential \ + ca-certificates \ + libnuma-dev \ + python3-all \ + python3-apt \ + python3-dev \ + python3-pip \ + python3-pyelftools \ + python3-setuptools \ + python3-venv \ + python3-virtualenv \ + wget \ + xz-utils \ + && wget --quiet http://fast.dpdk.org/rel/dpdk-$DPDK_VERSION.tar.xz \ + && mkdir --parents /dpdk \ + && tar --extract --file=dpdk-$DPDK_VERSION.tar.xz --directory=/dpdk --strip-components 1 + +# CSIT PIP pre-cache +RUN python3 -m venv venv \ + && venv/bin/pip3 install --upgrade --no-cache-dir pip \ + && venv/bin/pip3 install --upgrade setuptools \ + && venv/bin/pip3 install --upgrade wheel \ + && venv/bin/pip3 install \ + meson==0.64.1 \ + ninja + +ENV PATH="$PATH:/venv/bin" + +# Install DPDK +RUN cd /dpdk \ + && meson setup -Dexamples=l3fwd -Dc_args=-DRTE_LIBRTE_I40E_16BYTE_RX_DESC=y -Dplatform=generic build \ + && ninja -C build + +FROM ${BASE_IMAGE:-ubuntu} AS csit_prod # Setup the environment ENV DEBIAN_FRONTEND=noninteractive diff --git a/topologies/available/lf_3n_alt_testbed34.yaml b/topologies/available/lf_3n_alt_testbed34.yaml index a82c376af8..4028dbb2e6 100644 --- a/topologies/available/lf_3n_alt_testbed34.yaml +++ b/topologies/available/lf_3n_alt_testbed34.yaml @@ -16,22 +16,6 @@ nodes: username: testuser password: Csit1234 interfaces: - port1: - # s74-t34-tg1-c4/p1 - 40GE port1 Intel XL710 2p40GE. - mac_address: "40:a6:b7:85:e7:80" - pci_address: "0000:31:00.0" - ip4_address: 172.16.10.2 - driver: i40e - link: link1 - model: Intel-XL710 - port2: - # s74-t34-tg1-c4/p2 - 40GE port2 Intel XL710 2p40GE. - mac_address: "40:a6:b7:85:e7:81" - pci_address: "0000:31:00.1" - ip4_address: 172.16.20.2 - driver: i40e - link: link2 - model: Intel-XL710 port3: # s74-t34-tg1-c8/p1 - 100GE port1 Intel E810-CQDA2 2p100GE. mac_address: "40:a6:b7:67:1c:e4" @@ -58,22 +42,6 @@ nodes: username: testuser password: Csit1234 interfaces: - port1: - # s62-t34-sut1-c4/p1 - 40GE port1 Intel XL710 2p40GE. - mac_address: "40:a6:b7:85:e7:78" - pci_address: "0004:04:00.0" - ip4_address: 172.16.10.1 - driver: i40e - link: link3 - model: Intel-XL710 - port2: - # s62-t34-sut1-c4/p2 - 40GE port2 Intel XL710 2p40GE. - mac_address: "40:a6:b7:85:e7:79" - pci_address: "0004:04:00.1" - ip4_address: 172.16.20.1 - driver: i40e - link: link2 - model: Intel-XL710 port3: # s62-t34-sut1-c8/p1 - 100GE port1 Mellanox ConnectX-6 Dx 2p100GE. mac_address: "b8:3f:d2:16:07:b8" @@ -100,22 +68,6 @@ nodes: uio_driver: vfio-pci password: Csit1234 interfaces: - port1: - # s63-t34-sut2-c4/p1 - 40GE port1 Intel XL710 2p40GE. - mac_address: "3c:fd:fe:c3:e7:a0" - pci_address: "0004:04:00.0" - ip4_address: 172.16.10.3 - driver: i40e - link: link1 - model: Intel-XL710 - port2: - # s63-t34-sut2-c4/p2 - 40GE port2 Intel XL710 2p40GE. - mac_address: "3c:fd:fe:c3:e7:a1" - pci_address: "0004:04:00.1" - ip4_address: 172.16.20.3 - driver: i40e - link: link3 - model: Intel-XL710 port3: # s63-t34-sut2-c8/p1 - 100GE port1 Mellanox ConnectX-6 Dx 2p100GE. mac_address: "b8:3f:d2:16:07:c4" -- 2.16.6