Skip to content

Commit

Permalink
ci: cilium dualstack for load test pipeline (#2603)
Browse files Browse the repository at this point in the history
* adding cilium dualstack to load test pipeline

* updating cni default
  • Loading branch information
camrynl authored Mar 4, 2024
1 parent a4f3a40 commit 4d90d23
Show file tree
Hide file tree
Showing 7 changed files with 45 additions and 10 deletions.
24 changes: 20 additions & 4 deletions .pipelines/cni/cilium/cilium-overlay-load-test-template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ parameters:
arch: ""
osSKU: Ubuntu
hubbleEnabled: false
dualstackVersion: ""
cni: "cilium"

# Condition confirms that:
# Previous job has reported Succeeded. Previous job is currently setup which controls variable assignment and we are dependent on its success.
Expand Down Expand Up @@ -70,11 +72,23 @@ stages:
kubectl cluster-info
kubectl get po -owide -A
if [ ! -z ${{ parameters.dualstackVersion }} ]; then
echo "Use dualstack version of Cilium"
export CILIUM_VERSION_TAG=${{ parameters.dualstackVersion }}
fi
echo "install Cilium ${CILIUM_VERSION_TAG}"
export DIR=${CILIUM_VERSION_TAG%.*}
echo "installing files from ${DIR}"
echo "deploy Cilium ConfigMap"
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-config/cilium-config.yaml
if [ ! -z ${{ parameters.dualstackVersion }} ]; then
echo "Use dualstack configmap for Cilium"
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-config/cilium-config-dualstack.yaml
else
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-config/cilium-config.yaml
fi
# Passes Cilium image to daemonset and deployment
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-agent/files
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-operator/files
Expand Down Expand Up @@ -113,8 +127,8 @@ stages:
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-config/cilium-config-hubble.yaml
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-agent/files
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-operator/files
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.tpl | kubectl apply -f -
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.tpl | kubectl apply -f -
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.yaml | kubectl apply -f -
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.yaml | kubectl apply -f -
kubectl get po -owide -A
echo "Deploy Azure-CNS"
Expand All @@ -137,6 +151,7 @@ stages:
- template: ../load-test-templates/validate-state-template.yaml
parameters:
clusterName: ${{ parameters.clusterName }}-$(commitID)
cni: ${{ parameters.cni }}
- job: restart_nodes
condition: and( and( not(canceled()), not(failed()) ), or( contains(variables.CONTROL_SCENARIO, 'restartNode') , contains(variables.CONTROL_SCENARIO, 'all') ) )
displayName: "Restart Test"
Expand All @@ -151,6 +166,7 @@ stages:
parameters:
clusterName: ${{ parameters.clusterName }}-$(commitID)
restartCase: "true"
cni: ${{ parameters.cni }}
- job: restart_cns
condition: and( and( not(canceled()), not(failed()) ), or( contains(variables.CONTROL_SCENARIO, 'restartCNS') , contains(variables.CONTROL_SCENARIO, 'all') ) )
displayName: "Restart and Validate CNS"
Expand All @@ -162,7 +178,7 @@ stages:
os: ${{ parameters.os }}
scaleup: ${SCALEUP_CILIUM}
nodeCount: ${{ parameters.nodeCount }}
cni: cilium
cni: ${{ parameters.cni }}
- job: cni_tests
displayName: "Cilium Test"
dependsOn: restart_cns
Expand Down
19 changes: 19 additions & 0 deletions .pipelines/cni/pipeline.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -307,6 +307,7 @@ stages:
clusterName: "cilium-over"
nodeCount: ${NODE_COUNT_CILIUM}
vmSize: ${VM_SIZE_CILIUM}
cni: "cilium"

- template: cilium/cilium-overlay-load-test-template.yaml
parameters:
Expand All @@ -316,6 +317,7 @@ stages:
hubbleEnabled: true
nodeCount: ${NODE_COUNT_CILIUM}
vmSize: ${VM_SIZE_CILIUM}
cni: "cilium"

- template: cilium/cilium-overlay-load-test-template.yaml
parameters:
Expand All @@ -326,6 +328,7 @@ stages:
vmSize: ${VM_SIZE_CILIUM}
arch: amd64
osSKU: AzureLinux
cni: "cilium"

- template: cilium/cilium-overlay-load-test-template.yaml
parameters:
Expand All @@ -335,6 +338,7 @@ stages:
nodeCount: ${NODE_COUNT_CILIUM}
vmSize: Standard_D8ps_v5
arch: arm64
cni: "cilium"

- template: cilium/cilium-overlay-load-test-template.yaml
parameters:
Expand All @@ -344,6 +348,17 @@ stages:
nodeCount: 2
vmSize: Standard_HC44-16rs
arch: amd64
cni: "cilium"

- template: cilium/cilium-overlay-load-test-template.yaml
parameters:
name: cilium_overlay_ds
clusterType: dualstack-byocni-nokubeproxy-up
clusterName: "cilium-ds-ov"
nodeCount: ${NODE_COUNT_CILIUM}
vmSize: ${VM_SIZE_CILIUM}
dualstackVersion: ${CILIUM_DUALSTACK_VERSION}
cni: "cilium_dualstack"

- stage: delete_resources
displayName: "Delete Resources"
Expand All @@ -356,6 +371,7 @@ stages:
- cilium_overlay_mariner
- cilium_overlay_arm
- cilium_overlay_rdma
- cilium_overlay_ds
- win22_cniv1_HNS
- linux_cniv1
- linux_podsubnet
Expand Down Expand Up @@ -391,6 +407,9 @@ stages:
cilium_overlay_rdma:
name: cilium_overlay_rdma
clusterName: "cil-over-rdma"
cilium_overlay_ds:
name: cilium_overlay_ds
clusterName: "cil-ds-ov"
win22-cniv1:
name: win22-cniv1
clusterName: "win22-cniv1"
Expand Down
4 changes: 2 additions & 2 deletions .pipelines/networkobservability/pipeline.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ stages:
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-config/cilium-config-hubble.yaml
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-agent/files
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-operator/files
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.tpl | kubectl apply -f -
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.tpl | kubectl apply -f -
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.yaml | kubectl apply -f -
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.yaml | kubectl apply -f -
# Use different file directories for nightly and current cilium version
name: "installCilium"
displayName: "Install Cilium on AKS Overlay"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ steps:
export CILIUM_VERSION_TAG=${CILIUM_DUALSTACK_VERSION}
echo "install Cilium ${CILIUM_DUALSTACK_VERSION} onto Overlay Cluster"
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.tpl | kubectl apply -f -
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.tpl | kubectl apply -f -
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.yaml | kubectl apply -f -
envsubst '${CILIUM_VERSION_TAG},${CILIUM_IMAGE_REGISTRY}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.yaml | kubectl apply -f -
kubectl get po -owide -A
name: "installCilium"
displayName: "Install Cilium on AKS Dualstack Overlay"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ steps:
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-config/cilium-config-hubble.yaml
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-agent/files
kubectl apply -f test/integration/manifests/cilium/v${DIR}/cilium-operator/files
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.tpl | kubectl apply -f -
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.tpl | kubectl apply -f -
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-agent/templates/daemonset.yaml | kubectl apply -f -
envsubst '${CILIUM_IMAGE_REGISTRY},${CILIUM_VERSION_TAG}' < test/integration/manifests/cilium/v${DIR}/cilium-operator/templates/deployment.yaml | kubectl apply -f -
# Use different file directories for nightly and current cilium version
name: "installCilium"
displayName: "Install Cilium on AKS Overlay"
Expand Down

0 comments on commit 4d90d23

Please sign in to comment.