내용으로 건너뛰기

Amazon EKS에서 VPC 서브넷의 IP 주소를 사용하도록 Amazon VPC CNI 플러그인을 구성하려면 어떻게 해야 하나요?

3분 분량
0

Amazon Virtual Private Cloud(VPC) Container Network Interface(CNI) 플러그인을 구성하여 Amazon Elastic Kubernetes Service(Amazon EKS)와 함께 VPC 서브넷에서 IP 주소 제어 번호를 사용하도록 구성하고 싶습니다.

간략한 설명

Amazon VPC CNI의 기본 구성 요소 중 하나는 노드에 IP 주소를 할당하는 L-IPAM 대몬입니다.

노드에서 새 포드가 예약된 경우, 컨테이너 런타임은 CNI 바이너리를 호출합니다. CNI 바이너리는 L-IPAMD를 호출하여 새 포드의 IP 주소를 가져옵니다. 그런 다음 포드는 인스턴스에 연결된 탄력적 네트워크 인터페이스와 IP 주소를 추적합니다.

특정 구성 변수를 사용하여 유지 관리되는 네트워크 인터페이스 및 IP 주소 수를 제어할 수 있습니다. 자세한 내용을 보려면 GitHub 웹사이트에서 WARM_ENI_TARGET, WARM_IP_TARGET과 MINIMUM_IP_TARGETWARM_PREFIX_TARGET, WARM_IP_TARGET과 MINIMUM_IP_TARGET을 참조하세요.

해결 방법

다음은 네트워크 인터페이스 및 IP 주소의 유지 관리를 제어하는 각 구성 변수에 대한 모범 사례입니다.

WARM_ENI_TARGET

WARM_ENI_TARGET 변수를 설정하여 L-IPAMD가 사용 가능한 탄력적 네트워크 인터페이스의 수를 결정합니다. 이는 노드에서 스케줄링될 때 포드에 IP 주소가 즉시 할당되도록 하기 위한 것입니다.

다음은 WARM_ENI_TARGET에 대한 모범 사례입니다.

  • 워커 노드 인스턴스 유형과 인터페이스당 네트워크 인터페이스 및 프라이빗 IPv4 주소의 최대 수를 확인합니다. 이렇게 하면 사용 가능한 서브넷 IP 주소가 고갈되는 것을 방지할 수 있습니다.
  • 애플리케이션이 크게 확장될 것으로 예상되는 경우, 새로 예약된 포드를 빠르게 수용하기 위해 WARM_ENI_TARGET을 사용합니다.

WARM_IP_TARGET

WARM_IP_TARGET 변수를 사용하여 L-IPAMD의 웜 풀에 항상 정의된 수의 사용 가능한 IP 주소가 있는지 확인하세요.

다음은 WARM_IP_TARGET에 대한 모범 사례입니다.

  • 생산성이 낮은 클러스터의 경우, WARM_IP_TARGET을 사용하세요. 즉, 필요한 수의 IP 주소만 네트워크 인터페이스에 할당됩니다.
  • 큰 클러스터나 포드 변동이 높은 클러스터에는 이 설정을 사용하지 마세요. 이 설정은 Amazon Elastic Compute Cloud(Amazon EC2) API에 대한 추가 호출을 유발하고 요청을 제한할 수 있습니다. WARM_IP_TARGET을 사용할 때는 MINIMUM_IP_TARGET을 설정하는 것이 가장 좋습니다.
  • MINIMUM_IP_TARGET을 설정할 때는 WARM_IP_TARGET을 0보다 크게 설정하는 것이 가장 좋습니다.

MINIMUM_IP_TARGET

노드가 생성될 때 최소한의 IP 주소가 할당되도록 하려면 MINIMUM_IP_TARGET을 사용하세요. 이 변수는 일반적으로 WARM_IP_TARGET 변수와 함께 사용됩니다.

다음은 MINIMUM_IP_TARGET에 대한 모범 사례입니다.

  • 노드당 실행할 최소 포드 수를 알고 있다면, MINIMUM_IP_TARGET을 사용합니다. 이렇게 하면 필요한 수의 IP 주소가 할당됩니다.
  • 향후 포드에 사용할 수 있는 IP 주소가 노드에 있는지 확인하려면 이 변수를 WARM_IP_TARGET으로 설정합니다.

WARM_PREFIX_TARGET

인스턴스의 네트워크 인터페이스에 항상 정의된 수의 접두사(/28 CIDR 블록)가 추가되도록 하려면 WARM_PREFIX_TARGET 변수를 사용하세요. CNI 버전 1.9.0 이상에서만 WARM_PREFIX_TARGET을 사용할 수 있으며, Amazon VPC CNI IP 주소 접두사 할당 기능을 활성화해야 합니다.

다음은 WARM_PREFIX_TARGET에 대한 모범 사례입니다.

  • IP 주소 접두사 할당을 사용하는 경우 WARM_PREFIX_TARGET 변수가 1보다 큰 값으로 설정되어 있는지 확인합니다. 0으로 설정하면 다음과 같은 오류가 발생합니다.

    "Error: Setting WARM_PREFIX_TARGET = 0 is not supported while WARM_IP_TARGET/MINIMUM_IP_TARGET is not set. Please configure either one of the WARM_{PREFIX/IP}_TARGET or MINIMUM_IP_TARGET env variables."

  • 더 작은 서브넷의 경우, WARM_IP_TARGETWARM_PREFIX_TARGET과 함께 사용하세요. 이렇게 하면 사용 가능한 IP 주소를 고갈시킬 수 있는 접두사를 너무 많이 할당하지 않아도 됩니다.

이러한 구성 변수가 IP 주소 사용률에 미치는 영향을 자세히 알아보려면 GitHub 웹 사이트의 CNI 구성 변수를 참조하세요.

AWS 공식업데이트됨 2년 전