

# 기반
<a name="a-foundations"></a>

**Topics**
+ [REL 1  서비스 할당량과 제약 조건은 어떻게 관리합니까?](w2aac19b9b5b5.md)
+ [REL 2  네트워크 토폴로지는 어떻게 계획합니까?](w2aac19b9b5b7.md)

# REL 1  서비스 할당량과 제약 조건은 어떻게 관리합니까?
<a name="w2aac19b9b5b5"></a>

클라우드 기반 워크로드 아키텍처에는 서비스 할당량(서비스 한도라고도 함)이라는 것이 있습니다. 이러한 할당량은 실수로 필요한 것보다 많은 리소스를 프로비저닝하는 것을 방지하고 API 작업에 대한 요청 속도를 제한하여 서비스를 침해로부터 보호하기 위해 존재합니다. 광섬유 케이블을 통해 비트를 전송할 수 있는 속도나 물리적 디스크의 스토리지 양과 같은 리소스 제약 조건도 있습니다. 

**Topics**
+ [REL01-BP01 Service Quotas 및 제약 조건 인식](rel_manage_service_limits_aware_quotas_and_constraints.md)
+ [REL01-BP02 계정 및 리전 전체에서 서비스 할당량 관리](rel_manage_service_limits_limits_considered.md)
+ [REL01-BP03 아키텍처를 통해 고정된 서비스 할당량 및 제약 조건 수용](rel_manage_service_limits_aware_fixed_limits.md)
+ [REL01-BP04 할당량 모니터링 및 관리](rel_manage_service_limits_monitor_manage_limits.md)
+ [REL01-BP05 할당량 관리 자동화](rel_manage_service_limits_automated_monitor_limits.md)
+ [REL01-BP06 현재의 할당량과 최대 사용량 간에 장애 조치를 수용할 만큼 여유가 충분히 있는지 확인](rel_manage_service_limits_suff_buffer_limits.md)

# REL01-BP01 Service Quotas 및 제약 조건 인식
<a name="rel_manage_service_limits_aware_quotas_and_constraints"></a>

 워크로드 아키텍처에 대한 기본 할당량이 있으며 할당량 증가를 요청할 수 있습니다. 또한 디스크 또는 네트워크와 같은 리소스 제약 조건은 잠재적인 영향을 미칠 수 있습니다. 

 Service Quotas는 100개 이상의 AWS 서비스에 대한 할당량을 단일 위치에서 관리할 수 있는 AWS 서비스입니다. 할당량 값을 조회하는 것에 더해 Service Quotas 콘솔 또는 AWS SDK를 통해 할당량 증가를 요청하고 추적할 수 있습니다. AWS Trusted Advisor는 일부 서비스의 특정 측면에 대한 사용량 및 할당량을 표시하는 서비스 할당량 확인 기능을 제공합니다. 각 서비스의 기본 서비스 할당량은 해당하는 서비스의 AWS 설명서에도 문서화되어 있습니다. 예를 들어 [Amazon VPC 할당량을 참조하십시오.](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html). 조절된 API에 대한 속도 제한은 API Gateway 자체에서 사용량 계획을 구성하는 방법으로 설정됩니다. 해당하는 서비스에서 구성으로 설정되는 기타 제한으로는 프로비저닝된 IOPS, 할당된 RDS 스토리지 및 EBS 볼륨 할당이 있습니다. Amazon Elastic Compute Cloud(Amazon EC2)에는 인스턴스, Amazon Elastic Block Store(Amazon EBS) 및 탄력적 IP 주소 제한을 관리하는 데 도움이 되는 자체 서비스 한도 대시보드가 있습니다. 서비스 할당량이 애플리케이션 성능에 영향을 미치고 요구 사항에 맞춰 조정할 수 없는 사용 사례가 있는 경우 AWS Support에 문의하여 완화 방법이 있는지 확인하십시오. 

 **일반적인 안티 패턴:** 
+  사용된 AWS 서비스의 서비스 할당량을 고려하지 않고 워크로드 배포 
+  AWS 서비스의 설계 제약 조건을 조사 및 반영하지 않고 워크로드 설계 
+  필요한 할당량을 구성하거나 사전에 AWS Support에 문의하지 않은 채로 알려진 기존 워크로드를 대체하는 사용량이 많은 워크로드 배포 
+  워크로드로 트래픽을 유도하는 이벤트를 계획하면서 필요한 할당량을 구성하거나 사전에 AWS Support에 문의하지 않음 

 **이 모범 사례 정립의 이점:** 서비스 할당량, API 조절 한도 및 설계 제약 조건을 숙지하면 워크로드를 설계, 구현, 운영하는 데 이러한 제한 사항을 고려할 수 있습니다. 

 **이 모범 사례를 정립되지 않을 경우 노출되는 위험의 수준:** 높음 

## 구현 가이드
<a name="implementation-guidance"></a>
+  게시된 설명서와 Service Quotas의 AWS 서비스 할당량 섹션 검토 
  +  [AWS Service Quotas(이전의 ‘한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  배치 코드를 확인하여 워크로드에 필요한 모든 서비스를 결정합니다. 
+  AWS Config를 사용하여 AWS 계정에서 사용되는 모든 AWS 리소스를 찾습니다. 
  +  [AWS Config 지원 AWS 리소스 유형 및 리소스 관계](https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html) 
+  AWS CloudFormation을 사용하여 사용되는 AWS 리소스를 파악할 수도 있습니다. AWS Management Console에서 또는 list-stack-resources CLI 명령을 통해 생성된 리소스를 확인합니다. 템플릿 자체에 배포하도록 구성된 리소스를 볼 수도 있습니다. 
  +  [AWS Management Console에서 AWS CloudFormation 스택 데이터 및 리소스 보기](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html) 
  +  [AWS CLI for CloudFormation: list-stack-resources](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-stack-resources.html) 
+  적용되는 서비스 할당량을 확인합니다. Trusted Advisor 및 Service Quotas를 통해 프로그래밍 방식으로 액세스되는 정보를 활용합니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Marketplace: 한도 추적에 유용한 구성 관리 데이터베이스(CMDB) 제품](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas(이전의 ‘서비스 한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [AWS Trusted Advisor 모범 사례 점검 항목(‘서비스 한도’ 섹션 참조)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Answers의 AWS Limit Monitor](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Amazon EC2 서비스 한도](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

 **관련 동영상:** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL01-BP02 계정 및 리전 전체에서 서비스 할당량 관리
<a name="rel_manage_service_limits_limits_considered"></a>

 여러 AWS 계정 또는 AWS 리전을 사용하는 경우 프로덕션 워크로드가 실행되는 모든 환경에서 적절한 할당량을 요청해야 합니다. 

 서비스 할당량은 계정별로 추적됩니다. 다른 언급이 없는 한, 각 할당량은 AWS 리전별로 다릅니다. 프로덕션 환경에 더해 적용 가능한 모든 비 프로덕션 환경에서도 할당량을 관리하여 테스트 및 개발에 방해가 되지 않도록 합니다. 

 **일반적인 안티 패턴:** 
+  다른 격리 영역에서 용량을 유지하는 메커니즘 없이 격리 영역의 리소스 사용률을 확장하도록 허용 
+  격리 영역에서 모든 할당량을 독립적으로 수동으로 설정 
+  배포가 손실된 경우 다른 리전에서 증가하는 트래픽을 수용할 수 있도록 리전별로 격리된 배포의 크기를 설정하지 않음 

 **이 모범 사례 수립의 이점:** 격리 영역을 사용할 수 없는 경우에도 현재 로드를 처리할 수 있도록 하면, 장애 조치 중에 발생하는 오류 수를 줄여 고객에게 서비스 거부를 초래하지 않도록 할 수 있습니다. 

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

## 구현 가이드
<a name="implementation-guidance"></a>
+  서비스 요구 사항, 지연 시간, 규정, 재해 복구(DR) 요구 사항을 기준으로 관련 계정 및 리전을 선택합니다. 
+  모든 관련 계정, 리전 및 가용 영역의 서비스 할당량을 확인합니다. 한도는 계정 및 리전별로 관리됩니다. 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Marketplace: 한도 추적에 유용한 CMDB 제품](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas(이전의 ‘서비스 한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [AWS Trusted Advisor 모범 사례 점검 항목(‘서비스 한도’ 섹션 참조)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Answers의 AWS Limit Monitor](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Amazon EC2 서비스 한도](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

 **관련 동영상:** 
+  [AWS 라이브 re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL01-BP03 아키텍처를 통해 고정된 서비스 할당량 및 제약 조건 수용
<a name="rel_manage_service_limits_aware_fixed_limits"></a>

 변경할 수 없는 서비스 할당량과 물리적 리소스를 인지하고 안정성에 영향을 미치지 않도록 설계합니다. 

 예를 들어 네트워크 대역폭, AWS Lambda 페이로드 크기, API Gateway의 버스트 속도 조절, Amazon Redshift 클러스터에 대한 동시 사용자 연결 등이 여기에 포함됩니다. 

 **일반적인 안티 패턴:** 
+  벤치마킹을 너무 짧은 시간 동안만 수행하고, 버스트 제한을 활용한 다음 서비스가 일정 기간 동안 해당 용량에서 정상적인 성능을 보일 것으로 예상 
+  확장 시 해당 설계에서 장애를 유발하는 설계 제약 조건이 있다는 사실을 인지하지 못한 채 사용자 또는 고객당 하나의 서비스 리소스를 사용하는 설계 방식 선택 

 **이 모범 사례 수립의 이점:** 연결 제약 조건, IP 주소 제약 조건, 타사 서비스의 제약 조건 등, 워크로드의 다른 부분에 적용되는 AWS 서비스의 고정된 할당량과 제약 조건을 추적하면 할당량에 근접하는 추세를 보이는 경우 이를 감지하고 할당량을 초과하기 전에 할당량을 조절할 수 있습니다. 

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  고정된 서비스 할당량 숙지 고정된 서비스 할당량과 제약 조건을 숙지하고 이를 중심으로 설계합니다. 
  +  [AWS Service Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Marketplace: 한도 추적에 유용한 구성 관리 데이터베이스(CMDB) 제품](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas(이전의 ‘서비스 한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [AWS Trusted Advisor 모범 사례 점검 항목(‘서비스 한도’ 섹션 참조)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Answers의 AWS Limit Monitor](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Amazon EC2 서비스 한도](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

 **관련 동영상:** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL01-BP04 할당량 모니터링 및 관리
<a name="rel_manage_service_limits_monitor_manage_limits"></a>

 잠재적 사용량을 평가하고 할당량을 적절히 늘려 사용량 증가를 계획합니다. 

 지원되는 서비스의 경우 사용량을 모니터링하고 할당량에 근접할 때 알림을 받도록 CloudWatch 경보를 구성하여 할당량을 관리할 수 있습니다. 이러한 경보는 Service Quotas 또는 Trusted Advisor에서 트리거될 수 있습니다. CloudWatch Logs의 지표 필터를 사용하여 로그의 패턴을 검색하고 추출하여 사용량이 할당량 임계값에 근접하는지 여부를 확인할 수도 있습니다. 

 **일반적인 안티 패턴:** 
+  Service Quotas에 근접할 경우 알리는 경보를 구성하지만, 알림에 응답하는 프로세스를 갖추지 않음 
+  Service Quotas에서 지원하는 서비스에 대해서만 경보를 구성하고 다른 서비스는 모니터링하지 않음 

 **이 모범 사례 수립의 이점:** AWS 서비스 할당량을 자동으로 추적하고 이러한 할당량을 기준으로 사용량을 모니터링하면 할당량 한도에 근접할 경우 이를 알 수 있습니다. 또한 이 모니터링 데이터를 통해, 할당량을 줄여 비용을 절감할 수 있는지 평가할 수 있습니다. 

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  할당량 모니터링 및 관리 AWS에서 잠재 사용량을 확인하고, 리전별 서비스 할당량을 적절히 늘린 후 계획에 따른 사용량 증가분이 반영되도록 합니다. 
  +  현재 리소스 사용 내역(예: 버킷, 인스턴스)을 파악합니다. 현재 리소스 사용 내역을 모두 보려면 Amazon EC2 DescribeInstances API와 같은 서비스 API 작업을 사용합니다. 
  +  현재 할당량 포착 AWS Service Quotas, AWS Trusted Advisor, AWS 설명서를 사용합니다. 
    +  100개 이상의 AWS 서비스에 대한 할당량을 단일 위치에서 관리할 수 있는 AWS 서비스인 AWS Service Quotas를 사용합니다. 
    +  Trusted Advisor 서비스 한도를 이용해 현재 서비스 한도를 파악합니다. 
    +  서비스 API 작업을 사용하여 현재 적용되는 서비스 할당량을 파악합니다. 
    +  할당량 증가 요청 내역과 처리 현황을 기록합니다. 할당량 증가가 승인되고 나면 변경된 할당량을 반영하도록 레코드를 업데이트해야 합니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Marketplace: 한도 추적에 유용한 구성 관리 데이터베이스(CMDB) 제품](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas(이전의 ‘서비스 한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [서비스 한도에 대한 AWS Trusted Advisor 모범 사례 점검 항목](https://docs.aws.amazon.com/awssupport/latest/user/service-limits.html) 
+  [AWS Answers의 AWS Limit Monitor](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Amazon EC2 서비스 한도](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+  [Amazon CloudWatch 경보를 사용하여 Service Quotas 모니터링](https://docs.aws.amazon.com/servicequotas/latest/userguide/configure-cloudwatch.html) 

 **관련 동영상:** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL01-BP05 할당량 관리 자동화
<a name="rel_manage_service_limits_automated_monitor_limits"></a>

 임계값에 근접했을 때 알림을 받을 수 있는 도구를 구현합니다. AWS Service Quotas API를 사용하여 할당량 증가 요청을 자동화할 수 있습니다. 

 CMDB(구성 관리 데이터베이스) 또는 티켓팅 시스템을 Service Quotas와 통합하면 할당량 증가 요청 및 현재 할당량 추적을 자동화할 수 있습니다. Service Quotas는 AWS SDK 외에도 AWS Command Line Interface(AWS CLI)를 사용한 자동화를 제공합니다. 

 **일반적인 안티 패턴:** 
+  스프레드시트에서 할당량 및 사용량 추적 
+  일별, 주별 또는 월별 사용량에 대한 보고서를 실행한 다음 사용량을 할당량과 비교 

 **이 모범 사례 정립의 이점:** AWS 서비스 할당량을 자동으로 추적하고 해당 할당량을 기준으로 사용량을 모니터링하면 할당량에 근접할 경우 이를 알 수 있습니다. 자동화를 설정하여 필요할 때 할당량 증가를 요청할 수 있습니다. 사용량이 반대로 감소 추세를 보일 경우 할당량을 일부 낮추면 위험 감소(자격 증명이 침해당한 경우) 및 비용 절감의 이점을 실현할 수 있습니다. 

 **이 모범 사례를 정립되지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  자동화된 모니터링 설정 SDK를 사용하여 임계값에 근접할 때 알림을 제공하는 도구를 구현합니다. 
  +  Service Quotas를 사용하고 AWS Limit Monitor 또는 AWS Marketplace에서 제공하는 것과 같은 자동 할당량 모니터링 솔루션으로 이 서비스를 보강합니다. 
    +  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
    +  [AWS에서의 할당량 모니터링 - AWS 솔루션](https://aws.amazon.com/answers/account-management/limit-monitor/) 
  +  Amazon SNS 및 AWS Service Quotas API를 사용하여 할당량 임계값을 기준으로 트리거되는 응답을 설정합니다. 
  +  테스트를 자동화합니다. 
    +  한도 임계값을 구성합니다. 
    +  AWS Config, 배포 파이프라인, Amazon EventBridge 또는 타사의 변경 이벤트와 통합합니다. 
    +  응답을 테스트하기 위해 인위적으로 할당량 임계값을 설정합니다. 
    +  알림 발생 시에 적절한 조치를 취하고 필요한 경우 AWS Support에 연락하도록 트리거를 설정합니다. 
    +  변경 이벤트를 수동으로 트리거합니다. 
    +  게임 데이를 실행하여 할당량 증가 변경 프로세스를 테스트합니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [APN 파트너: 구성 관리를 지원할 수 있는 파트너](https://aws.amazon.com/partners/find/results/?keyword=Configuration+Management) 
+  [AWS Marketplace: 한도 추적에 유용한 구성 관리 데이터베이스(CMDB) 제품](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas(이전의 ‘서비스 한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [AWS Trusted Advisor 모범 사례 점검 항목(‘서비스 한도’ 섹션 참조)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS에서의 할당량 모니터링 - AWS 솔루션](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Amazon EC2 서비스 한도](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

 **관련 동영상:** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL01-BP06 현재의 할당량과 최대 사용량 간에 장애 조치를 수용할 만큼 여유가 충분히 있는지 확인
<a name="rel_manage_service_limits_suff_buffer_limits"></a>

 리소스는 장애가 발생하더라도 정상적으로 종료할 때까지는 할당량 계산에 계속 포함될 수 있습니다. 그러므로 할당량에는 장애 발생 리소스가 종료되기 전까지 장애가 발생한 모든 리소스와 교체 리소스의 중복이 포함되어야 합니다. 이 차이를 계산할 때는 가용 영역 장애를 고려해야 합니다. 

 **일반적인 안티 패턴:** 
+  장애 조치 시나리오를 고려하지 않고 현재의 수요를 기준으로 서비스 할당량 설정 

 **이 모범 사례 수립의 이점:** 이벤트가 가용성에 영향을 미칠 가능성이 있을 때 클라우드를 사용하면 해당 이벤트의 영향을 완화하거나 이벤트로부터 복구하는 전략을 구현할 수 있습니다. 그러한 전략에는 장애가 발생한 리소스를 대체할 추가 리소스를 생성하는 작업이 포함되는 경우가 많습니다. 할당량 전략에는 이러한 추가 리소스를 감안해야 합니다. 

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  서비스 할당량과 최대 사용량 간에 장애 조치를 수용할 만큼 여유가 충분히 있는지 확인합니다. 
  +  배포 패턴, 가용성 요청 사항, 서비스 사용량 증가를 고려해 서비스 할당량을 결정합니다. 
  +  필요한 경우 할당량 증가를 요청합니다. 할당량 증가 요청이 반영될 시간을 고려합니다. 
    +  신뢰성 요구 사항(‘9의 개수’라고도 함)을 결정합니다. 
    +  장애 시나리오(예: 구성 요소, 가용 영역 또는 리전 손실)를 설정합니다. 
    +  배포 방법(Canary, 블루/그린, 레드/블랙 또는 롤링 등)을 설정합니다. 
    +  현재 한도에 적절한 버퍼(예: 15%)가 포함되어야 합니다. 
    +  사용량 증가 계획(사용 추세 모니터링 등)을 수립합니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Marketplace: 한도 추적에 유용한 구성 관리 데이터베이스(CMDB) 제품](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas(이전의 ‘서비스 한도’)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [AWS Trusted Advisor 모범 사례 점검 항목(‘서비스 한도’ 섹션 참조)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [Amazon EC2 서비스 한도](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [Service Quotas란 무엇입니까?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

 **관련 동영상:** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL 2  네트워크 토폴로지는 어떻게 계획합니까?
<a name="w2aac19b9b5b7"></a>

워크로드는 여러 환경에 존재할 수 있습니다. 여기에는 다중 클라우드 환경(퍼블릭 액세스 및 프라이빗)과 기존 데이터 센터 인프라가 포함됩니다. 따라서 시스템 내부 및 시스템 간 연결, 퍼블릭 IP 주소 관리, 프라이빗 IP 주소 관리 및 도메인 이름 확인과 같은 네트워크 고려 사항을 계획에 포함해야 합니다.

**Topics**
+ [REL02-BP01 워크로드 퍼블릭 엔드포인트에 고가용성 네트워크 연결 사용](rel_planning_network_topology_ha_conn_users.md)
+ [REL02-BP02 클라우드와 온프레미스 환경의 프라이빗 네트워크 간에 이중화된 연결 프로비저닝](rel_planning_network_topology_ha_conn_private_networks.md)
+ [REL02-BP03 확장 및 가용성을 위한 IP 서브넷 할당 계정 확인](rel_planning_network_topology_ip_subnet_allocation.md)
+ [REL02-BP04 다대다 메시보다 허브 앤드 스포크 토폴로지 선호](rel_planning_network_topology_prefer_hub_and_spoke.md)
+ [REL02-BP05 연결된 모든 프라이빗 주소 공간에서 겹치지 않는 프라이빗 IP 주소 범위 적용](rel_planning_network_topology_non_overlap_ip.md)

# REL02-BP01 워크로드 퍼블릭 엔드포인트에 고가용성 네트워크 연결 사용
<a name="rel_planning_network_topology_ha_conn_users"></a>

 이러한 엔드포인트와 엔드포인트로의 라우팅은 고가용성으로 구현해야 합니다. 이러한 고가용성을 달성하려면 고가용성 DNS, CDN(콘텐츠 전송 네트워크), API Gateway, 로드 밸런싱 또는 리버스 프록시를 사용합니다. 

 Amazon Route 53, AWS Global Accelerator, Amazon CloudFront, Amazon API Gateway, Elastic Load Balancing(ELB)은 모두 가용성이 매우 높은 퍼블릭 엔드포인트를 제공합니다. AWS Marketplace 소프트웨어 어플라이언스를 평가하여 로드 밸런싱 및 프록시에 사용할 어플라이언스를 선택할 수도 있습니다. 

 워크로드가 제공하는 서비스의 소비자는 최종 사용자든 다른 서비스든 이러한 서비스 엔드포인트로 요청을 보냅니다. 여러 AWS 리소스를 사용하여 고가용성 엔드포인트를 제공할 수 있습니다. 

 Elastic Load Balancing은 가용 영역에 걸쳐 로드 밸런싱을 제공하고, 계층 4(TCP) 또는 계층 7(http/https) 라우팅을 수행하고, AWS WAF와 통합되며, AWS Auto Scaling 통합을 통해 자가 복구 인프라를 생성하고 트래픽 증가를 흡수하는 동시에 트래픽이 감소할 때는 리소스를 해제합니다. 

 Amazon Route 53은 확장 가능한 고가용성 도메인 이름 시스템(DNS) 서비스로, 사용자 요청을 Amazon EC2 인스턴스, Elastic Load Balancing 로드 밸런서 또는 Amazon S3 버킷처럼 AWS에서 실행되는 인프라에 효과적으로 연결하며, 사용자를 AWS 외부의 인프라로 라우팅하는 데에도 사용할 수 있습니다. 

 AWS Global Accelerator는 AWS 글로벌 네트워크를 통해 트래픽을 최적의 엔드포인트로 보내는 데 사용할 수 있는 네트워크 계층 서비스입니다. 

 DDoS(분산 서비스 거부) 공격은 합법적인 트래픽을 차단하고 사용자의 가용성을 낮출 위험이 있습니다. AWS Shield는 워크로드의 AWS 서비스 엔드포인트에 이러한 공격에 대한 자동 보호를 추가 비용 없이 제공합니다. APN 파트너 및 AWS Marketplace에서 제공하는 가상 어플라이언스를 사용하여 요구에 맞게 이러한 기능을 보강할 수 있습니다. 

 **일반적인 안티 패턴:** 
+  인스턴스 또는 컨테이너에서 퍼블릭 인터넷 주소를 사용하고 DNS를 통해 이러한 주소에 대한 연결을 관리합니다. 
+  서비스를 찾는 데 도메인 이름 대신 인터넷 프로토콜 주소를 사용합니다. 
+  콘텐츠 전송 네트워크를 사용하지 않고 대규모 지리적 영역에 콘텐츠(웹 페이지, 정적 자산, 미디어 파일) 제공 

 **이 모범 사례 수립의 이점:** 워크로드에 고가용성 서비스를 구현하면 워크로드가 사용자에게 워크로드의 가용성을 보장할 수 있습니다. 

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

## 구현 가이드
<a name="implementation-guidance"></a>

 워크로드 사용자를 위해 고가용성 연결을 제공하는지 확인합니다. Amazon Route 53, AWS Global Accelerator, Amazon CloudFront, Amazon API Gateway, Elastic Load Balancing(ELB)은 모두 매우 가용성이 높은 퍼블릭 엔드포인트를 제공합니다. AWS Marketplace 소프트웨어 어플라이언스를 평가하여 로드 밸런싱 및 프록시에 사용할 어플라이언스를 선택할 수도 있습니다. 
+  사용자에 대한 연결 가용성이 높은지 확인합니다. 
+  고가용성 DNS를 사용하여 애플리케이션 엔드포인트의 도메인 이름을 관리하고 있는지 확인합니다. 
  +  사용자가 인터넷을 통해 애플리케이션에 액세스하는 경우 서비스 API 작업을 이용하여 인터넷 게이트웨이가 올바르게 사용되는지 확인합니다. 또한 애플리케이션 엔드포인트를 호스팅하는 서브넷에 대한 라우팅 테이블 항목이 올바른지 확인합니다. 
    +  [DescribeInternetGateways](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInternetGateways.html) 
    +  [DescribeRouteTables](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) 
+  애플리케이션에 고가용성 역방향 프록시 또는 로드 밸런서를 사용하고 있는지 확인합니다. 
  +  사용자가 온프레미스 환경을 통해 애플리케이션에 액세스하는 경우 AWS와 온프레미스 환경 간의 연결성이 높은지 확인합니다. 
  +  Route 53을 사용하여 도메인 이름을 관리합니다. 
    +  [Amazon Route 53란 무엇입니까?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) 
  +  요구 사항을 충족하는 서드 파티 DNS 공급자를 사용합니다. 
  +  Elastic Load Balancing을 사용합니다. 
    +  [Elastic Load Balancing이란 무엇입니까?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html) 
  +  요구 사항을 충족하는 AWS Marketplace 어플라이언스를 사용합니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [APN 파트너: 네트워킹 계획을 지원할 수 있는 파트너](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [AWS Direct Connect 복원력 권장 사항](https://aws.amazon.com/directconnect/resiliency-recommendation/) 
+  [네트워크 인프라에 대한 AWS Marketplace](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Amazon Virtual Private Cloud 연결 옵션 백서](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [여러 데이터 센터 고가용 네트워크 연결](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [Using the Direct Connect Resiliency Toolkit to get started(Direct Connect 복원 도구 키트를 사용하여 시작)](https://docs.aws.amazon.com/directconnect/latest/UserGuide/resilency_toolkit.html) 
+  [VPC 엔드포인트 및 VPC 엔드포인트 서비스(AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) 
+  [AWS Global Accelerator란 무엇입니까?](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 
+  [Amazon VPC란 무엇입니까?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [Transit Gateway란 무엇일까요?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 
+  [Amazon CloudFront란 무엇입니까?](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html) 
+  [Amazon Route 53란 무엇입니까?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) 
+  [Elastic Load Balancing이란 무엇입니까?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html) 
+  [Working with Direct Connect Gateways(Direct Connect 게이트웨이 작업)](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-gateways.html) 

 **관련 동영상:** 
+  [AWS re:Invent 2018: Amazon VPC의 고급 VPC 설계 및 새로운 기능(NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: 여러 VPC를 위한 AWS Transit Gateway 참조 아키텍처(NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP02 클라우드와 온프레미스 환경의 프라이빗 네트워크 간에 이중화된 연결 프로비저닝
<a name="rel_planning_network_topology_ha_conn_private_networks"></a>

 별도로 배포된 프라이빗 네트워크 간에 여러 AWS Direct Connect 연결 또는 VPN 터널을 사용합니다. 고가용성을 위해 여러 Direct Connect 위치를 사용합니다. 여러 AWS 리전을 사용하는 경우 2개 이상의 AWS 리전에 이중화되도록 해야 합니다. VPN을 종료하는 AWS Marketplace 어플라이언스를 평가해야 할 수 있습니다. AWS Marketplace 어플라이언스를 사용하는 경우 다른 가용 영역에서 고가용성을 위해 중복 인스턴스를 배포합니다. 

 AWS Direct Connect는 온프레미스 환경에서 AWS로의 전용 네트워크 연결을 쉽게 설정할 수 있게 지원하는 클라우드 서비스입니다. Direct Connect Gateway를 사용하면 온프레미스 데이터 센터를 여러 AWS 리전에 분산된 다수의 AWS VPC에 연결할 수 있습니다. 

 이러한 중복성은 연결 복원력에 영향을 주는 잠재적 장애를 해결합니다. 
+  토폴로지에서 장애가 발생하는 경우 복원할 방법 
+  특정 항목을 잘못 구성하여 연결을 제거하는 경우의 결과 
+  예기치 않은 트래픽 또는 서비스 사용량 증가 처리 가능 여부 
+  DDoS(분산 서비스 거부) 공격 시도에서 정상 상태 유지 가능 여부 

 VPN을 통해 온프레미스 데이터 센터에 VPC를 연결하는 경우 어플라이언스를 실행해야 하는 인스턴스 크기 및 공급업체를 선택할 때 필요한 복원력 및 대역폭 요구 사항을 고려해야 합니다. 해당 구현에서 복원되지 않는 VPN 어플라이언스를 사용하는 경우에는 두 번째 어플라이언스를 통한 중복 연결을 설정해야 합니다. 이러한 모든 시나리오에서는 허용되는 복구 시간을 정의하고 테스트를 진행하여 해당 요구 사항을 충족할 수 있는지를 확인해야 합니다. 

 Direct Connect 연결을 사용하여 VPC를 데이터 센터에 연결하기로 선택한 경우 이 연결이 고가용성이어야 한다면 각 데이터 센터에서 중복 Direct Connect 연결을 사용하세요. 중복 연결에는 첫 번째 연결과 다른 위치의 두 번째 Direct Connect 연결이 사용되어야 합니다. 데이터 센터가 다수인 경우 연결이 각기 다른 위치에서 종료되는지 확인합니다. 연결은 [Direct Connect 복원 도구 키트](https://docs.aws.amazon.com/directconnect/latest/UserGuide/resiliency_toolkit.html) 를 사용하여 설정할 수 있습니다. 

 Site-to-Site VPN을 사용하여 인터넷을 통해 VPN으로 장애 조치하려는 경우, VPN 터널당 최대 1.25Gbps의 처리량이 지원되기는 하지만 여러 AWS 관리형 VPN 터널이 같은 VGW에서 종료되는 경우에는 아웃바운드 트래픽용 ECMP(Equal Cost Multi Path)가 지원되지 않는다는 점을 알아야 합니다. 장애 조치 중 1Gbps 미만의 속도가 허용되는 경우가 아니라면 AWS 관리형 VPN을 Direct Connect 연결의 백업으로 사용하지 않는 것이 좋습니다. 

 또한 VPC 엔드포인트를 사용하여 퍼블릭 인터넷을 통하지 않고 비공개로 VPC를 지원되는 AWS 서비스와 AWS PrivateLink 기반 VPC 엔드포인트 서비스에 연결할 수 있습니다. 엔드포인트는 가상 디바이스입니다. 수평적으로 확장되고 이중화된 고가용성의 VPC 구성 요소입니다. 엔드포인트를 사용하면 네트워크 트래픽에 미치는 가용성 위험이나 대역폭 제약 없이 VPC의 인스턴스와 서비스 간에 통신할 수 있습니다. 

 **일반적인 안티 패턴:** 
+  온사이트 네트워크와 AWS 간에 연결 공급자를 하나만 구성 
+  AWS Direct Connect 연결의 연결 기능을 사용하지만 연결을 하나만 구성 
+  VPN 연결을 위한 경로를 하나만 구성 

 **이 모범 사례 수립의 이점:** 클라우드 환경과 기업 또는 온프레미스 환경 간에 이중화된 연결을 구현하면 두 환경 간의 종속 서비스가 서로 안정적으로 통신할 수 있습니다. 

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

## 구현 가이드
<a name="implementation-guidance"></a>
+  AWS와 온프레미스 환경 간 고가용성 연결을 구현해야 합니다. 별도로 배포된 프라이빗 네트워크 간에 여러 AWS Direct Connect 연결 또는 VPN 터널을 사용합니다. 고가용성을 위해 여러 Direct Connect 위치를 사용합니다. 여러 AWS 리전을 사용하는 경우 2개 이상의 AWS 리전에 이중화되도록 해야 합니다. VPN을 종료하는 AWS Marketplace 어플라이언스를 평가해야 할 수 있습니다. AWS Marketplace 어플라이언스를 사용하는 경우 다른 가용 영역에서 고가용성을 위해 중복 인스턴스를 배포합니다. 
  +  온프레미스 환경에 중복 연결된 상태인지 확인합니다. 가용성 요구 사항을 충족하기 위해서는 여러 AWS 리전에 중복 연결이 필요할 수 있습니다. 
    +  [AWS Direct Connect 복원력 권장 사항](https://aws.amazon.com/directconnect/resiliency-recommendation/) 
    +  [이중화 Site-to-Site VPN 연결을 사용하여 장애 조치 제공](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPNConnections.html) 
      +  서비스 API 작업을 사용하여 Direct Connect 회선이 올바르게 사용되고 있는지 확인합니다. 
        +  [DescribeConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnections.html) 
        +  [DescribeConnectionsOnInterconnect](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnectionsOnInterconnect.html) 
        +  [DescribeDirectConnectGatewayAssociations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAssociations.html) 
        +  [DescribeDirectConnectGatewayAttachments](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAttachments.htmll) 
        +  [DescribeDirectConnectGateways](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGateways.html) 
        +  [DescribeHostedConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeHostedConnections.html) 
        +  [DescribeInterconnects](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeInterconnects.html) 
      +  Direct Connect 연결이 하나만 있거나 하나도 없는 경우 가상 프라이빗 게이트웨이에 이중화 VPN 터널을 설정합니다. 
        +  [AWS Site-to-Site VPN이란 무엇입니까?](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) 
  +  현재 연결(예: Direct Connect, 가상 프라이빗 게이트웨이, AWS Marketplace 어플라이언스)을 파악합니다. 
    +  서비스 API 작업을 사용하여 Direct Connect 연결의 구성을 쿼리합니다. 
      +  [DescribeConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnections.html) 
      +  [DescribeConnectionsOnInterconnect](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnectionsOnInterconnect.html) 
      +  [DescribeDirectConnectGatewayAssociations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAssociations.html) 
      +  [DescribeDirectConnectGatewayAttachments](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAttachments.htmll) 
      +  [DescribeDirectConnectGateways](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGateways.html) 
      +  [DescribeHostedConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeHostedConnections.html) 
      +  [DescribeInterconnects](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeInterconnects.html) 
    +  서비스 API 작업을 사용하여 라우팅 테이블에서 사용하는 가상 프라이빗 게이트웨이를 수집합니다. 
      +  [DescribeVpnGateways](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpnGateways.html) 
      +  [DescribeRouteTables](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) 
    +  서비스 API 작업을 사용하여 라우팅 테이블에서 사용하는 AWS Marketplace 애플리케이션을 수집합니다. 
      +  [DescribeRouteTables](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [APN 파트너: 네트워킹 계획을 지원할 수 있는 파트너](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [AWS Direct Connect 복원력 권장 사항](https://aws.amazon.com/directconnect/resiliency-recommendation/) 
+  [네트워크 인프라에 대한 AWS Marketplace](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Amazon Virtual Private Cloud 연결 옵션 백서](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [여러 데이터 센터 고가용 네트워크 연결](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [이중화 Site-to-Site VPN 연결을 사용하여 장애 조치 제공](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPNConnections.html) 
+  [Using the Direct Connect Resiliency Toolkit to get started(Direct Connect 복원 도구 키트를 사용하여 시작)](https://docs.aws.amazon.com/directconnect/latest/UserGuide/resilency_toolkit.html) 
+  [VPC 엔드포인트 및 VPC 엔드포인트 서비스(AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) 
+  [Amazon VPC란 무엇입니까?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [Transit Gateway란 무엇일까요?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 
+  [AWS Site-to-Site VPN이란 무엇입니까?](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) 
+  [Working with Direct Connect Gateways(Direct Connect 게이트웨이 작업)](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-gateways.html) 

 **관련 동영상:** 
+  [AWS re:Invent 2018: Amazon VPC의 고급 VPC 설계 및 새로운 기능(NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: 여러 VPC를 위한 AWS Transit Gateway 참조 아키텍처(NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP03 확장 및 가용성을 위한 IP 서브넷 할당 계정 확인
<a name="rel_planning_network_topology_ip_subnet_allocation"></a>

 Amazon VPC IP 주소 범위는 가용 영역의 서브넷에 IP 주소를 할당하고 추후 확장을 고려하는 등 워크로드의 요구 사항을 수용할 수 있도록 충분히 커야 합니다. 여기에는 로드 밸런서, EC2 인스턴스 및 컨테이너 기반 애플리케이션이 포함됩니다. 

 네트워크 토폴로지를 계획할 때는 첫 단계로 IP 주소 공간 자체를 정의합니다. 각 VPC에는 RFC 1918 지침에 따라 프라이빗 IP 주소 범위를 할당해야 합니다. 이 프로세스의 일부로 다음 요구 사항을 준수하십시오. 
+  리전당 두 개 이상의 VPC에 대한 IP 주소 공간을 허용합니다. 
+  VPC 내에서 여러 가용 영역에 걸쳐 있는 여러 서브넷에 공간을 허용합니다. 
+  사용되지 않은 CIDR 블록 공간은 향후 확장을 위해 항상 VPC 내에 남겨둡니다. 
+  기계 학습용 스팟 플릿, Amazon EMR 클러스터 또는 Amazon Redshift 클러스터 등 사용할 수 있는 임시 EC2 인스턴스 플릿의 요구 사항을 충족할 IP 주소 공간이 있는지 확인합니다. 
+  참고로 각 서브넷 CIDR 블록에서 처음 4개의 IP 주소와 마지막 IP 주소는 예약되므로 사용할 수 없습니다. 
+  대규모 VPC CIDR 블록 배포를 계획해야 합니다. VPC에 할당된 초기 VPC CIDR 블록은 변경 또는 삭제가 불가능하지만 중첩되지 않은 추가 CIDR 블록을 VPC에 추가할 수 있습니다. 서브넷 IPv4 CIDR은 변경할 수 없지만 IPv6 CIDR은 변경할 수 있습니다. 가능한 최대 규모(/16)의 VPC를 배포하면 IP 주소 수가 65,000개를 초과하게 됩니다. 기본 10.x.x.x IP 주소 공간에만 255개의 VPC를 프로비저닝할 수 있습니다. 따라서 규모를 너무 작게 하는 것보다 지나치다 싶을 만큼 큰 규모로 배포해야 VPC를 더 쉽게 관리할 수 있습니다. 

 **일반적인 안티 패턴:** 
+  크기가 작은 VPC 생성 
+  작은 서브넷을 생성한 다음, 확장 시에 서브넷을 구성에 추가 
+  Elastic Load Balancer가 사용할 수 있는 IP 주소 수를 잘못 추정 
+  트래픽이 많은 여러 로드 밸런서를 동일한 서브넷에 배포 

 **이 모범 사례 정립의 이점:** 이렇게 하면 워크로드의 증가를 수용하고 확장 시 가용성을 계속 제공할 수 있습니다. 

 **이 모범 사례를 정립하지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  성장, 규정 준수 및 다른 제품과 통합을 수용할 수 있도록 네트워크 계획을 수립합니다. 성장은 과소 평가될 수 있고 규정 준수는 변경될 수 있으며 적절한 계획 없이는 프라이빗 네트워크 연결을 구현하기가 어려울 수 있습니다. 
  +  서비스 요구 사항, 지연 시간, 규정, DR(재해 복구) 요구 사항을 기준으로 관련 AWS 계정 및 리전을 선택합니다. 
  +  지역 VPC 배포에 대한 요구 사항을 파악합니다. 
  +  VPC 규모를 파악합니다. 
    +  다중 VPC 연결을 배포할 것인지 여부를 결정합니다. 
      +  [Transit Gateway란 무엇일까요?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 
      +  [단일 리전 다중 VPC 연결](https://aws.amazon.com/answers/networking/aws-single-region-multi-vpc-connectivity/) 
    +  규정 요구 사항에 따라 분리된 네트워킹이 필요한지 결정합니다. 
    +  VPC를 최대한 큰 규모로 만듭니다. VPC에 할당된 초기 VPC CIDR 블록은 변경 또는 삭제가 불가능하지만 중첩되지 않은 추가 CIDR 블록을 VPC에 추가할 수 있습니다. 그러나 이 경우 주소 범위를 분할될 수 있습니다. 
    +  VPC를 최대한 큰 규모로 만듭니다. VPC에 할당된 초기 VPC CIDR 블록은 변경 또는 삭제가 불가능하지만 중첩되지 않은 추가 CIDR 블록을 VPC에 추가할 수 있습니다. 그러나 이 경우 주소 범위를 분할될 수 있습니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [APN 파트너: 네트워킹 계획을 지원할 수 있는 파트너](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [네트워크 인프라에 대한 AWS Marketplace](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Amazon Virtual Private Cloud 연결 옵션 백서](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [여러 데이터 센터 고가용 네트워크 연결](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [단일 리전 다중 VPC 연결](https://aws.amazon.com/answers/networking/aws-single-region-multi-vpc-connectivity/) 
+  [Amazon VPC란 무엇입니까?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 

 **관련 동영상:** 
+  [AWS re:Invent 2018: Advanced VPC Design and New Capabilities for Amazon VPC(Amazon VPC에 대한 VPC 설계 및 새로운 기능)(NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: AWS Transit Gateway reference architectures for many VPCs(여러 VPC를 위한 AWS Transit Gateway 참조 아키텍처)(NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP04 다대다 메시보다 허브 앤드 스포크 토폴로지 선호
<a name="rel_planning_network_topology_prefer_hub_and_spoke"></a>

 셋 이상의 네트워크 주소 공간(예: VPC와 온프레미스 네트워크)이 VPC 피어링, AWS Direct Connect 또는 VPN을 통해 연결되는 경우 AWS Transit Gateway가 제공하는 것과 같은 허브 앤드 스포크 모델을 사용합니다. 

 이러한 네트워크가 두 개 뿐인 경우에는 서로 연결하면 되지만 네트워크 수가 증가하면 이 메쉬 기반 연결의 복잡성이 크게 증가합니다. AWS Transit Gateway는 유지 관리가 간편한 허브 앤드 스포크 모델을 제공하므로 여러 네트워크에 걸쳐 트래픽을 라우팅할 수 있습니다. 

![\[AWS Transit Gateway를 사용하지 않는 경우를 보여주는 다이어그램\]](http://docs.aws.amazon.com/ko_kr/wellarchitected/2022-03-31/framework/images/without-transit-gateway.png)


![\[AWS Transit Gateway를 사용하는 경우를 보여주는 다이어그램\]](http://docs.aws.amazon.com/ko_kr/wellarchitected/2022-03-31/framework/images/with-transit-gateway.png)


 **일반적인 안티 패턴:** 
+  VPC 피어링을 사용하여 2개 이상의 VPC 연결 
+  각 VPC마다 여러 BGP 세션을 설정하여 여러 AWS 리전에 분산된 Virtual Private Cloud(VPC)에 걸쳐 있는 연결 설정 

 **이 모범 사례 정립의 이점:** 네트워크 수가 증가하면 이러한 메시 기반 연결의 복잡성이 크게 증가합니다. AWS Transit Gateway는 유지 관리가 간편한 허브 앤드 스포크 모델을 제공하므로 여러 네트워크에 트래픽을 라우팅할 수 있습니다. 

 **이 모범 사례를 정립하지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  다대다 메시보다 허브 앤드 스포크 토폴로지를 선호합니다. 셋 이상의 네트워크 주소 공간(VPC, 온프레미스 네트워크)이 VPC 피어링, AWS Direct Connect 또는 VPN을 통해 연결되는 경우 AWS Transit Gateway가 제공하는 것과 같은 허브 앤드 스포크 모델을 사용합니다. 
  +  이러한 네트워크가 두 개뿐인 경우에는 서로 연결하면 되지만 네트워크 수가 증가하면 이 메시 기반 연결의 복잡성이 크게 증가합니다. AWS Transit Gateway는 유지 관리가 간편한 허브 앤드 스포크 모델을 제공하므로 여러 네트워크에 걸쳐 트래픽을 라우팅할 수 있습니다. 
    +  [Transit Gateway란 무엇일까요?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [APN 파트너: 네트워킹 계획을 지원할 수 있는 파트너](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [네트워크 인프라에 대한 AWS Marketplace](https://aws.amazon.com/marketplace/b/2649366011) 
+  [여러 데이터 센터 고가용 네트워크 연결](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [VPC 엔드포인트 및 VPC 엔드포인트 서비스(AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) 
+  [Amazon VPC란 무엇입니까?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [Transit Gateway란 무엇일까요?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 

 **관련 동영상:** 
+  [AWS re:Invent 2018: Advanced VPC Design and New Capabilities for Amazon VPC(Amazon VPC에 대한 VPC 설계 및 새로운 기능)(NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: AWS Transit Gateway reference architectures for many VPCs(여러 VPC를 위한 AWS Transit Gateway 참조 아키텍처)(NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP05 연결된 모든 프라이빗 주소 공간에서 겹치지 않는 프라이빗 IP 주소 범위 적용
<a name="rel_planning_network_topology_non_overlap_ip"></a>

 VPN을 통해 피어링되거나 연결된 경우 각 VPC의 IP 주소 범위가 겹치지 않아야 합니다. 마찬가지로, VPC와 온프레미스 환경 간의 IP 주소 충돌 또는 사용하는 다른 클라우드 공급자와의 IP 주소 충돌을 방지해야 합니다. 필요한 경우 프라이빗 IP 주소 범위를 할당할 수 있어야 합니다. 

 IPAM(IP 주소 관리) 시스템을 사용하는 것이 도움이 될 수 있습니다. AWS Marketplace에서 여러 IPAM을 사용할 수 있습니다. 

 **일반적인 안티 패턴:** 
+  VPC에서 온프레미스 또는 회사 네트워크와 동일한 IP 범위 사용 
+  워크로드를 배포하는 데 사용되는 VPC의 IP 범위를 추적하지 않음 

 **이 모범 사례 수립의 이점:** 네트워크를 능동적으로 계획하면 상호 연결된 네트워크에서 동일한 IP 주소가 여러 번 사용되는 것을 방지할 수 있습니다. 이렇게 하면 다른 애플리케이션을 사용하는 워크로드의 일부에서 라우팅 문제가 발생하는 것을 방지할 수 있습니다. 

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  CIDR 사용을 모니터링 및 관리합니다. AWS에서 잠재적인 사용량을 평가하고, 기존 VPC에 CIDR 범위를 추가하고, VPC를 생성하여 사용량을 계획적으로 늘릴 수 있습니다. 
  +  현재 CIDR 사용량을 파악합니다(예: VPC, 서브넷). 
    +  서비스 API 작업을 사용하여 현재 CIDR 사용량을 파악합니다. 
  +  현재 서브넷 사용량을 파악합니다. 
    +  서비스 API 작업을 사용하여 각 리전의 VPC당 서브넷 정보를 수집합니다. 
      +  [DescribeSubnets](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html) 
    +  현재 사용량을 기록합니다. 
    +  중첩되지 않는 IP 범위를 생성했는지 판단합니다. 
    +  여유 용량을 계산합니다. 
    +  중첩된 IP 범위를 파악합니다. 중첩되는 범위를 연결해야 하는 경우 새 주소 범위로 마이그레이션하거나 AWS Marketplace에서 제공하는 Network and Port Translation(NAT) 어플라이언스를 사용할 수 있습니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [APN 파트너: 네트워킹 계획을 지원할 수 있는 파트너](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [네트워크 인프라에 대한 AWS Marketplace](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Amazon Virtual Private Cloud 연결 옵션 백서](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [여러 데이터 센터 고가용 네트워크 연결](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [Amazon VPC란 무엇입니까?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [IPAM이란?](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html) 

 **관련 동영상:** 
+  [AWS re:Invent 2018: Advanced VPC Design and New Capabilities for Amazon VPC(Amazon VPC에 대한 고급 VPC 설계 및 새로운 기능)(NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: AWS Transit Gateway reference architectures for many VPCs(여러 VPC를 위한 AWS Transit Gateway 참조 아키텍처)(NET406-R1)](https://youtu.be/9Nikqn_02Oc) 