Fare riferimento a questo esempio per eseguire il provisioning di un cluster v1beta1 con impostazioni personalizzate.
Esempio v1beta1: cluster personalizzato basato su ClusterClass predefinita
Il file YAML di esempio seguente illustra come utilizzare l'API v1beta1 per eseguire il provisioning di un cluster con diverse impostazioni personalizzate utilizzando le variabili. Questo esempio si basa su Esempio v1beta1: cluster predefinito.
L'esempio utilizza le variabili per i volumi persistenti sui nodi di lavoro per i componenti soggetti ad alta rotazione come containerd e kubelet. Inoltre, la variabile
vmClass
viene dichiarata due volte. La variabile
vmClass
dichiarata in
workers.machineDeployments
sovrascrive la variabile
vmClass
dichiarata globalmente in modo che i nodi di lavoro vengano sottoposti a provisioning con una classe di macchine virtuali più grande.
apiVersion: cluster.x-k8s.io/v1beta1 kind: Cluster metadata: name: cluster-custom namespace: tkg-cluster-ns spec: clusterNetwork: services: cidrBlocks: ["198.51.100.0/12"] pods: cidrBlocks: ["192.2.0.0/16"] serviceDomain: "cluster.local" topology: class: tanzukubernetescluster version: v1.25.7---vmware.3-fips.1-tkg.1 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: tkg-storage-profile - name: defaultStorageClass value: tkg-storage-profile - name: nodePoolVolumes value: - name: containerd capacity: storage: 50Gi mountPath: /var/lib/containerd storageClass: tkg-storage-profile - name: kubelet capacity: storage: 50Gi mountPath: /var/lib/kubelet storageClass: tkg-storage-profile