sigs.k8s.io/cluster-api-provider-azure@v1.14.3/templates/cluster-template-ipv6.yaml (about)

     1  apiVersion: cluster.x-k8s.io/v1beta1
     2  kind: Cluster
     3  metadata:
     4    name: ${CLUSTER_NAME}
     5    namespace: default
     6  spec:
     7    clusterNetwork:
     8      pods:
     9        cidrBlocks:
    10        - 2001:1234:5678:9a40::/58
    11      services:
    12        cidrBlocks:
    13        - fd00::/108
    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    identityRef:
    30      apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    31      kind: AzureClusterIdentity
    32      name: ${CLUSTER_IDENTITY_NAME}
    33    location: ${AZURE_LOCATION}
    34    networkSpec:
    35      subnets:
    36      - cidrBlocks:
    37        - 10.0.0.0/16
    38        - 2001:1234:5678:9abc::/64
    39        name: control-plane-subnet
    40        role: control-plane
    41      - cidrBlocks:
    42        - 10.1.0.0/16
    43        - 2001:1234:5678:9abd::/64
    44        name: node-subnet
    45        role: node
    46      vnet:
    47        cidrBlocks:
    48        - 10.0.0.0/8
    49        - 2001:1234:5678:9a00::/56
    50        name: ${AZURE_VNET_NAME:=${CLUSTER_NAME}-vnet}
    51    resourceGroup: ${AZURE_RESOURCE_GROUP:=${CLUSTER_NAME}}
    52    subscriptionID: ${AZURE_SUBSCRIPTION_ID}
    53  ---
    54  apiVersion: controlplane.cluster.x-k8s.io/v1beta1
    55  kind: KubeadmControlPlane
    56  metadata:
    57    name: ${CLUSTER_NAME}-control-plane
    58    namespace: default
    59  spec:
    60    kubeadmConfigSpec:
    61      clusterConfiguration:
    62        apiServer:
    63          extraArgs:
    64            bind-address: '::'
    65            cloud-provider: external
    66          timeoutForControlPlane: 20m
    67        controllerManager:
    68          extraArgs:
    69            allocate-node-cidrs: "true"
    70            bind-address: '::'
    71            cloud-provider: external
    72            cluster-cidr: 2001:1234:5678:9a40::/58
    73            cluster-name: ${CLUSTER_NAME}
    74            configure-cloud-routes: "true"
    75        etcd:
    76          local:
    77            dataDir: /var/lib/etcddisk/etcd
    78            extraArgs:
    79              quota-backend-bytes: "8589934592"
    80        scheduler:
    81          extraArgs:
    82            bind-address: '::'
    83      diskSetup:
    84        filesystems:
    85        - device: /dev/disk/azure/scsi1/lun0
    86          extraOpts:
    87          - -E
    88          - lazy_itable_init=1,lazy_journal_init=1
    89          filesystem: ext4
    90          label: etcd_disk
    91        - device: ephemeral0.1
    92          filesystem: ext4
    93          label: ephemeral0
    94          replaceFS: ntfs
    95        partitions:
    96        - device: /dev/disk/azure/scsi1/lun0
    97          layout: true
    98          overwrite: false
    99          tableType: gpt
   100      files:
   101      - contentFrom:
   102          secret:
   103            key: control-plane-azure.json
   104            name: ${CLUSTER_NAME}-control-plane-azure-json
   105        owner: root:root
   106        path: /etc/kubernetes/azure.json
   107        permissions: "0644"
   108      initConfiguration:
   109        localAPIEndpoint:
   110          advertiseAddress: '::'
   111          bindPort: 6443
   112        nodeRegistration:
   113          kubeletExtraArgs:
   114            cloud-provider: external
   115            cluster-dns: fd00::10
   116          name: '{{ ds.meta_data["local_hostname"] }}'
   117      joinConfiguration:
   118        controlPlane:
   119          localAPIEndpoint:
   120            advertiseAddress: '::'
   121            bindPort: 6443
   122        nodeRegistration:
   123          kubeletExtraArgs:
   124            cloud-provider: external
   125            cluster-dns: fd00::10
   126          name: '{{ ds.meta_data["local_hostname"] }}'
   127      mounts:
   128      - - LABEL=etcd_disk
   129        - /var/lib/etcddisk
   130      postKubeadmCommands: []
   131      preKubeadmCommands: []
   132    machineTemplate:
   133      infrastructureRef:
   134        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   135        kind: AzureMachineTemplate
   136        name: ${CLUSTER_NAME}-control-plane
   137    replicas: ${CONTROL_PLANE_MACHINE_COUNT:=1}
   138    version: ${KUBERNETES_VERSION}
   139  ---
   140  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   141  kind: AzureMachineTemplate
   142  metadata:
   143    name: ${CLUSTER_NAME}-control-plane
   144    namespace: default
   145  spec:
   146    template:
   147      spec:
   148        dataDisks:
   149        - diskSizeGB: 256
   150          lun: 0
   151          nameSuffix: etcddisk
   152        enableIPForwarding: true
   153        osDisk:
   154          diskSizeGB: 128
   155          osType: Linux
   156        sshPublicKey: ${AZURE_SSH_PUBLIC_KEY_B64:=""}
   157        vmSize: ${AZURE_CONTROL_PLANE_MACHINE_TYPE}
   158  ---
   159  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   160  kind: AzureClusterIdentity
   161  metadata:
   162    labels:
   163      clusterctl.cluster.x-k8s.io/move-hierarchy: "true"
   164    name: ${CLUSTER_IDENTITY_NAME}
   165    namespace: default
   166  spec:
   167    allowedNamespaces: {}
   168    clientID: ${AZURE_CLIENT_ID}
   169    clientSecret:
   170      name: ${AZURE_CLUSTER_IDENTITY_SECRET_NAME}
   171      namespace: ${AZURE_CLUSTER_IDENTITY_SECRET_NAMESPACE}
   172    tenantID: ${AZURE_TENANT_ID}
   173    type: ServicePrincipal
   174  ---
   175  apiVersion: cluster.x-k8s.io/v1beta1
   176  kind: MachineDeployment
   177  metadata:
   178    name: ${CLUSTER_NAME}-md-0
   179    namespace: default
   180  spec:
   181    clusterName: ${CLUSTER_NAME}
   182    replicas: ${WORKER_MACHINE_COUNT:=2}
   183    selector:
   184      matchLabels: null
   185    template:
   186      spec:
   187        bootstrap:
   188          configRef:
   189            apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
   190            kind: KubeadmConfigTemplate
   191            name: ${CLUSTER_NAME}-md-0
   192        clusterName: ${CLUSTER_NAME}
   193        infrastructureRef:
   194          apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   195          kind: AzureMachineTemplate
   196          name: ${CLUSTER_NAME}-md-0
   197        version: ${KUBERNETES_VERSION}
   198  ---
   199  apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
   200  kind: AzureMachineTemplate
   201  metadata:
   202    name: ${CLUSTER_NAME}-md-0
   203    namespace: default
   204  spec:
   205    template:
   206      spec:
   207        enableIPForwarding: true
   208        osDisk:
   209          diskSizeGB: 30
   210          managedDisk:
   211            storageAccountType: Premium_LRS
   212          osType: Linux
   213        sshPublicKey: ${AZURE_SSH_PUBLIC_KEY_B64:=""}
   214        vmSize: ${AZURE_NODE_MACHINE_TYPE}
   215  ---
   216  apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
   217  kind: KubeadmConfigTemplate
   218  metadata:
   219    name: ${CLUSTER_NAME}-md-0
   220    namespace: default
   221  spec:
   222    template:
   223      spec:
   224        clusterConfiguration:
   225          apiServer:
   226            extraArgs:
   227              bind-address: '::'
   228          controllerManager:
   229            extraArgs:
   230              bind-address: '::'
   231          scheduler:
   232            extraArgs:
   233              bind-address: '::'
   234        files:
   235        - contentFrom:
   236            secret:
   237              key: worker-node-azure.json
   238              name: ${CLUSTER_NAME}-md-0-azure-json
   239          owner: root:root
   240          path: /etc/kubernetes/azure.json
   241          permissions: "0644"
   242        joinConfiguration:
   243          nodeRegistration:
   244            kubeletExtraArgs:
   245              cloud-provider: external
   246              cluster-dns: '[fd00::10]'
   247            name: '{{ ds.meta_data["local_hostname"] }}'