PERF02-BP05 컴퓨팅 리소스 동적 확장 - AWS Well-Architected Framework

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

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

일반적인 안티 패턴:

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

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

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

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

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

구현 가이드

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

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

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

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

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

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

워크로드 배포에서 확장 및 축소 이벤트를 모두 처리할 수 있는지 확인해야 합니다.

구현 단계

  • 컴퓨팅 인스턴스, 컨테이너 및 함수는 Auto Scaling과 함께 또는 서비스의 기능으로 탄력성을 위한 메커니즘을 제공합니다. 자동 스케일링 메커니즘의 예시는 다음과 같습니다.

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

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

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

    • 지표 값은 Auto Scaling 그룹 내 인스턴스 수에 비례하여 늘거나 줄어야 합니다.

  • 이때 수동 스케일링 대신 동적 스케일링 을 Auto Scaling 그룹에 사용합니다. 또한 동적 스케일링에 대상 추적 스케일링 정책 을 사용하는 것이 좋습니다.

  • 워크로드 배포가 스케일링 이벤트(확장 및 축소)를 모두 처리할 수 있는지 확인합니다. 예를 들어 활동 기록 을 사용하여 Auto Scaling 그룹에 대한 스케일링 활동을 확인할 수 있습니다.

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

리소스

관련 문서:

관련 동영상:

관련 예시: