sigs.k8s.io/cluster-api-provider-azure@v1.17.0/templates/test/ci/cluster-template-prow-edgezone.yaml (about) 1 apiVersion: cluster.x-k8s.io/v1beta1 2 kind: Cluster 3 metadata: 4 labels: 5 cloud-provider: ${CLOUD_PROVIDER_AZURE_LABEL:=azure} 6 cni: calico 7 name: ${CLUSTER_NAME} 8 namespace: default 9 spec: 10 clusterNetwork: 11 pods: 12 cidrBlocks: 13 - 192.168.0.0/16 14 controlPlaneRef: 15 apiVersion: controlplane.cluster.x-k8s.io/v1beta1 16 kind: KubeadmControlPlane 17 name: ${CLUSTER_NAME}-control-plane 18 infrastructureRef: 19 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 20 kind: AzureCluster 21 name: ${CLUSTER_NAME} 22 --- 23 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 24 kind: AzureCluster 25 metadata: 26 name: ${CLUSTER_NAME} 27 namespace: default 28 spec: 29 additionalTags: 30 buildProvenance: ${BUILD_PROVENANCE} 31 creationTimestamp: ${TIMESTAMP} 32 jobName: ${JOB_NAME} 33 extendedLocation: 34 name: ${AZURE_EXTENDEDLOCATION_NAME} 35 type: ${AZURE_EXTENDEDLOCATION_TYPE} 36 identityRef: 37 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 38 kind: AzureClusterIdentity 39 name: ${CLUSTER_IDENTITY_NAME} 40 location: ${AZURE_LOCATION_EDGEZONE} 41 networkSpec: 42 subnets: 43 - name: control-plane-subnet 44 role: control-plane 45 - name: node-subnet 46 role: node 47 vnet: 48 name: ${AZURE_VNET_NAME:=${CLUSTER_NAME}-vnet} 49 resourceGroup: ${AZURE_RESOURCE_GROUP:=${CLUSTER_NAME}} 50 subscriptionID: ${AZURE_SUBSCRIPTION_ID} 51 --- 52 apiVersion: controlplane.cluster.x-k8s.io/v1beta1 53 kind: KubeadmControlPlane 54 metadata: 55 name: ${CLUSTER_NAME}-control-plane 56 namespace: default 57 spec: 58 kubeadmConfigSpec: 59 clusterConfiguration: 60 apiServer: 61 extraArgs: 62 cloud-provider: external 63 timeoutForControlPlane: 20m 64 controllerManager: 65 extraArgs: 66 allocate-node-cidrs: "false" 67 cloud-provider: external 68 cluster-name: ${CLUSTER_NAME} 69 v: "4" 70 etcd: 71 local: 72 dataDir: /var/lib/etcddisk/etcd 73 extraArgs: 74 quota-backend-bytes: "8589934592" 75 diskSetup: 76 filesystems: 77 - device: /dev/disk/azure/scsi1/lun0 78 extraOpts: 79 - -E 80 - lazy_itable_init=1,lazy_journal_init=1 81 filesystem: ext4 82 label: etcd_disk 83 - device: ephemeral0.1 84 filesystem: ext4 85 label: ephemeral0 86 replaceFS: ntfs 87 partitions: 88 - device: /dev/disk/azure/scsi1/lun0 89 layout: true 90 overwrite: false 91 tableType: gpt 92 files: 93 - contentFrom: 94 secret: 95 key: control-plane-azure.json 96 name: ${CLUSTER_NAME}-control-plane-azure-json 97 owner: root:root 98 path: /etc/kubernetes/azure.json 99 permissions: "0644" 100 initConfiguration: 101 nodeRegistration: 102 kubeletExtraArgs: 103 cloud-provider: external 104 name: '{{ ds.meta_data["local_hostname"] }}' 105 joinConfiguration: 106 nodeRegistration: 107 kubeletExtraArgs: 108 cloud-provider: external 109 name: '{{ ds.meta_data["local_hostname"] }}' 110 mounts: 111 - - LABEL=etcd_disk 112 - /var/lib/etcddisk 113 postKubeadmCommands: [] 114 preKubeadmCommands: [] 115 machineTemplate: 116 infrastructureRef: 117 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 118 kind: AzureMachineTemplate 119 name: ${CLUSTER_NAME}-control-plane 120 replicas: ${CONTROL_PLANE_MACHINE_COUNT:=1} 121 version: v1.25.0 122 --- 123 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 124 kind: AzureMachineTemplate 125 metadata: 126 name: ${CLUSTER_NAME}-control-plane 127 namespace: default 128 spec: 129 template: 130 spec: 131 dataDisks: 132 - diskSizeGB: 256 133 lun: 0 134 managedDisk: 135 storageAccountType: StandardSSD_LRS 136 nameSuffix: etcddisk 137 identity: UserAssigned 138 osDisk: 139 diskSizeGB: 128 140 managedDisk: 141 storageAccountType: StandardSSD_LRS 142 osType: Linux 143 sshPublicKey: ${AZURE_SSH_PUBLIC_KEY_B64:=""} 144 userAssignedIdentities: 145 - providerID: /subscriptions/${AZURE_SUBSCRIPTION_ID}/resourceGroups/${CI_RG:=capz-ci}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/${USER_IDENTITY:=cloud-provider-user-identity} 146 vmSize: ${AZURE_EDGEZONE_CONTROL_PLANE_MACHINE_TYPE:=Standard_DS2_v2} 147 --- 148 apiVersion: cluster.x-k8s.io/v1beta1 149 kind: MachineDeployment 150 metadata: 151 name: ${CLUSTER_NAME}-md-0 152 namespace: default 153 spec: 154 clusterName: ${CLUSTER_NAME} 155 replicas: ${WORKER_MACHINE_COUNT:=2} 156 selector: {} 157 template: 158 spec: 159 bootstrap: 160 configRef: 161 apiVersion: bootstrap.cluster.x-k8s.io/v1beta1 162 kind: KubeadmConfigTemplate 163 name: ${CLUSTER_NAME}-md-0 164 clusterName: ${CLUSTER_NAME} 165 infrastructureRef: 166 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 167 kind: AzureMachineTemplate 168 name: ${CLUSTER_NAME}-md-0 169 version: v1.25.0 170 --- 171 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 172 kind: AzureMachineTemplate 173 metadata: 174 name: ${CLUSTER_NAME}-md-0 175 namespace: default 176 spec: 177 template: 178 spec: 179 identity: UserAssigned 180 osDisk: 181 diskSizeGB: 128 182 managedDisk: 183 storageAccountType: StandardSSD_LRS 184 osType: Linux 185 sshPublicKey: ${AZURE_SSH_PUBLIC_KEY_B64:=""} 186 userAssignedIdentities: 187 - providerID: /subscriptions/${AZURE_SUBSCRIPTION_ID}/resourceGroups/${CI_RG:=capz-ci}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/${USER_IDENTITY:=cloud-provider-user-identity} 188 vmSize: ${AZURE_EDGEZONE_NODE_MACHINE_TYPE:=Standard_DS4_v2} 189 --- 190 apiVersion: bootstrap.cluster.x-k8s.io/v1beta1 191 kind: KubeadmConfigTemplate 192 metadata: 193 name: ${CLUSTER_NAME}-md-0 194 namespace: default 195 spec: 196 template: 197 spec: 198 files: 199 - contentFrom: 200 secret: 201 key: worker-node-azure.json 202 name: ${CLUSTER_NAME}-md-0-azure-json 203 owner: root:root 204 path: /etc/kubernetes/azure.json 205 permissions: "0644" 206 joinConfiguration: 207 nodeRegistration: 208 kubeletExtraArgs: 209 cloud-provider: external 210 name: '{{ ds.meta_data["local_hostname"] }}' 211 preKubeadmCommands: [] 212 --- 213 apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 214 kind: AzureClusterIdentity 215 metadata: 216 labels: 217 clusterctl.cluster.x-k8s.io/move-hierarchy: "true" 218 name: ${CLUSTER_IDENTITY_NAME} 219 namespace: default 220 spec: 221 allowedNamespaces: {} 222 clientID: ${AZURE_CLIENT_ID_USER_ASSIGNED_IDENTITY} 223 tenantID: ${AZURE_TENANT_ID} 224 type: ${CLUSTER_IDENTITY_TYPE:=WorkloadIdentity} 225 --- 226 apiVersion: addons.cluster.x-k8s.io/v1alpha1 227 kind: HelmChartProxy 228 metadata: 229 name: calico 230 namespace: default 231 spec: 232 chartName: tigera-operator 233 clusterSelector: 234 matchLabels: 235 cni: calico 236 namespace: tigera-operator 237 releaseName: projectcalico 238 repoURL: https://docs.tigera.io/calico/charts 239 valuesTemplate: |- 240 installation: 241 cni: 242 type: Calico 243 calicoNetwork: 244 bgp: Disabled 245 mtu: 1350 246 ipPools: 247 ipPools:{{range $i, $cidr := .Cluster.spec.clusterNetwork.pods.cidrBlocks }} 248 - cidr: {{ $cidr }} 249 encapsulation: VXLAN{{end}} 250 registry: mcr.microsoft.com/oss 251 # Image and registry configuration for the tigera/operator pod. 252 tigeraOperator: 253 image: tigera/operator 254 registry: mcr.microsoft.com/oss 255 calicoctl: 256 image: mcr.microsoft.com/oss/calico/ctl 257 version: ${CALICO_VERSION} 258 --- 259 apiVersion: addons.cluster.x-k8s.io/v1alpha1 260 kind: HelmChartProxy 261 metadata: 262 name: azuredisk-csi-driver-chart 263 namespace: default 264 spec: 265 chartName: azuredisk-csi-driver 266 clusterSelector: 267 matchLabels: 268 azuredisk-csi: "true" 269 namespace: kube-system 270 releaseName: azuredisk-csi-driver-oot 271 repoURL: https://raw.githubusercontent.com/kubernetes-sigs/azuredisk-csi-driver/master/charts 272 valuesTemplate: |- 273 controller: 274 replicas: 1 275 runOnControlPlane: true 276 windows: 277 useHostProcessContainers: {{ hasKey .Cluster.metadata.labels "cni-windows" }} 278 --- 279 apiVersion: addons.cluster.x-k8s.io/v1alpha1 280 kind: HelmChartProxy 281 metadata: 282 name: cloud-provider-azure-chart 283 namespace: default 284 spec: 285 chartName: cloud-provider-azure 286 clusterSelector: 287 matchLabels: 288 cloud-provider: azure 289 releaseName: cloud-provider-azure-oot 290 repoURL: https://raw.githubusercontent.com/kubernetes-sigs/cloud-provider-azure/master/helm/repo 291 valuesTemplate: | 292 infra: 293 clusterName: {{ .Cluster.metadata.name }} 294 cloudControllerManager: 295 clusterCIDR: {{ .Cluster.spec.clusterNetwork.pods.cidrBlocks | join "," }} 296 logVerbosity: 4 297 --- 298 apiVersion: addons.cluster.x-k8s.io/v1alpha1 299 kind: HelmChartProxy 300 metadata: 301 name: cloud-provider-azure-chart-ci 302 namespace: default 303 spec: 304 chartName: cloud-provider-azure 305 clusterSelector: 306 matchLabels: 307 cloud-provider: azure-ci 308 releaseName: cloud-provider-azure-oot 309 repoURL: https://raw.githubusercontent.com/kubernetes-sigs/cloud-provider-azure/master/helm/repo 310 valuesTemplate: | 311 infra: 312 clusterName: {{ .Cluster.metadata.name }} 313 cloudControllerManager: 314 cloudConfig: ${CLOUD_CONFIG:-"/etc/kubernetes/azure.json"} 315 cloudConfigSecretName: ${CONFIG_SECRET_NAME:-""} 316 clusterCIDR: {{ .Cluster.spec.clusterNetwork.pods.cidrBlocks | join "," }} 317 imageName: "${CCM_IMAGE_NAME:-""}" 318 imageRepository: "${IMAGE_REGISTRY:-""}" 319 imageTag: "${IMAGE_TAG_CCM:-""}" 320 logVerbosity: ${CCM_LOG_VERBOSITY:-4} 321 replicas: ${CCM_COUNT:-1} 322 enableDynamicReloading: ${ENABLE_DYNAMIC_RELOADING:-false} 323 cloudNodeManager: 324 imageName: "${CNM_IMAGE_NAME:-""}" 325 imageRepository: "${IMAGE_REGISTRY:-""}" 326 imageTag: "${IMAGE_TAG_CNM:-""}"