Use Metallb for all jobs by default

The current way how we utilize K8s Ingress API
is complicated and we agreed to re-design it.

It assumes we have two ingress controller instances:
- cluster wide instance
- namespace instance

Cluster wide instance is deployed in the host network namespace
and listens on node IPs. We can use it to get access to services
running inside the k8s cluster if we resolve names into cluster IPs.

Namespace instance listens on cluster IPs and is only
available inside the cluster or via a load balancer like Metallb.
For tests we utilize this instance together with the cluster.local
domain suffix to get access to services running on top of K8s.
However cluster.local is not intended to be used outside the cluster.
The *.cluster.local names are not supposed to be visible outside
and should be used only for the communication inside the cluster.

Load balancers or other more generally gateway instances (see Gateway API)
should be used to get access to services running in K8s clusters.

This PS is a step towards clearer ingress implementation.

Change-Id: I57bee6e0f82c9deb2745e8e0d18c420b74837421
This commit is contained in:
Vladimir Kozhukalov
2025-06-25 09:00:58 -05:00
parent 0c32d04afb
commit 0e104b9600
6 changed files with 12 additions and 34 deletions

View File

@@ -53,9 +53,9 @@ loopback_device: /dev/loop100
loopback_image: /var/lib/openstack-helm/ceph-loop.img
loopback_image_size: 12G
coredns_resolver_setup: true
coredns_resolver_setup: false
metallb_setup: false
metallb_setup: true
metallb_version: "0.14.9"
metallb_pool_cidr: "172.24.128.0/24"
metallb_openstack_endpoint_cidr: "172.24.128.100/24"

View File

@@ -56,42 +56,29 @@
name: openstack-helm-compute-kit-rook-2024-1-ubuntu_jammy
parent: openstack-helm-compute-kit-rook
vars:
metallb_setup: true
osh_params:
openstack_release: "2024.1"
container_distro_name: ubuntu
container_distro_version: jammy
- job:
name: openstack-helm-compute-kit-metallb-2024-1-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
metallb_setup: true
osh_params:
openstack_release: "2024.1"
container_distro_name: ubuntu
container_distro_version: jammy
- job:
name: openstack-helm-compute-kit-kubespray-2024-1-ubuntu_jammy
parent: openstack-helm-compute-kit-kubespray
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
metallb_setup: true
osh_params:
openstack_release: "2024.1"
container_distro_name: ubuntu
container_distro_version: jammy
- job:
name: openstack-helm-compute-kit-cilium-metallb-2024-1-ubuntu_jammy
name: openstack-helm-compute-kit-cilium-2024-1-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
calico_setup: false
cilium_setup: true
metallb_setup: true
osh_params:
openstack_release: "2024.1"
container_distro_name: ubuntu
@@ -99,13 +86,12 @@
- job:
name: openstack-helm-compute-kit-flannel-metallb-2024-1-ubuntu_jammy
name: openstack-helm-compute-kit-flannel-2024-1-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
calico_setup: false
flannel_setup: true
metallb_setup: true
osh_params:
openstack_release: "2024.1"
container_distro_name: ubuntu
@@ -116,7 +102,6 @@
parent: openstack-helm-compute-kit-helm-repo-public
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
metallb_setup: true
osh_params:
openstack_release: "2024.1"
container_distro_name: ubuntu

View File

@@ -23,36 +23,33 @@
- job:
name: openstack-helm-compute-kit-2024-2-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
nodeset: openstack-helm-3nodes-ubuntu_jammy
timeout: 10800
vars:
metallb_setup: true
osh_params:
openstack_release: "2024.2"
container_distro_name: ubuntu
container_distro_version: jammy
- job:
name: openstack-helm-compute-kit-cilium-metallb-2024-2-ubuntu_jammy
name: openstack-helm-compute-kit-cilium-2024-2-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
calico_setup: false
cilium_setup: true
metallb_setup: true
osh_params:
openstack_release: "2024.2"
container_distro_name: ubuntu
container_distro_version: jammy
- job:
name: openstack-helm-compute-kit-flannel-metallb-2024-2-ubuntu_jammy
name: openstack-helm-compute-kit-flannel-2024-2-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
calico_setup: false
flannel_setup: true
metallb_setup: true
osh_params:
openstack_release: "2024.2"
container_distro_name: ubuntu
@@ -63,7 +60,6 @@
parent: openstack-helm-compute-kit-helm-repo-public
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
vars:
metallb_setup: true
osh_params:
openstack_release: "2024.2"
container_distro_name: ubuntu

View File

@@ -24,10 +24,9 @@
- job:
name: openstack-helm-compute-kit-2025-1-ubuntu_jammy
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_jammy
nodeset: openstack-helm-3nodes-ubuntu_jammy
timeout: 10800
vars:
metallb_setup: true
osh_params:
openstack_release: "2025.1"
container_distro_name: ubuntu
@@ -57,10 +56,9 @@
- job:
name: openstack-helm-compute-kit-2025-1-ubuntu_noble
parent: openstack-helm-compute-kit
nodeset: openstack-helm-1node-3nodes-ubuntu_noble
nodeset: openstack-helm-3nodes-ubuntu_noble
timeout: 10800
vars:
metallb_setup: true
osh_params:
openstack_release: "2025.1"
container_distro_name: ubuntu

View File

@@ -97,8 +97,9 @@
cilium_version: "1.17.4"
flannel_setup: false
flannel_version: v0.26.7
metallb_setup: false
metallb_setup: true
metallb_version: "0.14.9"
coredns_resolver_setup: false
ingress_setup: true
helm_version: "v3.18.1"
crictl_version: "v1.33.0"
@@ -116,7 +117,6 @@
- playbooks/deploy-env-kubespray.yaml
- playbooks/run-scripts.yaml
vars:
metallb_setup: true
kube_version_kubespray: "v1.29.5"
- job:

View File

@@ -25,8 +25,7 @@
- openstack-helm-tls-2024-1-ubuntu_jammy # 3 nodes rook
- openstack-helm-cinder-2024-1-ubuntu_jammy # 5 nodes rook
- openstack-helm-compute-kit-2024-1-ubuntu_jammy # 3 nodes
- openstack-helm-compute-kit-metallb-2024-1-ubuntu_jammy # 1 node + 3 nodes
- openstack-helm-compute-kit-cilium-metallb-2024-1-ubuntu_jammy # 1 node + 3 nodes
- openstack-helm-compute-kit-cilium-2024-1-ubuntu_jammy # 1 node + 3 nodes
- openstack-helm-horizon-2024-1-ubuntu_jammy # 1 node
- openstack-helm-tacker-2024-1-ubuntu_jammy
- openstack-helm-compute-kit-dpdk-2024-1-ubuntu_jammy # 32GB node