NSX에 하나 이상의 Antrea 컨테이너 클러스터가 등록된 경우에만 Antrea 그룹을 생성할 수 있습니다.

등록된 Antrea 컨테이너 클러스터가 감지되면 NSX Manager는 UI의 그룹 추가 페이지에 Antrea라는 별도의 그룹 유형을 표시합니다. Antrea 그룹을 추가하려면 이 그룹 유형을 선택해야 합니다.

Antrea 그룹에는 고정 IP 주소, 멤버 자격 조건 또는 둘 모두가 포함될 수 있습니다. IP 주소는 포드 또는 서비스 IP 주소일 수 있습니다.

Antrea 그룹에 멤버 자격 조건이 포함된 경우 해당 멤버 자격 조건에 따라 계산되는 유효 멤버는 포드만 될 수 있습니다.

참고:
  • 유효 멤버는 Antrea 그룹이 분산 방화벽 규칙에 사용되는 경우에만 Antrea 그룹에 대해 계산됩니다.

    멤버 자격 조건을 지정된 Antrea 그룹을 추가하지만 분산 방화벽 규칙에서 이러한 그룹을 사용하지 않는 경우 이러한 Antrea 그룹의 유효 멤버는 NSX에서 계산되거나 평가되지 않습니다. 즉, 이러한 Antrea 그룹의 유효 멤버 페이지는 비어 있습니다.

  • Antrea 그룹에 고정 IP 주소를 추가하면 분산 방화벽 규칙에서 사용되는지 여부에 관계없이 유효 멤버가 현재 UI에 표시되지 않습니다.
Antrea 그룹에 멤버 자격 조건을 추가하기 위해 다음 컨테이너 클러스터 개체(멤버 유형)가 현재 지원됩니다.
  • 네임스페이스
  • 서비스
  • 포드

멤버 자격 조건 개요

단일 멤버 자격 기준 또는 여러 기준을 사용하여 Antrea 그룹을 추가할 수 있습니다. 멤버 자격 기준은 하나 이상의 조건으로 구성됩니다. 멤버 자격 기준의 조건은 다음 속성으로 구성됩니다.
  • 컨테이너 클러스터 개체(멤버 유형이라고도 함)
  • 컨테이너 클러스터 개체의 이름 또는 컨테이너 개체에 연결된 태그
  • 태그 연산자 및 값(태그가 사용되는 경우에만)
  • 범위 연산자 및 값(태그가 사용되는 경우에만)
멤버 자격 기준의 조건은 동일한 컨테이너 클러스터 개체를 사용하거나 여러 다른 컨테이너 클러스터 개체를 혼합하여 사용할 수 있습니다. 예를 들어 멤버 자격 기준이 세 가지 조건으로 구성된 경우 처음 두 조건은 포드 개체를 사용할 수 있지만 세 번째 조건은 네임스페이스 개체를 사용할 수 있습니다. 그러나 멤버 자격 기준에 여러 조건을 추가하는 경우 몇 가지 제한 사항이 있습니다. 이 항목의 뒷부분에 나오는 "지원되는 기능 및 지원되지 않는 기능" 섹션을 참조하십시오.

기본적으로 NSX는 멤버 자격 기준의 각 조건 다음에 논리적 AND 연산자를 사용합니다. 다른 논리 연산자는 멤버 자격 기준의 조건을 결합하는 데 사용하도록 지원되지 않습니다.

예:
멤버 자격 조건 설명

기준 1:

Pod Tag Equals App Scope Equals Servers

멤버 자격 기준은 포드 개체를 기준으로 하는 단일 조건으로만 구성됩니다. 여러 조건이 사용되지 않습니다. 이 Antrea 그룹의 유효 멤버에는 App 태그가 있는 모든 포드가 포함됩니다.

기준 2:

Pod Tag Equals App Scope Equals Servers

Pod Tag Equals DB Scope Equals Servers

Pod Tag Equals Web Scope Equals Servers

멤버 자격 기준은 다음 세 가지 조건으로 구성됩니다. 기준의 모든 조건은 포드 개체를 기준으로 합니다. 이 Antrea 그룹의 유효 멤버에는 App, DB 및 Web 태그가 있는 모든 포드가 포함됩니다.

기준 3:

Namespace Name Equals Production

Service Name Equals Cache

멤버 자격 기준은 네임스페이스 및 서비스 개체가 혼합된 두 가지 조건으로 구성됩니다. 이 Antrea 그룹의 유효 멤버에는 운영 네임스페이스에서 캐시라는 서비스와 연결된 모든 포드가 포함됩니다.

OR, AND 연산자를 사용하여 멤버 자격 조건 결합

Antrea 그룹은 여러 멤버 자격 조건을 지원합니다. 기준을 결합하려면 OR 및 AND 연산자를 사용할 수 있습니다. 기본적으로 NSX는 OR 연산자를 선택하여 여러 조건을 결합합니다. AND 연산자는 다음과 같은 경우에만 두 조건 사이에서 지원됩니다.
  • 두 조건 모두 동일한 컨테이너 클러스터 개체를 사용합니다.
  • 두 조건 모두 단일 조건을 사용합니다.
예:
  • 기준 1, 기준 2 및 기준 3은 모두 포드 개체를 기준으로 하며 여러 조건을 포함하지 않습니다. 이 경우 기준 1 및 기준 2를 OR 또는 AND 연산자로 결합할 수 있습니다. 마찬가지로 기준 2 및 기준 3도 OR 또는 AND 연산자로 결합할 수 있습니다.
  • 기준 1은 포드 개체를 기준으로 하지만 기준 2는 서비스 개체와 네임스페이스 개체를 사용하는 두 가지 조건을 사용합니다. 이 경우 기준 1 및 2를 결합하는 데 OR 연산자만 지원됩니다. AND 연산자는 허용되지 않습니다.
  • 기준 1 및 기준 2는 포드 개체를 기준으로 하지만 기준 3는 서비스 개체와 네임스페이스 개체를 사용하는 두 가지 조건을 사용합니다. 이 경우 기준 1 및 기준 2를 AND 또는 OR 연산자로 결합할 수 있습니다. 그러나 기준 2 및 기준 3은 OR 연산자로만 결합할 수 있습니다. AND 연산자는 허용되지 않습니다.

지원되는 기능 및 지원되지 않는 기능

다음 표에는 Antrea 그룹에서 멤버 자격 조건을 추가하는 데 지원되는 컨테이너 클러스터 개체, 태그 연산자 및 범위 연산자가 나열되어 있습니다.
컨테이너 클러스터 개체 개체 특성 태그 연산자 범위 연산자 예제 기준

네임스페이스

이름

다음과 같음:

해당 없음

Namespace Name Equals Production

네임스페이스

태그

다음과 같음:

같지 않음

다음과 같음:

Namespace Tag Equals DB Scope Equals Servers

서비스

이름

지원되지 않음

지원되지 않음

Service Name Equals Cache

포드

태그

다음과 같음:

같지 않음

다음과 같음:

Pod Tag Equals App Scope Equals Servers

  • 다음 태그 연산자는 현재 네임스페이스 및 포드 개체에 대해 지원되지 않습니다.
    • 다음 포함
    • 다음으로 시작
    • 다음으로 끝남
  • 멤버 자격 기준에서 서비스 개체를 기준으로 하는 조건은 네임스페이스 개체의 이름 특성을 기준으로 하는 조건과 결합되어야 합니다. 즉, 서비스 개체만 있는 기준은 허용되지 않습니다.
    예:
    지원됨 지원되지 않음

    기준:

    Service Name Equals My-Service

    Namespace Name Equals Staging

    기준:

    Service Name Equals My-Service

  • 멤버 자격 기준에서 서비스 개체를 기준으로 하는 조건은 포드 개체를 기준으로 하는 조건과 결합되어야 합니다. 그러나 서비스 및 포드 개체를 두 개의 별도 멤버 자격 조건에 추가하고 OR 연산자로 결합할 수 있습니다.
    예:
    지원됨 지원되지 않음

    기준 1: Service Name Equals My-Service

    또는

    기준 2: Pod Tag Equals DB Scope Equals Servers

    기준:

    Service Name Equals My-Service

    Pod Tag Equals DB Scope Equals Servers

  • Antrea 그룹에 고정 멤버를 추가하는 경우 IP 주소만 지원됩니다. 컨테이너 클러스터 개체는 Antrea 그룹에 고정 멤버로 추가할 수 없습니다.
  • Antrea 그룹을 추가할 때 그룹 유형을 Antrea에서 일반 또는 Antrea에서 IP 주소만으로 변경하려고 하면 NSX에서 정보 메시지를 표시합니다. 변경을 확인하면 그룹의 모든 멤버 자격 조건이 손실됩니다. IP 주소만 그룹에서 유지됩니다.

    Antrea 그룹이 NSX에서 인식(저장됨)된 후에는 그룹 유형을 변경할 수 없습니다. 일반IP 주소만 그룹 유형은 흐리게 표시됩니다.

Kubernetes 버전이 1.20 이상일 때의 해결 방법

Antrea 그룹 기준 “네임스페이스 이름이 Value과(와) 같음”은 Kubernetes 버전이 1.21 이상일 때 작동합니다.

Kubernetes 1.21 이상에서는 모든 네임스페이스에 특수 레이블을 자동으로 추가하며 “네임스페이스 이름이 Value과(와) 같음” 조건은 이 특수 레이블을 내부적으로 사용합니다. 하지만 Kubernetes 버전이 1.20 이하인 경우에는 해결 방법이 필요합니다. 이벤트를 생성하는 네임스페이스에 Antrea 컨트롤러 Webhook을 등록해야 합니다. Antrea 컨트롤러 Webhook이 호출되면 Antrea 컨트롤러가 새 네임스페이스에 특수 레이블을 추가하므로 “네임스페이스 이름이 Value과(와) 같음” 조건이 이 레이블을 사용할 수 있습니다. Antrea 컨트롤러 Webhook 등록에 대한 자세한 내용은 Kubernetes API 서버에 YAML 파일 제출의 3단계를 참조하십시오.

참고: Antrea 컨트롤러 Webhook은 Webhook을 등록한 후 생성하는 새 네임스페이스에만 적합합니다. 즉, kube-systemdefault와 같은 기존 네임스페이스에는 특수 레이블이 지정되지 않으며 이러한 네임스페이스에는 “네임스페이스 이름이 Value과(와) 같음” 조건이 작동하지 않습니다.