sigs.k8s.io/cluster-api-provider-azure@v1.14.3/test/e2e/data/infrastructure-azure/v1beta1/cluster-template-kcp-remediation.yaml (about)

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