1 AWS EC2 Placement Groups 상세 가이드
- AWS EC2(Elastic Compute Cloud)에서 Placement Groups는 인스턴스 배치 전략을 제어할 수 있는 기능입니다.
- 이 기능을 사용하면 애플리케이션의 요구사항에 따라 EC2 인스턴스들을 특정 방식으로 그룹화할 수 있습니다.
- Placement Groups를 사용하면 성능 최적화, 고가용성 확보, 하드웨어 장애 위험 감소 등 다양한 이점을 얻을 수 있습니다.
2 Placement Groups의 종류
- AWS EC2는 세 가지 유형의 Placement Groups를 제공합니다:
- Cluster Placement Groups
- Spread Placement Groups
- Partition Placement Groups
- 각 유형은 고유한 특징과 장단점을 가지고 있어, 다양한 사용 사례에 적용할 수 있습니다.
3 Cluster Placement Groups
- Cluster Placement Groups는 단일 가용 영역 내에서 인스턴스들을 긴밀하게 묶어 놓는 전략입니다.
- 이 전략의 주요 특징은 다음과 같습니다:
- 모든 인스턴스가 동일한 가용 영역(AZ) 내에 위치합니다.
- 인스턴스 간 네트워크 성능이 매우 우수합니다(10 Gbps 대역폭).
- 낮은 지연 시간(Low Latency)을 제공합니다.
- 장점:
- Enhanced Networking이 활성화된 경우, 인스턴스 간 10 Gbps의 높은 대역폭을 제공합니다.
- 인스턴스 간 매우 낮은 지연 시간을 보장합니다.
- 단점:
- 해당 가용 영역에 장애가 발생하면 모든 인스턴스가 동시에 영향을 받을 수 있습니다.
- 사용 사례:
- 빠른 완료가 필요한 대규모 데이터 처리 작업
- 매우 낮은 지연 시간과 높은 네트워크 처리량이 필요한 애플리케이션
4 Spread Placement Groups
- Spread Placement Groups는 인스턴스들을 물리적으로 분산시키는 전략입니다.
- 이 전략의 주요 특징은 다음과 같습니다:
- 인스턴스들이 서로 다른 물리적 하드웨어에 배치됩니다.
- 여러 가용 영역에 걸쳐 인스턴스를 배치할 수 있습니다.
- 각 가용 영역당 최대 7개의 인스턴스로 제한됩니다.
- 장점
- 가용 영역(AZ) 전체에 걸쳐 인스턴스를 분산시킬 수 있습니다.
- 동시 장애 위험이 크게 감소합니다.
- 각 EC2 인스 턴스가 서로 다른 물리적 하드웨어에 위치합니다.
- 단점:
- 가용 영역당 최대 7개의 인스턴스로 제한되어 대규모 배포에는 적합하지 않을 수 있습니다.
- 사용 사례:
- 고가용성을 최대화해야 하는 애플리케이션
- 각 인스턴스가 서로의 장애로부터 격리되어야 하는 중요 애플리케이션
5 Partition Placement Groups
- Partition Placement Groups는 인스턴스들을 논리적 파티션으로 그룹화하는 전략입니다.
- 이 전략의 주요 특징은 다음과 같습니다:
- 각 파티션은 자체 랙 세트에 의존합니다.
- 가용 영역당 최대 7개의 파티션을 가질 수 있습니다.
- 여러 가용 영역에 걸쳐 확장할 수 있습니다.
- 각 파티션 내에서 수많은 EC2 인스턴스를 호스팅할 수 있습니다.
- 장점:
- 대규모 분산 및 복제 워크로드에 적합합니다.
- 파티션 간 하드웨어 공유가 없어 장애 격리가 가능합니다.
- EC2 인스턴스가 파티션 정보를 메타데이터로 접근할 수 있습니다.
- 단점:
- 파티션 장애 시 해당 파티션의 많은 EC2 인스턴스가 영향을 받을 수 있습니다.
- 사용 사례:
- HDFS, HBase, Cassandra, Kafka 등 대규모 분산 데이터베이스 시스템
6 Spread와 Partition의 주요 차이점