기본 Antrea CNI 대신 Calico CNI를 사용하여 v1beta1 클러스터를 프로비저닝하려면 이 예시를 참조하십시오. 이 예시에서는 클러스터에 대해 하나 이상의 TKR 패키지를 사용자 지정하는 방법에 대한 지침도 참조할 수도 있습니다.
v1beta1 예시: 사용자 지정 CNI를 사용하는 클러스터
다음 예시 YAML은 v1beta1 API를 사용하여 사용자 지정 CNI를 사용하는 클러스터를 프로비저닝하는 방법을 보여줍니다. 이 예시는 v1beta1 예: 기본 클러스터에 기반합니다.
tanzukubernetescluster
ClusterClass에 정의된 대로 기본 CNI는 Antrea입니다. 지원되는 다른 CNI는 Calico입니다. CNI를 Antrea에서 Calico로 변경하려면 CalicoConfig
사용자 지정 리소스를 참조하는 ClusterBootstrap
사용자 지정 리소스를 생성하여 기본 CNI를 오버로드합니다.
ClusterBootstrap
사용자 지정 리소스에는 TKR에서 가져온 값과 함께
spec.cni.refName
블록이 포함됩니다. (이 필드에 대한 값을 가져오는 방법에 대한 지침은
TKr 패키지 항목을 참조하십시오.)
ClusterBootstrap
값은 ClusterClass의 기본값을 덮어쓰며 클러스터가 생성될 때 CAPI(Cluster API)에 의해 선택됩니다.
ClusterBootstrap
사용자 지정 리소스의 이름은
Cluster
와 동일해야 합니다.
참고: 예시는 단일 YAML 파일로 제공되지만 개별 파일로 분리할 수 있습니다. 이렇게 하려면 먼저
CalicoConfig
사용자 지정 리소스를 생성한 다음
ClusterBootstrap
,
cluster-calico
클러스터 순으로 생성해야 합니다.
--- apiVersion: cni.tanzu.vmware.com/v1alpha1 kind: CalicoConfig metadata: name: cluster-calico spec: calico: config: vethMTU: 0 --- apiVersion: run.tanzu.vmware.com/v1alpha3 kind: ClusterBootstrap metadata: annotations: tkg.tanzu.vmware.com/add-missing-fields-from-tkr: v1.23.8---vmware.2-tkg.2-zshippable name: cluster-calico spec: cni: refName: calico.tanzu.vmware.com.3.22.1+vmware.1-tkg.2-zshippable valuesFrom: providerRef: apiGroup: cni.tanzu.vmware.com kind: CalicoConfig name: cluster-calico --- apiVersion: cluster.x-k8s.io/v1beta1 kind: Cluster metadata: name: cluster-calico 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.2-tkg.2-zshippable controlPlane: replicas: 3 workers: machineDeployments: - class: node-pool name: node-pool-1 replicas: 3 variables: - name: vmClass value: guaranteed-medium - name: storageClass value: tkg2-storage-policy