Consulte este exemplo para provisionar um cluster v1beta1 com configurações personalizadas.
Exemplo de v1beta1: cluster personalizado
O exemplo de YAML a seguir demonstra como usar a API v1beta1 para provisionar um Cluster com várias configurações personalizadas usando variáveis. Este exemplo se baseia no Exemplo de v1beta1: cluster padrão.
O exemplo usa variáveis para volumes persistentes para controlar os nós de plano e de trabalho para componentes de alta rotatividade, como etcd, containerd e kubelet. Além disso, a variável vmClass
é declarada duas vezes. A variável is vmClass
declarada em workers.machineDeployments
substitui a variável vmClass
declarada globalmente para que os nós do trabalhador sejam provisionados com uma classe de VM maior.
apiVersion: cluster.x-k8s.io/v1beta1 kind: Cluster metadata: name: cluster-custom namespace: tkg2-cluster-ns spec: clusterNetwork: services: cidrBlocks: ["198.51.100.0/12"] pods: cidrBlocks: ["192.0.2.0/16"] serviceDomain: "cluster.local" topology: class: tanzukubernetescluster version: v1.23.8+vmware.1-tkg.2-zshippable controlPlane: replicas: 3 workers: machineDeployments: - class: node-pool name: node-pool-1 replicas: 3 variables: overrides: - name: vmClass value: guaranteed-xlarge variables: - name: vmClass value: guaranteed-medium - name: storageClass value: tkg2-storage-profile - name: defaultStorageClass value: tkg2-storage-profile - name: controlPlaneVolumes value: - name: etcd capacity: storage: 4Gi mountPath: /var/lib/etcd storageClass: tkg2-storage-profile - name: nodePoolVolumes value: - name: containerd capacity: storage: 50Gi mountPath: /var/lib/containerd storageClass: tkg2-storage-profile - name: kubelet capacity: storage: 50Gi mountPath: /var/lib/kubelet storageClass: tkg2-storage-profile