v1beta1 API를 사용하여 라우팅 가능한 포드 네트워크가 있는 클러스터를 생성할 수 있습니다. 이 작업은 기본 클러스터를 AntreaConfig
및 VSphereCPIConfig
에 대한 사용자 지정 구성으로 재정의하여 수행합니다.
v1beta1 API를 사용한 라우팅 가능한 포드 네트워킹 정보
다음 예시 YAML은 v1beta1 API를 사용하여 Antrea RoutablePod 기능을 사용하도록 설정된 클러스터를 프로비저닝하는 방법을 보여줍니다. 이 예시는 v1beta1 예시: 기본 클러스터에 기반합니다.
RoutablePod 기능을 사용하도록 설정하려면 클러스터에 특수 구성이 포함된 AntreaConfig
및 VSphereCPIConfig
가 필요합니다.
AntreaConfig
는 trafficEncapMode: noEncap
및 noSNAT: true
를 설정해야 합니다.
VSphereCPIConfig
는
antreaNSXPodRoutingEnabled: true
,
mode: vsphereParavirtualCPI
및 다음을 설정해야 합니다.
tlsCipherSuites: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
AntreaConfig
의 이름은 <cluster-name>-antrea-package
형식이어야 합니다. VSphereCPIConfig
의 이름은 <cluster-name>-vsphere-cpi-package
형식이어야 합니다.
구성 파일이 생성되면 구성 파일을 참조하는 클러스터 규격 개체를 생성합니다. 클러스터를 생성하는 동안 구성 파일은 클러스터를 프로비저닝하고 기본 구성을 덮어쓰는 데 사용됩니다.
라우팅 가능한 포드 네트워크 생성: 감독자 구성
- 새 vSphere 네임스페이스를 생성합니다.
TKG 서비스 클러스터 호스팅을 위한 vSphere 네임스페이스 생성의 내용을 참조하십시오.
- 감독자 네트워크 설정 재정의 확인란 옵션을 선택합니다.
지침은 vSphere 네임스페이스에 대한 워크로드 네트워크 설정 재정의 항목을 참조하십시오.
- 다음과 같이 라우팅 가능한 포드 네트워크를 구성합니다.
필드 설명 NAT 모드 NAT(네트워크 주소 변환)를 사용하지 않도록 설정하려면 이 옵션을 선택 취소합니다. 네임스페이스 네트워크 이 필드를 IP 주소/비트 형식의 라우팅 가능한 IP 서브넷으로 채웁니다(예: 10.0.0.6/16).
NCP는 네트워크에 대해 지정된 IP 블록에서 하나 이상의 IP 풀을 생성합니다.
최소한 /23 서브넷 크기를 지정해야 합니다. 예를 들어 /23 라우팅 가능한 서브넷을 /28 서브넷 접두사와 함께 지정하면 6 노드 클러스터에 충분한 32개의 서브넷을 가져올 수 있습니다. 접두사가 /28인 /24 서브넷은 2개의 서브넷만 가져오므로 충분하지 않습니다.
주의: 추가하는 라우팅 가능한 IP 서브넷이 클러스터 노드의 IP 주소를 할당하는 서비스 CIDR과 겹치지 않는지 확인합니다. 에서 서비스 CIDR을 확인할 수 있습니다.네임스페이스 서브넷 접두사 예를 들어 /28 형식으로 서브넷 접두사를 지정합니다.
서브넷 접두사는 네임스페이스 네트워크에서 각 노드의 포드 서브넷을 분할하는 데 사용됩니다.
- 생성을 클릭하여 라우팅 가능한 포드 네트워크를 생성합니다.
라우팅 가능한 포드 네트워크 생성: TKG 클러스터 구성
다음 예시 YAML은 라우팅 가능한 포드 네트워크로 v1beta1 클러스터를 구성하는 방법을 보여줍니다.
spec.clusterNetwork.pod
섹션을 제거해야 합니다. 포드 IP 주소는 cloud-provider-vsphere에 의해 할당되기 때문입니다.
AntreaConfig
및
VSphereCPIConfig
사용자 지정 리소스를 생성한 다음, target-cluster 클러스터 순으로 생성해야 합니다.
--- apiVersion: cni.tanzu.vmware.com/v1alpha1 kind: AntreaConfig metadata: name: target-cluster-antrea-package spec: antrea: config: defaultMTU: "" disableUdpTunnelOffload: false featureGates: AntreaPolicy: true AntreaProxy: true AntreaTraceflow: true Egress: false EndpointSlice: true FlowExporter: false NetworkPolicyStats: false NodePortLocal: false noSNAT: true tlsCipherSuites: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_256_GCM_SHA384 trafficEncapMode: noEncap --- apiVersion: cpi.tanzu.vmware.com/v1alpha1 kind: VSphereCPIConfig metadata: name: target-cluster-vsphere-cpi-package spec: vsphereCPI: antreaNSXPodRoutingEnabled: true insecure: false mode: vsphereParavirtualCPI tlsCipherSuites: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 --- apiVersion: cluster.x-k8s.io/v1beta1 kind: Cluster metadata: name: target-cluster spec: clusterNetwork: services: cidrBlocks: ["198.51.100.0/12"] 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: - name: vmClass value: guaranteed-medium - name: storageClass value: tkg2-storage-policy