AWS 환경 모범 사례 구축
다중 계정 AWS 환경을 설정해야 하는 이유는 무엇인가요?
AWS를 통해 가장 유연하고 안전한 클라우드 환경에서 더 빠르게 실험하고, 혁신하고, 크기를 조정할 수 있습니다. AWS가 애플리케이션의 보안을 보장하는 중요한 수단은 AWS 계정입니다. AWS 계정은 AWS 리소스에 대한 자연 보안, 액세스 권한 및 결제 경계를 제공하고 리소스 독립성과 격리를 달성할 수 있도록 합니다. 예를 들어 계정 외부의 사용자는 기본적으로 리소스에 액세스할 수 없습니다. 마찬가지로 사용하는 AWS 리소스 비용은 계정에 할당됩니다. 단일 계정으로 AWS 여정을 시작할 수 있지만 AWS에서는 워크로드의 규모와 복잡성이 증가함에 따라 여러 계정을 설정할 것을 권장합니다. 다중 계정 환경을 사용하는 것은 AWS 모범 사례로 다음과 같은 여러 이점을 제공합니다.
- 다양한 요구 사항에 대한 신속한 혁신 – 회사 내 여러 팀, 프로젝트 또는 제품에 AWS 계정을 할당하여 각자의 보안 요구 사항을 허용하면서 빠르게 혁신하도록 보장할 수 있습니다.
- 간소화된 결제 – 여러 AWS 계정을 사용하면 AWS 요금이 부과된 제품 또는 서비스 라인을 식별할 수 있어서 AWS 비용을 할당하는 방법이 간소화됩니다.
- 유연한 보안 제어 – 여러 AWS 계정을 사용하여 특정 보안 요구 사항이 있거나 HIPAA 또는 PCI와 같은 규정 준수에 대한 엄격한 지침을 충족해야 하는 워크로드 또는 애플리케이션을 격리할 수 있습니다.
- 비즈니스 프로세스에 쉽게 적응 – 다양한 운영, 규제 및 예산 요구 사항이 있는 회사 비즈니스 프로세스 상의 다양한 요구 사항을 가장 잘 반영하는 방식으로 여러 AWS 계정을 쉽게 구성할 수 있습니다.
궁극적으로 다중 계정 AWS 환경을 사용하면 클라우드를 통해 더 빠르게 이동하고 차별화된 제품 및 서비스를 구축하는 동시에 안전하고 확장 가능하며 탄력적인 방식으로 이를 수행할 수 있습니다. 하지만 다중 계정 AWS 환경을 구축하려면 어떻게 해야 하나요? 사용할 계정 구조, 구현해야 하는 정책 및 가드 레일 또는 감사를 위한 환경 설정 방법과 같은 질문이 있을 수 있습니다.
이 가이드의 나머지 부분에서는 흔히 ‘랜딩 존’이라고 하는, AWS에서 권장하는 안전하고 생산적인 다중 계정 AWS 환경 구축 요소를 안내합니다. 이는 시간이 지나며 AWS 워크로드가 증가함에 따라 유연성을 허용하면서 초기 프레임워크를 구축하는 데 사용할 수 있는 모범 사례를 나타냅니다.
다중 계정 AWS 환경 설정을 위한 모범 사례
잘 설계된 다중 계정 AWS 환경 기반은 여러 계정을 중앙에서 관리하고 통제할 수 있는 AWS 서비스인 AWS Organizations입니다. 시작하기 전에 몇 가지 용어에 대해 알아보겠습니다. 조직 단위(OU)는 AWS Organization에 있는 계정의 논리적 그룹입니다. OU를 사용하면 계정을 계층 구조로 구성하고 관리 제어를 더 쉽게 적용할 수 있습니다. AWS Organizations 정책은 이러한 제어를 적용하는 데 사용합니다. 서비스 제어 정책(SCP)은 조직의 계정에서 수행할 수 있는 Amazon EC2 실행 인스턴스와 같은 AWS 서비스 작업을 정의하는 정책입니다
먼저 어떤 계정 그룹 또는 OU를 만들어야 하는지 생각하세요. OU는 회사의 보고 구조를 반영하기보다는 기능 또는 공통 제어 집합을 기반으로 해야 합니다. AWS에서는 보안과 인프라를 염두에 두고 시작하는 것을 권장합니다. 대부분의 기업에는 전체 조직에 이러한 요구 사항에 대한 서비스를 제공하는 중앙 집중식 팀이 있습니다. 따라서 다음과 같은 특정 기능에 대한 기본 OU 세트를 만드는 것을 권장합니다.
- 인프라: 네트워킹 및 IT 서비스와 같은 공유 인프라 서비스에 사용합니다. 필요한 인프라 서비스 유형별 계정을 만드세요.
- 보안: 보안 서비스에 사용합니다. 로그 아카이브, 보안 읽기 전용 액세스, 보안 도구 및 비상용 계정을 만드세요.
대부분의 회사가 프로덕션 워크로드에 대해 여러 정책 요구 사항을 가지고 있다는 점을 감안할 때 인프라 및 보안에는 비프로덕션(SDLC) 및 프로덕션(Prod)에 대한 중첩 OU가 있을 수 있습니다. SDLC OU 계정은 비프로덕션 워크로드를 호스팅하므로 다른 계정에 프로덕션 종속성이 없어야 합니다. 수명 주기 단계 간 OU 정책에 변동이 있는 경우 SDLC를 여러 OU(예: 개발 및 사전 프로덕션)로 분할할 수 있습니다. Prod OU 계정은 프로덕션 워크로드를 호스팅합니다.
OU 수준에서 정책을 적용하여 요구 사항에 따라 Prod 및 SDLC 환경을 관리합니다. 일반적으로 OU 수준에서 정책을 적용하는 것이 정책 관리 및 잠재적인 문제 해결을 단순화하므로 개별 계정 수준보다 더 나은 방법입니다.
중앙 서비스가 배치되면 제품이나 서비스를 구축하거나 실행하는 것과 직접적으로 관련된 OU를 만드는 것이 좋습니다. 많은 AWS 고객은 기반을 구축한 후 이러한 OU를 구축합니다.
- 샌드박스: 개별 개발자가 AWS 서비스를 실험하는 데 사용할 수 있는 AWS 계정을 보유합니다. 이러한 계정이 내부 네트워크에서 분리될 수 있는지 확인하고 과도한 사용을 방지하기 위해 사용 상한선을 설정하세요.
- 워크로드: 외부용 애플리케이션 서비스를 호스팅하는 AWS 계정을 포함합니다. 프로덕션 워크로드를 격리하고 엄격하게 제어하려면 SDLC 및 Prod 환경(기본 OU 환경과 유사)에서 OU를 구성해야 합니다.
이제 기본 OU와 프로덕션 지향 OU가 모두 설정되었으므로 특정 요구 사항에 따라 유지 관리 및 지속적인 확장을 위해 OU를 추가하는 것이 좋습니다. 다음은 기존 AWS 고객 사례를 기반으로 한 몇 가지 공통 주제입니다.
- 정책 준비: 제안된 정책 변경 사항을 조직에 광범위하게 적용하기 전에 테스트할 수 있는 AWS 계정을 보유합니다. 의도한 OU 계정 수준에서 변경 사항을 구현하여 시작하고 다른 계정, OU 및 나머지 조직 전반에 천천히 적용합니다.
- 일시 중지됨: 해지되어 조직에서 삭제되기를 기다리는 AWS 계정을 포함합니다. 모든 작업을 거부하는 SCP를 이 OU에 연결합니다. 계정을 복원해야 하는 경우 추적 가능성에 대한 세부 정보를 통해 계정에 태그를 지정했는지 확인합니다.
- 개별 비즈니스 사용자: 비즈니스 생산성 관련 애플리케이션 생성(예: 보고서 또는 파일을 파트너와 공유하기 위해 S3 버킷을 설정)이 필요할 수 있는 비즈니스 사용자(개발자 아님)를 위한 AWS 계정이 포함된 제한된 액세스 OU입니다.
- 예외: 워크로드 OU에 정의된 것과 다른, 고도로 맞춤화된 보안 또는 감사 요구 사항이 있는 비즈니스 사용 사례에 사용되는 AWS 계정을 보유합니다. 예를 들어 비공개의 새 애플리케이션 또는 기능을 위해 특별히 AWS 계정을 설정합니다. 계정 수준에서 SCP를 사용하여 맞춤형 요구 사항을 충족합니다. CloudWatch Events 및 AWS Config 규칙을 사용한 탐지 및 대응 시스템 설정을 고려하세요.
- 배포: CI/CD 배포용 AWS 계정을 포함합니다. 워크로드 OU(Prod 및 SDLC)의 계정과 비교하여 CI/CD 배포에 대한 다른 거버넌스 및 운영 모델이 있는 경우 이 OU를 생성할 수 있습니다. CI/CD 배포는 중앙 팀에서 운영하는 공유 CI/CD 환경에 대한 조직의 종속성을 줄이는 데 도움이 됩니다. 워크로드 OU 애플리케이션에 대한 각 SDLC/Prod AWS 계정 세트에 대해 배포 OU에 CI/CD용 계정을 생성합니다.
- 과도기: 기존 계정 및 워크로드를 조직의 표준 영역으로 이동하기 전에 임시 보관 영역으로 사용됩니다. 이는 계정이 인수된 회사의 일부이거나, 이전에 서드 파티에서 관리되었거나, 이전 조직 구조의 레거시 계정이기 때문일 수 있습니다.
결론
잘 설계된 다중 계정 전략은 보안 및 확장성 요구 사항을 충족하는 동시에 AWS에서 더 빠르게 혁신하는 데 도움이 됩니다. 이 페이지에 설명된 프레임워크는 AWS 여정의 시작점으로 사용해야 하는 AWS 모범 사례를 나타냅니다.
시작하려면 AWS Organizations 시작 가이드를 참조하여 자체적으로 다중 계정 AWS 환경을 구축하세요. 또는 AWS Control Tower를 사용하여 클릭 몇 번으로 안전한 초기 AWS 환경을 빠르게 설정할 수 있습니다.