PERF02-BP05 컴퓨팅 리소스 동적 확장 - 성능 효율성 원칙

PERF02-BP05 컴퓨팅 리소스 동적 확장

클라우드의 탄력성을 사용하여 필요에 따라 컴퓨팅 리소스를 동적으로 스케일 업 또는 스케일 다운하고 워크로드에 대한 프로비저닝 용량이 과도하거나 부족하지 않도록 방지할 수 있습니다.

일반적인 안티 패턴:

  • 용량을 수동으로 늘려 경보에 대응합니다.

  • 온프레미스에서와 동일한 크기 조정 가이드라인(일반적으로 정적 인프라)을 사용합니다.

  • 조정 이벤트 후에 다시 스케일 다운하는 대신 증가된 용량을 그대로 둡니다.

이 모범 사례 확립의 이점: 컴퓨팅 리소스의 탄력성을 구성 및 테스트하면 비용을 절감하고, 성능 벤치마크를 유지하며, 트래픽 변화에 따른 신뢰성을 개선할 수 있습니다.

이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준: 높음

구현 가이드

AWS는 다양한 조정 메커니즘을 통해 리소스를 동적으로 스케일 업 또는 스케일 다운하여 수요 변화에 대응할 수 있는 유연성을 제공합니다. 컴퓨팅 관련 지표와 결합된 동적 규모 조정을 통해 워크로드는 변경 사항에 자동으로 대응하고 최적의 컴퓨팅 리소스 세트를 사용하여 목표를 달성할 수 있습니다.

다양한 접근 방식을 사용하여 리소스 공급과 수요를 일치시킬 수 있습니다.

  • 타겟 추적 접근 방식: 규모 조정 지표를 모니터링하고 필요에 따라 용량을 자동으로 늘리거나 줄입니다.

  • 예측 규모 조정: 일별 및 주별 추세를 고려하여 스케일 인합니다.

  • 일정 기반 접근 방식: 예측 가능한 로드 변화에 따라 자체 규모 조정 일정을 설정합니다.

  • 서비스 규모 조정: 설계상 자동으로 규모가 조정되는 서비스(예: 서버리스)를 선택합니다.

워크로드 배포에서 스케일 업 및 스케일 다운 이벤트를 모두 처리할 수 있는지 확인해야 합니다.

구현 단계

  • 컴퓨팅 인스턴스, 컨테이너 및 함수는 Auto Scaling과 함께 또는 서비스의 기능으로 탄력성을 위한 메커니즘을 제공합니다. 다음은 자동 규모 조정 메커니즘 예제입니다.

    Auto Scaling 메커니즘 사용 장소
    Amazon EC2 Auto Scaling 애플리케이션의 로드를 처리할 수 있는 올바른 수의 Amazon EC2 인스턴스를 유지하도록 보장합니다.
    Application Auto Scaling AWS Lambda 함수 또는 Amazon Elastic Container Service(Amazon ECS) 서비스와 같이 Amazon EC2 이외의 개별 AWS 서비스에서 리소스 규모를 자동으로 조정합니다.
    Kubernetes Cluster Autoscaler/Karpenter Kubernetes 클러스터를 자동으로 조정합니다.
  • 규모 조정은 대개 Amazon EC2 인스턴스나 AWS Lambda 함수 등의 컴퓨팅 서비스와 관련하여 설명하는 경우가 많습니다. 이때 AWS Glue와 같은 비컴퓨팅 서비스의 구성도 수요에 맞게 고려해야 합니다.

  • 규모 조정에 대한 지표가 배포 중인 워크로드의 특성과 일치하는지 확인합니다. 동영상 트랜스코딩 애플리케이션을 배포하는 경우 100%의 CPU 활용률이 예상되므로, 기본 지표로 사용해서는 안 됩니다. 대신 트랜스코딩 작업 대기열의 깊이를 사용합니다. 필요한 경우 규모 조정 정책에 사용자 지정 지표를 사용할 수 있습니다. 올바른 지표를 선택하려면 Amazon EC2에 대한 다음 지침을 고려하세요.

    • 지표는 유효한 사용률 지표여야 하며 인스턴스가 얼마나 많이 사용되는지를 설명해야 합니다.

    • 지표 값은 Auto Scaling 그룹의 인스턴스 수에 비례하여 증가하거나 감소합니다.

  • Auto Scaling 그룹의 경우 수동 규모 조정 대신 동적 규모 조정을 사용해야 합니다. 또한 동적 규모 조정에서 목표 추적 조정 정책을 사용하는 것이 좋습니다.

  • 워크로드 배포가 규모 조정 이벤트(스케일 업 및 스케일 다운)를 모두 처리할 수 있는지 확인합니다. 예를 들어 활동 내역을 사용하여 Auto Scaling 그룹의 조정 활동을 확인할 수 있습니다.

  • 워크로드의 예측 가능한 패턴을 평가하고 예측 및 계획된 수요 변화에 따라 사전 예방적으로 확장합니다. 예측 규모 조정에서는 용량을 과도하게 프로비저닝할 필요가 없습니다. 자세한 내용은 Predictive Scaling with Amazon EC2 Auto Scaling을 참조하세요.

리소스

관련 문서:

관련 비디오:

관련 예제: