Landing Zone은 확장 가능하고 보안적으로 안전하며, 잘 설계된(Well-Architected) 다중 계정 환경을 의미한다.
조직이 보안 및 인프라 환경에서 안심하고 워크로드와 애플리케이션을 신속하게 시작하고 배포할 수 있는 출발점이다.
Landing Zone을 구축하려면 조직의 성장 및 비즈니스 목표에 따라 “계정 구조”, “네트워킹”, “보안 및 액세스 관리”에 대한 기술 및 비즈니스 결정을 내려야한다.
사용자가 규모에 맞게 AWS를 사용하기 시작할 때, AWS 환경 구축을 위한 “규범적 지침”과 “접근 방식”을 제공한다.
AWS 모범 사례는 격리 및 영향 감소 범위를 위해 리소스 및 워크로드를 여러 AWS 계정(리소스 컨테이너)으로 격리해야 할 필요성을 중심으로 한다.
다중 계정 프레임워크
얼마나 많은 AWS 계정을 보유해야 하는지에 대해 “정확한 답변(one-size-fits-all)”은 없지만, 둘 이상의 AWS 계정을 생성하는 것이 좋다.
여러 계정을 사용하는 경우 높은 수준의 리소스 및 보안 격리를 제공받을 수 있다.
아래의 목록을 질문을 해보고 자신의 환경이 다중 AWS 계정이 필요한 환경인지 확인할 필요가 있다.
비즈니스 워크로드 간에 관리 격리가 필요한가.
비즈니스에 제한된 가시성과 워크로드 검색 가능성이 필요한가.
장애 전파 반경을 최소화하기 위해 비즈니스에 격리가 필요한가.
비즈니스에 복구 및 감사 데이터의 강력한 격리가 필요한가.
서비스를 운영할 때 단일 계정으로 충분하지 않은 대표적인 이유는 아래와 같다.
Security Controls
애플리케이션마다 보안 프로파일이 다르므로 애플리케이션과 관련된 제어 정책 및 메커니즘이 서로 다를 수 있다.
감사자(auditor)와 대화하고 PCI(결제 카드 산업) 워크로드를 호스팅하는 단일 계정을 가리키는 것이 더 쉽다.
Isolation
계증은 보안 보호의 단위이다.
잠재적 위험 및 보안 위협은 다른 사람에게 영향을 주지 않고 계정 내에 포함되어야 한다.
여러 팀 또는 다른 보안 프로필로 인해 한 계정을 서로 격리해야 하는 다양한 보안 요구 사항이 있을 수 있다.
Data isolation
데이터 저장소를 계정에 분리하면 해당 데이터 저장소에 액세스하고 관리할 수 있는 사용자 수가 제한된다.
여기에는 매우 개인적인 데이터에 대한 노출이 포함되며, “일반 데이터 보호 규정(GDPR)” 준수에 도움이 된다.
Many teams
팀마다 각기 다른 책임과 리소스 요구 사항이 있으며, 각 팀은 같은 계정에서 서로를 넘어서는 안된다.
Business process
사업부 또는 제품마다 목적과 프로세스가 다를 수 있다.
비즈니스별 요구 사항을 충족하려면 다른 계정을 설정해야 한다.
Billing
계정은 전송 요금 등을 포함하여 청구 수준에서 항목을 구분할 수 있는 유일한 방법이다.
여러 계정을 사용하면 여러 사업부, 직무 팀 또는 개별 사용자 수준에서 청구 항목을 구분할 수 있다.
Limit allocation
계정당 한도가 적용된다. (예를 들어, 한 계정에 최대 VPC는 5개)
워크로드를 여러 계정으로 분리하면 한도를 소비하거나 리소스를 과도하게 프로비저닝하여 다른 애플리케이션이 의도한 대로 작동하지 못하게 되는 것을 방지할 수 있다.
구축
Landing Zone을 구축하는 방법으로는 “AWS 관리형 서비스인 Control Tower를 사용”하거나, “파트너와 협력하여 자체적인 환경을 구축”하는 두 가지 방법이 있다.
새로 도입하려는 사용자는 Control Tower를 사용하여 도입하는 것이 권장되지만, 조직에 가장 적합한 결정을 내릴 수 있도록 각 접근 방식의 차이점과 기능을 이해하는 것이 중요하다.
Landing Zone을 구축하는 두 가지 방식은 아래와 같은 장점과 절충안이 있다.
Solution
장점
절충안
AWS Control Tower
- 완전 관리형 서비스.
- AWS에서 제겅된 가드레일 및 규정 준수 정책이 기본적으로 적용.
- 모니터링 및 규정 준수 상태를 위한 중앙 대시보드.
- 새 계정 프로비저닝을 위한 Account Factory.
- 확장성 및 사용자 지정은 AWS Control Tower 솔루션에 대한 사용자 지정에서 제공.
- AWS Control Tower는 AWS 지역 서비스 목록에 표시된 AWS 지역에서 지원.
AWS Organizations 고객 또는 파트너가 구축한 맞춤형 솔루션 사용
- 사용자 지정 구축 솔루션.
- 고객 또는 파트너가 모든 개발 및 코딩을 소유.
- 개곡 또는 파트너가 통합 및 구현을 담당.
- 모든 다중 계정 환경은 AWS Organizations로 부터 제공받고, AWS Organizations를 구축하여 관리할 수 있는 기본 인프라와 기능을 제공한다.
- AWS Organizations에서 제공하는 다중 계정 전략 지침을 따라 비즈니스에 맞게 환경을 사용자 지정하여 설정할 수 있다.
AWS Control Tower
AWS Control Tower는 즉시 사용 가능한 사전 패키징된 솔루션으로 규범적 지침과 완전 관리형 환경을 만들 수 있다.
다중 계정 모범 사례를 기반으로 Landing Zone을 설정하고 ID 및 액세스 관리를 중앙 집중화하며 보안 및 규정 준수를 위해 사전 구성된 거버넌스 규칙을 설정한다.
AWS Control Tower는 모범 사례, 자격 증명, 연동 액세스 및 계정 구조를 사용하여 새로운 Landing Zone 설정을 자동화하며 구현된 설계에는 아래와 같은 기능들이 있다.
AWS Organizations를 사용하는 다중 계정 환경
IAM, IAM Identity Center를 사용한 교차 계정 보안 감사
ID 센터 기본 디렉토리를 사용한 ID 관리
AWS CloudTrail 및 AWS Config를 통한 중앙 집중식 로깅을 통한 S3에 로그 저장
“가드레일”은 전체 AWS 환경에 대한 지속적인 거버넌스를 제공하는 규칙으로 예방적이거나 탐지적일 수 있다.
“예방 가드레일”은 AWS Organizations의 일부인 서비스 제어 정책(SCP)을 사용하여 구현된다.
“탐지 가드레일”은 AWS Config Rules 및 AWS Lambda 함수를 사용하여 구현된다.
AWS Control Tower 가드레일의 예시는 아래와 같다.
루트 사용자에 대한 액세스 키 생성 금지
RDP를 통한 인터넷 연결 금지
S3 버킷에 대한 공개 쓰기 액세스 금지
EC2 인스턴스에 연결되지 않은 EBS 볼륨 허용 금지
AWS Control Tower는 Landing Zone의 시작점이기 때문에, Landing Zone을 구축할 때, 고유한 요구 사항에 따라 네트워킹, 액세스 관리 및 보안에 대한 전략을 결정해야 한다.
Custom-built Landing Zone
고유한 맞춤형 Landing Zone 솔루션을 구축하도록 선택할 수 있다.
이러한 방식으로 구축하는 경우 ID 및 액세스 관리, 거버넌스, 데이터 보안, 네트워크 설계 및 로깅을 시작하려면 기본 환경을 구현해야 한다.
모든 환경 구성 요소를 처음부터 새로 빌드하거나, 사용자 지정 솔루션에서만 지원할 수 있는 요구 사항이 있는 경우에만 권장되는 방식이다.
배포된 솔루션을 관리, 업그레이드와 같은 유지 보수 작업이 필요하기 때문에 AWS에 대한 높은 전문 지식이 있어야 한다.
만약 AWS Control Tower가 사용자 지정 요구 사항을 충족하지 않는 경우, AWS CloudFormation을 기반으로 한 Landing Zone인 “AWS Landing Zone”을 사용할 수 있다.
권장 접근 방식
새롭게 생성하는 모든 Landing Zone은 AWS Control Tower로 시작하는 것이 권장된다.
AWS Control Tower는 초기 규범적 Landing Zone 구성을 구축하고 즉시 사용 가능한 가드레일 및 설계를 사용하고, AWS Control Tower Account Factory를 사용하여 새 계정을 생성하는 데 도움이 된다.
AWS Control Tower Landing Zone 또한 사용자 지정이 가능하며, AWS Control Tower 수명 주기 이벤트 및 알림 기능과 통합되어 적용 가능한 AWS Control Tower 수명 주기 이벤트에 대한 응답으로 Landing Zone 사용자 지정을 푸시한다.