Amazon ECS Managed Instances 인스턴스 선택 모범 사례

Amazon ECS Managed Instances 인스턴스 선택 모범 사례

Amazon ECS Managed Instances 워크로드에 적합한 인스턴스 구성을 선택하는 것은 성능, 비용, 리소스 활용도를 최적화하는 데 매우 중요해요. Amazon ECS는 애플리케이션 요구 사항과 비용 효율성의 균형을 맞출 수 있는 유연한 인스턴스 선택 옵션을 제공해요.

출처: 문서

본문

Amazon ECS Managed Instances 워크로드에 적합한 인스턴스 구성을 선택하는 것은 성능, 비용, 리소스 활용도를 최적화하는 데 매우 중요해요. Amazon ECS는 애플리케이션 요구 사항과 비용 효율성의 균형을 맞출 수 있는 유연한 인스턴스 선택 옵션을 제공해요. 다음 모범 사례는 컨테이너화된 워크로드의 인스턴스 선택에 대해 정보에 입각한 결정을 내리는 데 도움을 줘요.

기본 인스턴스 선택 사용하기 instanceRequirements 를 지정하지 않으면 Amazon ECS는 다음 태스크 정의 및 서비스 파라미터 요구 사항을 충족하는 가장 비용 효율적인 인스턴스를 선택해요.

  • 태스크 정의: operatingSystemFamily, cpuArchitecture, cpu, memory
  • 서비스 정의: placementConstraints, placementStrategy

대부분의 워크로드에는 속성 기반 선택을 사용해 유연성을 제공하고 배치 성공률을 개선하기 속성 기반 인스턴스 선택을 사용하면 Amazon ECS가 지정한 요구 사항을 충족하는 더 넓은 범위의 인스턴스 유형 중에서 선택할 수 있어요. 이 접근 방식은 성공적인 태스크 배치 가능성을 높이고, Amazon ECS가 시작 시점에 가장 비용 효율적인 인스턴스를 선택할 수 있게 해 더 나은 비용 최적화를 제공해요.

특정 하드웨어 요구 사항이 있는 애플리케이션에만 특정 인스턴스 유형 사용하기 특정 인스턴스 유형 선택은 GPU 가속, 고주파 프로세서 또는 특수 네트워킹 기능 같은 특정 하드웨어 기능이 필요한 워크로드에만 남겨 두어 주세요. 범용 애플리케이션의 경우 일반적으로 속성 기반 선택이 더 나은 유연성과 비용 최적화를 제공해요.

과도한 프로비저닝과 불필요한 비용을 피하기 위해 균형 잡힌 리소스 선택하기 애플리케이션의 CPU 및 메모리 요구 사항과 밀접하게 일치하는 인스턴스 구성을 선택해 주세요. 리소스를 크게 과도하게 프로비저닝하는 것은 더 높은 비용과 낮은 효율성으로 이어지므로 피해 주세요. 모니터링 데이터를 사용해 실제 리소스 사용 패턴을 이해하고 그에 따라 인스턴스 선택을 조정해 주세요.

워크로드가 다양한 애플리케이션에는 인스턴스 유형을 혼합해 성능과 비용 균형 맞추기 성능 요구 사항이 다양하거나 워크로드 패턴이 변하는 애플리케이션의 경우 서로 다른 인스턴스 구성으로 여러 용량 제공자(capacity provider)를 사용하는 것을 고려해 주세요. 이 접근 방식은 필요한 곳에서 성능을 유지하면서 애플리케이션의 서로 다른 구성 요소에 적절한 인스턴스 유형을 사용해 비용을 최적화할 수 있게 해 줘요.

capacityOptionType=Reserved 로 구성된 Amazon ECS Managed Instances 용량 제공자를 사용할 때는 ECS 서비스가 minimumHealthyPercent=100% 및 maximumPercent=200% 의 기본 배포 구성을 사용한다는 점을 알아 두어 주세요. 즉 ECS 배포는 이전 태스크를 중지하기 전에 새 태스크를 시작하려고 시도하며, 일시적으로 정상 상태 용량의 최대 200%를 요구해요. 서비스가 정상 상태에서 EC2 Capacity Reservations의 사용 가능한 모든 용량을 소비한다면, 배포 중 새 태스크를 시작할 추가 용량이 없으므로 배포가 실패해요. 이를 피하려면 minimumHealthyPercent 를 100% 미만(예: 75%)으로 설정하고 maximumPercent 를 100%로 설정하는 것을 고려해 주세요. 이렇게 하면 서비스가 새 태스크를 시작하기 전에 태스크를 중지해, 대체 태스크를 시작하기 전에 용량을 확보하므로 배포가 성공적으로 완료될 수 있어요. 또한 예약(reservations)의 헤드룸을 유지해 배포를 수용하고 트래픽 급증을 처리하기 위해 용량 활용도를 정기적으로 모니터링하는 것을 고려해 주세요.

더 알아보기 (Learn more)