From 62f12e3a1f3bac5b3adbd47b13ae57e81889e55b Mon Sep 17 00:00:00 2001 From: Vladimir Kozhukalov Date: Mon, 15 Jul 2024 04:32:50 -0500 Subject: [PATCH] Add Flannel deployment to deploy-env role Change-Id: I72f3f29196ea1d433655c8862ac34718df18c7ea --- roles/deploy-env/defaults/main.yaml | 12 ++++--- .../deploy-env/tasks/client_cluster_ssh.yaml | 2 +- roles/deploy-env/tasks/flannel.yaml | 20 +++++++++++ roles/deploy-env/tasks/main.yaml | 7 +++- roles/osh-run-script-set/defaults/main.yaml | 2 +- roles/osh-run-script/defaults/main.yaml | 2 +- tools/deployment/ceph/ceph.sh | 2 +- tools/deployment/ceph/ceph_legacy.sh | 2 +- zuul.d/jobs.yaml | 35 ++++++++++++++++++- zuul.d/project.yaml | 1 + 10 files changed, 74 insertions(+), 11 deletions(-) create mode 100644 roles/deploy-env/tasks/flannel.yaml diff --git a/roles/deploy-env/defaults/main.yaml b/roles/deploy-env/defaults/main.yaml index 8af86fe6e..ae9804a0c 100644 --- a/roles/deploy-env/defaults/main.yaml +++ b/roles/deploy-env/defaults/main.yaml @@ -14,15 +14,19 @@ kube_version_repo: "v1.29" # the list of k8s package versions are available here # https://pkgs.k8s.io/core:/stable:/{{ kube_version_repo }}/deb/Packages kube_version: "1.29.5-1.1" -calico_setup: true -calico_version: "v3.27.0" -calico_manifest_url: "https://raw.githubusercontent.com/projectcalico/calico/{{ calico_version }}/manifests/calico.yaml" helm_version: "v3.6.3" crictl_version: "v1.26.1" +calico_setup: true +calico_version: "v3.27.0" +calico_manifest_url: "https://raw.githubusercontent.com/projectcalico/calico/{{ calico_version }}/manifests/calico.yaml" + cilium_setup: false cilium_version: "1.15.6" +flannel_setup: false +flannel_version: v0.25.4 + kubectl: user: zuul group: zuul @@ -30,7 +34,7 @@ kubectl: osh_plugin_repo: "https://opendev.org/openstack/openstack-helm-plugin.git" kubeadm: - pod_network_cidr: "10.244.0.0/24" + pod_network_cidr: "10.244.0.0/16" service_cidr: "10.96.0.0/16" docker: root_path: /var/lib/docker diff --git a/roles/deploy-env/tasks/client_cluster_ssh.yaml b/roles/deploy-env/tasks/client_cluster_ssh.yaml index f1c09980b..7bbf3ea85 100644 --- a/roles/deploy-env/tasks/client_cluster_ssh.yaml +++ b/roles/deploy-env/tasks/client_cluster_ssh.yaml @@ -45,7 +45,7 @@ register: ssh_public_key when: (inventory_hostname in (groups['primary'] | default([]))) - - name: Set primary wireguard public key + - name: Set primary ssh public key set_fact: client_ssh_public_key: "{{ (groups['primary'] | map('extract', hostvars, ['ssh_public_key', 'stdout']))[0] }}" when: inventory_hostname in (groups['k8s_cluster'] | default([])) diff --git a/roles/deploy-env/tasks/flannel.yaml b/roles/deploy-env/tasks/flannel.yaml new file mode 100644 index 000000000..d5e761dd3 --- /dev/null +++ b/roles/deploy-env/tasks/flannel.yaml @@ -0,0 +1,20 @@ +--- +- name: Add Flannel Helm repo + become: false + when: inventory_hostname in (groups['primary'] | default([])) + block: + - name: Add Flannel chart repo + kubernetes.core.helm_repository: + name: flannel + repo_url: "https://flannel-io.github.io/flannel/" + + - name: Install Flannel + kubernetes.core.helm: + name: flannel + chart_ref: flannel/flannel + namespace: kube-flannel + create_namespace: true + chart_version: "{{ flannel_version }}" + release_values: + podCidr: "{{ kubeadm.pod_network_cidr }}" +... diff --git a/roles/deploy-env/tasks/main.yaml b/roles/deploy-env/tasks/main.yaml index d699d2896..4274c01c4 100644 --- a/roles/deploy-env/tasks/main.yaml +++ b/roles/deploy-env/tasks/main.yaml @@ -48,7 +48,7 @@ file: k8s_client.yaml when: inventory_hostname in (groups['primary'] | default([])) -- name: Include K8s Calico tasks +- name: Include Calico tasks include_tasks: file: calico.yaml when: calico_setup @@ -58,6 +58,11 @@ file: cilium.yaml when: cilium_setup +- name: Include Flannel tasks + include_tasks: + file: flannel.yaml + when: flannel_setup + - name: Include coredns resolver tasks include_tasks: file: coredns_resolver.yaml diff --git a/roles/osh-run-script-set/defaults/main.yaml b/roles/osh-run-script-set/defaults/main.yaml index 6f555bb1a..6c1199f1c 100644 --- a/roles/osh-run-script-set/defaults/main.yaml +++ b/roles/osh-run-script-set/defaults/main.yaml @@ -13,7 +13,7 @@ --- ceph_osd_data_device: "/dev/loop0" kubeadm: - pod_network_cidr: "10.244.0.0/24" + pod_network_cidr: "10.244.0.0/16" osh_params: container_distro_name: ubuntu container_distro_version: focal diff --git a/roles/osh-run-script/defaults/main.yaml b/roles/osh-run-script/defaults/main.yaml index 6f555bb1a..6c1199f1c 100644 --- a/roles/osh-run-script/defaults/main.yaml +++ b/roles/osh-run-script/defaults/main.yaml @@ -13,7 +13,7 @@ --- ceph_osd_data_device: "/dev/loop0" kubeadm: - pod_network_cidr: "10.244.0.0/24" + pod_network_cidr: "10.244.0.0/16" osh_params: container_distro_name: ubuntu container_distro_version: focal diff --git a/tools/deployment/ceph/ceph.sh b/tools/deployment/ceph/ceph.sh index 936b6d14a..b667cdf13 100755 --- a/tools/deployment/ceph/ceph.sh +++ b/tools/deployment/ceph/ceph.sh @@ -15,7 +15,7 @@ set -xe : ${CEPH_OSD_DATA_DEVICE:="/dev/loop100"} -: ${POD_NETWORK_CIDR:="10.244.0.0/24"} +: ${POD_NETWORK_CIDR:="10.244.0.0/16"} : ${OSH_INFRA_HELM_REPO:="../openstack-helm-infra"} : ${OSH_INFRA_PATH:="../openstack-helm-infra"} diff --git a/tools/deployment/ceph/ceph_legacy.sh b/tools/deployment/ceph/ceph_legacy.sh index 3da0f0481..081a6ddd3 100755 --- a/tools/deployment/ceph/ceph_legacy.sh +++ b/tools/deployment/ceph/ceph_legacy.sh @@ -15,7 +15,7 @@ set -xe : ${CEPH_OSD_DATA_DEVICE:="/dev/loop100"} -: ${POD_NETWORK_CIDR:="10.244.0.0/24"} +: ${POD_NETWORK_CIDR:="10.244.0.0/16"} : ${OSH_INFRA_HELM_REPO:="../openstack-helm-infra"} : ${OSH_INFRA_PATH:="../openstack-helm-infra"} diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 9c924a756..35a56c4d6 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -93,7 +93,7 @@ containerd: root_path: "/opt/ext_vol/containerd" kubeadm: - pod_network_cidr: "10.244.0.0/24" + pod_network_cidr: "10.244.0.0/16" service_cidr: "10.96.0.0/16" osh_plugin_repo: "{{ zuul.project.src_dir }}/../openstack-helm-plugin" loopback_setup: true @@ -299,6 +299,39 @@ - ./tools/deployment/common/memcached.sh - ./tools/deployment/openstack/keystone.sh +- job: + name: openstack-helm-infra-keystone-flannel-2024-1-ubuntu_jammy + parent: openstack-helm-infra-deploy + nodeset: openstack-helm-3nodes-ubuntu_jammy + files: + - ^helm-toolkit/.* + - ^roles/.* + - ^rabbitmq/.* + - ^mariadb/.* + - ^memcached/.* + vars: + osh_params: + openstack_release: "2024.1" + container_distro_name: ubuntu + container_distro_version: jammy + calico_setup: false + flannel_setup: true + gate_scripts: + - ./tools/deployment/common/prepare-k8s.sh + - ./tools/deployment/common/prepare-charts.sh + - ./tools/deployment/common/ingress.sh + - ./tools/deployment/ceph/ceph-rook.sh + - ./tools/deployment/ceph/ceph-adapter-rook.sh + - ./tools/deployment/common/setup-client.sh + - | + export NAMESPACE=openstack + export OSH_INFRA_EXTRA_HELM_ARGS="--set pod.replicas.server=1 ${OSH_INFRA_EXTRA_HELM_ARGS}" + export RUN_HELM_TESTS=no + ./tools/deployment/db/mariadb.sh + - ./tools/deployment/common/rabbitmq.sh + - ./tools/deployment/common/memcached.sh + - ./tools/deployment/openstack/keystone.sh + - job: name: openstack-helm-infra-cinder-2023-1-ubuntu_focal description: | diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index c53275bb7..ac8d9d5a8 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -33,6 +33,7 @@ - openstack-helm-infra-tls-2024-1-ubuntu_jammy - openstack-helm-infra-compute-kit-dpdk-2023-2-ubuntu_jammy - openstack-helm-infra-keystone-cilium-2024-1-ubuntu_jammy + - openstack-helm-infra-keystone-flannel-2024-1-ubuntu_jammy - openstack-helm-infra-ceph-migrate gate: jobs: