AKS 엔터프라이즈급 확장성

AKS는 인프라 요구 사항에 따라 확장 및 축소 될 수 있습니다. (더 많은 용량 필요), GPU와 같은 특수 기능이 포함 된 노드 풀을 추가 하거나, 응용 프로그램 요구 사항을 충족 하는 경우, AKS 응용 프로그램에 대 한 동시 연결 수 및 비율, 요청 수, 백 엔드 대기 시간 등의 여러 요소가 있습니다.

AKS에 대 한 가장 일반적인 확장성 옵션은 클러스터 autoscaler (CPU 및 메모리 사용률에 따라 노드를 자동으로 추가/제거) 또는 CPU 및 메모리 사용률 및 고급 메트릭에 따라 확장 및 축소 하기 위해 응용 프로그램에 대 한 HPA (수평 pod autoscaler)입니다.

설계 고려 사항

고려해 야 할 몇 가지 중요 한 요소는 다음과 같습니다.

  • 응용 프로그램에 대 한 신속한 확장성은 응용 프로그램에 대 한 요구 사항입니다 (시간에 대기 하지 않음).

    • Pod를 신속 하 게 프로 비전 하기 위해 가상 노드를 사용 하려면 Linux nodes/pod 에서만 지원 됩니다.
  • 워크 로드가 시간이 중요 하지 않으며 중단을 처리할 수 있나요? 지점 vm 사용 고려

  • 규모를 확장할 수 있는 기본 인프라 (네트워크 플러그 인, IP 범위, 구독 제한, 할당량 등)가 있나요?

  • 확장성 자동화

  • 다중 영역 및 노드 풀로 확장성 고려

    • 노드 풀을 만들 때 AKS를 사용 하 여 가용성 영역를 설정 하는 것이 좋습니다.
    • 여러 노드 풀을 사용 하 여 요구 사항이 서로 다른 응용 프로그램을 지원 하는 것이 좋습니다.
    • 클러스터 autoscaler를 사용 하 여 노드 풀의 크기를 조정 합니다.
    • 사용자 노드 풀을 0으로 확장할 수 있습니다. 제한 사항을참조 하세요.

디자인 권장 사항

디자인에 대 한 다음 모범 사례를 따르세요.

  • 자동 크기 조정, 다중 노드 풀 및 Windows 노드 풀 지원을 포함 하는 시나리오에 필요한 가상 머신 확장 집합을 사용 합니다.
    • Azure Portal 또는 Azure CLI를 사용 하 여 확장성을 수동으로 설정 하거나 편집 하지 마십시오.
  • 빠른 버스트 자동 크기 조정이 필요한 경우 빠르고 무한 확장성 및 초당 청구를 위해 Azure Container Instances 및 가상 노드 를 사용 하 여 AKS 클러스터에서 버스트 하도록 선택 합니다.
  • VM 기반 작업자 노드를 사용 하 여 예측 가능한 확장성을 위해 클러스터 autoscaler 를 사용 하 고 0으로 크기를 조정 합니다.
  • 응용 프로그램 요구를 충족 하도록 클러스터 autoscaler 를 사용 하도록 설정 합니다.
    • 여러 노드 풀에 자동 크기 조정을 사용 하도록 설정할 수 있습니다.
  • HPA (수평 pod autoscaler) 를 사용 하 여 응용 프로그램의 사용 시간을 완화 합니다.
    • 모든 컨테이너와 pod에는 리소스 요청 및 제한이 정의 되어 있어야 합니다.
    • HPA는 관찰 된 리소스 제한 CPU/메모리 또는 사용자 지정 메트릭에 따라 pod 수를 자동으로 조정 합니다.
  • 클러스터 및 작업 사용률을 모니터링 하는 컨테이너 및 라이브 모니터링 에 대 한 Azure Monitor 를 사용 하도록 설정 합니다.
  • 응용 프로그램의 리소스 요구 사항이 서로 다른 경우 여러 노드 풀을 사용 합니다.
  • 중단 및 제거를 처리할 수 있는 시간이 중요 하지 않은 작업에 대 한 VM 기반 노드 풀 을 고려 합니다.