감독자에서 라우팅 가능한 네임스페이스 네트워크를 구성하고 클러스터의 CNI로 antrea-nsx-routed를 지정하여 라우팅 가능한 포드 네트워킹으로 TanzuKubernetesCluster를 생성할 수 있습니다.

라우팅 가능한 포드 네트워킹 정보

antrea 또는 calico CNI 플러그인을 사용하여 Tanzu Kubernetes 클러스터를 프로비저닝하면 기본 포드 네트워크 192.168.0.0/16이 생성됩니다. 이 서브넷은 클러스터 내에서만 고유하고 네트워크에서 라우팅할 수 없는 개인 주소 공간입니다.

TKG v1alpha3 API는 antrea-nsx-routed CNI 플러그인을 사용하여 라우팅 가능한 포드 네트워킹을 지원합니다. 이 네트워크 인터페이스는 TKG 클러스터에 대해 라우팅 가능한 포드 네트워크를 지원하도록 구성된 사용자 지정된 Antrea 플러그인입니다. 클러스터 규격에서 포드 CIDR 블록 필드는 명시적으로 null이어야 합니다. 그래야 IPAM(IP 주소 관리)이 감독자에서 처리됩니다. 아래 예시를 참조하십시오.

라우팅 가능한 포드 네트워킹을 사용하도록 설정하면 클러스터 외부의 클라이언트에서 직접 포드의 주소를 지정할 수 있습니다. 또한 외부 네트워크 서비스 및 서버가 소스 포드를 식별하고 IP 주소를 기반으로 정책을 적용할 수 있도록 포드 IP 주소가 보존됩니다. 지원되는 트래픽 패턴에는 다음이 포함됩니다.
  • TKG 클러스터 포드와 동일한 vSphere 네임스페이스에 있는 vSphere 포드 간에 트래픽이 허용됩니다.
  • TKG 클러스터 포드와 다른 vSphere 네임스페이스에 있는 vSphere 포드 간에 트래픽이 삭제됩니다.
  • 감독자 제어부 노드는 TKG 클러스터 포드에 연결할 수 있습니다.
  • TKG 클러스터 포드는 외부 네트워크에 연결할 수 있습니다.
  • 외부 네트워크가 TKG 클러스터 포드에 연결할 수 없습니다. 클러스터 노드의 DFW(분산 방화벽) 격리 규칙에 따라 트래픽이 삭제됩니다.

라우팅 가능한 포드 네트워크 생성: 감독자 구성

라우팅 가능한 포드 네트워크를 생성하려면 감독자 및 TKG 클러스터에 대한 구성이 필요합니다.
참고: 라우팅 가능한 포드 네트워킹을 사용하려면 NSX로 감독자를 구성해야 합니다. VDS 네트워킹에는 라우팅 가능한 포드를 사용할 수 없습니다.
감독자에서 라우팅 가능한 포드 네트워크를 구성하려면 다음을 수행합니다.
  1. vSphere 네임스페이스를 생성합니다.

    TKG 서비스 클러스터 호스팅을 위한 vSphere 네임스페이스 생성의 내용을 참조하십시오.

  2. 감독자 네트워크 설정 재정의 확인란 옵션을 선택합니다.

    지침은 vSphere 네임스페이스에 대한 워크로드 네트워크 설정 재정의 항목을 참조하십시오.

  3. 다음과 같이 라우팅 가능한 포드 네트워크를 구성합니다.
    필드 설명
    NAT 모드 라우팅 가능한 서브넷을 사용 중이므로 NAT(네트워크 주소 변환)를 사용하지 않도록 설정하려면 이 옵션을 선택 취소합니다.
    네임스페이스 네트워크 CIDR

    네임스페이스 네트워크 CIDR은 vSphere 네임스페이스의 IP 풀로 작동하는 서브넷입니다. 네임스페이스 서브넷 접두사는 해당 IP 풀에서 분할된 후속 CIDR 블록의 크기를 설명합니다.

    이 필드를 IP 주소/비트 형식의 라우팅 가능한 IP 서브넷으로 채웁니다(예: 10.0.0.6/16). NCP는 네트워크에 대해 지정된 IP 블록에서 하나 이상의 IP 풀을 생성합니다.

    최소한 /23 서브넷 크기를 지정해야 합니다. 예를 들어 /23 라우팅 가능한 서브넷을 /28 서브넷 접두사와 함께 지정하면 6 노드 클러스터에 충분한 32개의 서브넷을 가져올 수 있습니다. 접두사가 /28인 /24 서브넷은 2개의 서브넷만 가져오므로 충분하지 않습니다.

    네임스페이스 서브넷 접두사

    네임스페이스 서브넷 접두사는 네임스페이스 네트워크 IP 풀에서 분할된 후속 CIDR 블록의 크기를 설명합니다.

    예를 들어 /28 형식으로 서브넷 접두사를 지정합니다.

  4. 생성을 클릭하여 라우팅 가능한 포드 네트워크를 생성합니다.

라우팅 가능한 포드 네트워크 생성: TKG 클러스터 구성

다음 예제 YAML은 라우팅 가능한 포드 네트워크로 클러스터를 구성하는 방법을 보여줍니다.

클러스터 규격은 antrea-nsx-routed를 라우팅 가능한 포드 네트워킹을 사용하도록 설정하기 위한 CNI로 선언합니다. antrea-nsx-routed가 지정된 경우 NSX-T 네트워킹이 사용되지 않으면 클러스터 프로비저닝이 실패합니다.

CNI가 antrea-nsx-routed로 지정되면 pods.cidrBlock 필드는 비어 있어야 합니다.
apiVersion: run.tanzu.vmware.com/v1alpha3
kind: TanzuKubernetesCluster
metadata:
  name: tkc-routable-pods
  namespace: tkg-cluster-ns
spec:
  topology:
    controlPlane:
      replicas: 3
      vmClass: guaranteed-medium
      storageClass: tkg-storage-policy
      tkr:  
        reference:
          name: v1.25.7---vmware.3-fips.1-tkg.1
    nodePools:
    - name: worker-nodepool-a1
      replicas: 3
      vmClass: guaranteed-large
      storageClass: tkg-storage-policy
      tkr:  
        reference:
          name: v1.25.7---vmware.3-fips.1-tkg.1
  settings:
    storage:
      defaultClass: tkg-storage-policy
    network:
      #antrea-nsx-routed is the required CNI
      cni:
        name: antrea-nsx-routed
      services:
        cidrBlocks: ["10.97.0.0/24"]
      #pods.cidrBlocks must be null (empty)
      pods:
        cidrBlocks:
      serviceDomain: cluster.local