sigs.k8s.io/cluster-api-provider-azure@v1.14.3/templates/test/ci/cluster-template-prow-aks-clusterclass.yaml (about)

     1  apiVersion: cluster.x-k8s.io/v1beta1
     2  kind: ClusterClass
     3  metadata:
     4    name: ${CLUSTER_CLASS_NAME}
     5    namespace: default
     6  spec:
     7    controlPlane:
     8      ref:
     9        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    10        kind: AzureManagedControlPlaneTemplate
    11        name: ${CLUSTER_NAME}-control-plane
    12    infrastructure:
    13      ref:
    14        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    15        kind: AzureManagedClusterTemplate
    16        name: ${CLUSTER_NAME}
    17    patches:
    18    - definitions:
    19      - jsonPatches:
    20        - op: replace
    21          path: /spec/template/spec/files
    22          valueFrom:
    23            template: |
    24              - contentFrom:
    25                  secret:
    26                    key: worker-node-azure.json
    27                    name: "{{ .builtin.machinePool.infrastructureRef.name }}-azure-json"
    28                owner: root:root
    29                path: /etc/kubernetes/azure.json
    30                permissions: "0644"
    31        selector:
    32          apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
    33          kind: KubeadmConfigTemplate
    34          matchResources:
    35            machinePoolClass:
    36              names:
    37              - default-system
    38              - default-worker
    39      name: workerAzureJsonSecretName
    40    workers:
    41      machinePools:
    42      - class: default-system
    43        template:
    44          bootstrap:
    45            ref:
    46              apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
    47              kind: KubeadmConfigTemplate
    48              name: ${CLUSTER_NAME}-pool0
    49          infrastructure:
    50            ref:
    51              apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    52              kind: AzureManagedMachinePoolTemplate
    53              name: ${CLUSTER_NAME}-pool0
    54      - class: default-worker
    55        template:
    56          bootstrap:
    57            ref:
    58              apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
    59              kind: KubeadmConfigTemplate
    60              name: ${CLUSTER_NAME}-pool1
    61          infrastructure:
    62            ref:
    63              apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    64              kind: AzureManagedMachinePoolTemplate
    65              name: ${CLUSTER_NAME}-pool1
    66  ---
    67  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    68  kind: AzureManagedControlPlaneTemplate
    69  metadata:
    70    name: ${CLUSTER_NAME}-control-plane
    71    namespace: default
    72  spec:
    73    template:
    74      spec:
    75        additionalTags:
    76          buildProvenance: ${BUILD_PROVENANCE}
    77          creationTimestamp: ${TIMESTAMP}
    78          jobName: ${JOB_NAME}
    79        addonProfiles:
    80        - enabled: true
    81          name: azurepolicy
    82        identityRef:
    83          apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    84          kind: AzureClusterIdentity
    85          name: ${CLUSTER_IDENTITY_NAME}
    86        location: ${AZURE_LOCATION}
    87        subscriptionID: ${AZURE_SUBSCRIPTION_ID}
    88        version: ${KUBERNETES_VERSION}
    89  ---
    90  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    91  kind: AzureManagedClusterTemplate
    92  metadata:
    93    name: ${CLUSTER_NAME}
    94    namespace: default
    95  spec:
    96    template:
    97      spec: {}
    98  ---
    99  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   100  kind: AzureManagedMachinePoolTemplate
   101  metadata:
   102    name: ${CLUSTER_NAME}-pool0
   103    namespace: default
   104  spec:
   105    template:
   106      spec:
   107        availabilityZones:
   108        - "1"
   109        - "2"
   110        enableNodePublicIP: false
   111        enableUltraSSD: true
   112        maxPods: 30
   113        mode: System
   114        name: pool0
   115        osDiskSizeGB: 30
   116        osDiskType: Managed
   117        sku: ${AZURE_AKS_NODE_MACHINE_TYPE:=Standard_D2s_v3}
   118  ---
   119  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   120  kind: AzureManagedMachinePoolTemplate
   121  metadata:
   122    name: ${CLUSTER_NAME}-pool1
   123    namespace: default
   124  spec:
   125    template:
   126      spec:
   127        enableNodePublicIP: false
   128        kubeletConfig:
   129          allowedUnsafeSysctls:
   130          - net.*
   131          - kernel.msg*
   132          containerLogMaxFiles: 50
   133          containerLogMaxSizeMB: 500
   134          cpuCfsQuota: true
   135          cpuCfsQuotaPeriod: 110ms
   136          cpuManagerPolicy: static
   137          failSwapOn: false
   138          imageGcHighThreshold: 70
   139          imageGcLowThreshold: 50
   140          podMaxPids: 2048
   141        linuxOSConfig:
   142          swapFileSizeMB: 1500
   143          sysctls:
   144            fsAioMaxNr: 65536
   145            fsFileMax: 709620
   146            fsInotifyMaxUserWatches: 1048576
   147            fsNrOpen: 1048576
   148            kernelThreadsMax: 55601
   149            netCoreNetdevMaxBacklog: 1000
   150            netCoreOptmemMax: 20480
   151            netCoreRmemDefault: 212992
   152            netCoreRmemMax: 212992
   153            netCoreSomaxconn: 16384
   154            netCoreWmemDefault: 212992
   155            netCoreWmemMax: 212992
   156            netIpv4IPLocalPortRange: 32768 60999
   157            netIpv4NeighDefaultGcThresh1: 4096
   158            netIpv4NeighDefaultGcThresh2: 8192
   159            netIpv4NeighDefaultGcThresh3: 16384
   160            netIpv4TCPFinTimeout: 60
   161            netIpv4TCPKeepaliveProbes: 9
   162            netIpv4TCPKeepaliveTime: 7200
   163            netIpv4TCPMaxSynBacklog: 16384
   164            netIpv4TCPMaxTwBuckets: 32768
   165            netIpv4TCPTwReuse: false
   166            netIpv4TCPkeepaliveIntvl: 75
   167            netNetfilterNfConntrackBuckets: 65536
   168            netNetfilterNfConntrackMax: 131072
   169            vmMaxMapCount: 65530
   170            vmSwappiness: 60
   171            vmVfsCachePressure: 100
   172          transparentHugePageDefrag: madvise
   173          transparentHugePageEnabled: always
   174        maxPods: 64
   175        mode: User
   176        name: pool1
   177        nodeLabels:
   178          type: shared
   179        osDiskSizeGB: 40
   180        osDiskType: Ephemeral
   181        scaleSetPriority: Regular
   182        sku: ${AZURE_AKS_NODE_MACHINE_TYPE:=Standard_D2s_v3}
   183        taints:
   184        - effect: NoSchedule
   185          key: type
   186          value: shared
   187  ---
   188  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   189  kind: AzureClusterIdentity
   190  metadata:
   191    labels:
   192      clusterctl.cluster.x-k8s.io/move-hierarchy: "true"
   193    name: ${CLUSTER_IDENTITY_NAME}
   194    namespace: default
   195  spec:
   196    allowedNamespaces: {}
   197    clientID: ${AZURE_CLIENT_ID}
   198    clientSecret:
   199      name: ${AZURE_CLUSTER_IDENTITY_SECRET_NAME}
   200      namespace: ${AZURE_CLUSTER_IDENTITY_SECRET_NAMESPACE}
   201    tenantID: ${AZURE_TENANT_ID}
   202    type: ServicePrincipal
   203  ---
   204  apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
   205  kind: KubeadmConfigTemplate
   206  metadata:
   207    name: ${CLUSTER_NAME}-pool0
   208    namespace: default
   209  spec:
   210    template:
   211      spec:
   212        files:
   213        - contentFrom:
   214            secret:
   215              key: worker-node-azure.json
   216              name: replace_me
   217          owner: root:root
   218          path: /etc/kubernetes/azure.json
   219          permissions: "0644"
   220        joinConfiguration:
   221          nodeRegistration:
   222            kubeletExtraArgs:
   223              cloud-provider: external
   224            name: '{{ ds.meta_data["local_hostname"] }}'
   225        preKubeadmCommands: []
   226  ---
   227  apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
   228  kind: KubeadmConfigTemplate
   229  metadata:
   230    name: ${CLUSTER_NAME}-pool1
   231    namespace: default
   232  spec:
   233    template:
   234      spec:
   235        files:
   236        - contentFrom:
   237            secret:
   238              key: worker-node-azure.json
   239              name: replace_me
   240          owner: root:root
   241          path: /etc/kubernetes/azure.json
   242          permissions: "0644"
   243        joinConfiguration:
   244          nodeRegistration:
   245            kubeletExtraArgs:
   246              cloud-provider: external
   247            name: '{{ ds.meta_data["local_hostname"] }}'
   248        preKubeadmCommands: []
   249  ---
   250  apiVersion: cluster.x-k8s.io/v1beta1
   251  kind: Cluster
   252  metadata:
   253    name: ${CLUSTER_NAME}
   254    namespace: default
   255  spec:
   256    clusterNetwork:
   257      pods:
   258        cidrBlocks:
   259        - 192.168.0.0/16
   260    topology:
   261      class: default
   262      version: ${KUBERNETES_VERSION}
   263      workers:
   264        machinePools:
   265        - class: default-system
   266          name: mp-0
   267          replicas: 1
   268        - class: default-worker
   269          name: mp-1
   270          replicas: 1