[AWS] Control Tower 란?

0. Multi-Account Strategy

클라우드 환경을 관리할 때 각 프로젝트 또는 사업 단위로 IT 자원에 맞춰 계정을 생성하여 관리하다 보면 여러 계정을 사용하게 되고, 이는 멀티 계정 관리에 대한 통합적 관리의 필요성을 야기하였습니다.

비즈니스 민첩성 유지는 관리/제어의 유연성과 상반 관계,

대개 고객사들의 입장에서는 클라우드가 빠르게 변화하는 기술로 받아들이고 있지만, 통제의 관점에선 빠르게 변할수록 통제가 어렵기에 비즈니스 민첩성의 유지와 관리/제어의 유연성은 상반 관계를 이루고 있을 수밖에 없었습니다.

출처 : AWS Control Tower 세미나 참고 자료

멀티 클라우드의 환경 관점에서는 클라우드 고객 관리 및 운영에 대한 다음과 같은 페인포인트(Pain Points)가 발생하였고, 이는 Complexity(복잡성), Control(제어), Management(관리)를 운영 관리의 당면 과제로 요구하기 시작하였습니다.

클라우드 고객의 관리/운영 Pain Points,

[ Complexity (복잡성) ]

  • 소수의 인프라 인력으로 많은 계정 및 자원 관리 수행
  • 글로벌 서비스 확장에 따른 관리 부담 증가

[ Control (제어) ]

  • 보안 관리 중앙 통제 및 모니터링 기능 확보
  • 효율적인 서비스 통제 및 운영 환경 보안 유지

[ Management (관리) ]

  • 클라우드 운영 및 관리 기준의 모니터링 및 유지
  • 운영 부담 경감

————————————————————————————————————————————-

그렇다면 이러한 페인포인트(Pain Points)를 해결하기 위한 멀티 클라우드 환경에서 우리에게 필요한 기능들은 무엇일까요?

– 계정 관리 / 자동 계정 생성
– 보안 가드레일
– 통합 사용자 / 권한 관리
– 규정 준수 상태 / 모니터링을 위한 대시보드
이러한 요구에 따라 AWS는 다음과 같은 전략을 수립하였습니다.

Many Teams
독립된 팀을 위해 빠르고 독점적인 프로비저닝 및 관리

Biling
AWS 계정 내에서 사용되는 리소스를 해당 계정을 담당하는 사업부에 할당할 수 있는 청구 간소화

Business Process
운영, 규정 및 예산 요구사항이 서로 다른 비즈니스 프로세스를 반영하도록 AWS 계정 구성

Isolation & Security
위험 프로필이 유사한 워크로드의 계정 간 격리 및 통합을 통해 엄격한 보안 경계 강화

————————————————————————————————————————————-

1. AWS Control Tower 서비스란?

AWS Control Tower 서비스는 AWS 클라우드의 모든 조직 및 계정(Accounts)을 대규모로 보안, 운영 및 보안 규칙을 적용한 채로 빠르고 일관되고, 안전하게 프로비저닝하여 관리하는 거버닝 서비스입니다.

계정 관리 / 보안 요구사항을 위한 AWS Control Tower,
출처 : AWS – 계정 관리 / 보안 요구사항을 위한 AWS Control Tower

Control Tower 서비스의 가장 큰 이점은 통제성(Governance)과 민첩성(Agility)을 양립시켜 줄 수 있는 서비스라는 것으로 고객의 계정이 아무리 많더라도 관리 측면에서 [ 보안, 컴플라이언스, 운영, 비용 관리 ]에 대한 효율성을 제공하고, 민첩성 측면에선 [ 셀프 서비스, 신속한 실험, 변화에 빠른 대응 ] 등을 활용하여 쉽고 빠르게 새 계정을 프로비저닝하고 관리할 수 있는 이점을 제공하는 효율적인 솔루션입니다.

————————————————————————————————————————————-

2. Control Tower 작동 원리

AWS Control Tower의 작동 원리는 ‘랜딩존’이라는 모든 AWS 리소스에 대해 잘 설계된 다중 계정 환경을 활용하여 모든 AWS 계정에 정책을 적용할 수 있는 구조라고 볼 수 있습니다.

Control Tower 작동 방식 다이어그램
출처 : AWS Control Tower – 개요

먼저 Control Tower는 안전하고 호환성 높은 다중 계정 AWS 환경을 설정하고 제어하기 위한 서비스로, 모범사례 Blueprint들을 기반으로 랜딩 존 설정을 자동화할 수 있습니다. 이후 AWS 워크로드에 대한 지속적인 거버넌스를 위해 가드레일을 적용한 뒤, 계정 팩토리와 함께 계정 프로비저닝 워크플로우를 자동화할 수 있으며, 마지막으로 조직 단위, 계정 및 가드 레일에 대한 대시보드를 통해 가시성을 확보하고 이를 통해 관제하는 원리로 동작한다고 볼 수 있습니다.

멀티 계정 관리 전략에 따라 수립된 AWS Control Tower의 주요 기능은 다음과 같습니다.

1. 베스트 프랙티스 기반의 자동화된 랜딩 존 구성을 제공

2. 정책 관리를 위한 AWS 베스트 프랙티스 가드레일

3. 계정 프로비저닝을 위한 어카운트 팩토리 (Account Factory)

4. 가시성 확보 및 추가적인 조치를 위한 대시보드

5. 빌트인 ID 및 권한 관리 (IAM)

6. 사전 구성된 로그 아카이브 및 계정에 대한 감사 엑세스

7. 빌트인 모니터링 및 Notification 환경 구성

8. AWS Marketplace를 통해 제공되는 ISV 솔루션으로 확장 가능

1. 베스트 프랙티스 기반 자동화된 랜딩 존 구성을 제공

출처 : AWS Korea – Control Tower 세미나 참고자료

랜딩존이란 고객이 클라우드 환경을 설정할 때 기본적으로 어카운트를 생성하면 보통 아무것도 없는데, 이때 전체 보안적인 구조나 트레일 구조 , 모니터링 구조, 관리 구조를 기본으로 세팅하여 구성하여 제공하는 것을 랜딩존이라고 하는데, 이를 통해 비즈니스 로직에 집중하고, IT 자원 관리에 집중하여 수행할 수 있는 환경을 제공할 수 있는 서비스라고 이해할 수 있습니다.

특히나 멀티 어카운트 환경에서 이러한 랜딩존을 기반으로 해서 어카운트가 확장되는 것을 베스트 프렉티스 아키텍처로 제시를 하는 부분인데, 기존의 고객들이 랜딩존을 생성하기 위해선 MSP가 상당한 노력과 수고를 들여야하는데, 이러한 수작업의 노력들을 자동으로 생성할 수 있도록 랜딩존을 제공한다는 것이 Control Tower 서비스의 가장 큰 특징입니다.

일반적인 계정 생성은 각 계정에 따라 회원 가입과 청구서가 각각 개별적으로 분리되어 제공되지만, Control Tower는 모든 계정의 로그를 한 곳에서 확인할 수 있는 랜딩존이라는 다중 계정 환경의 대시보드를 제공하여, 모든 OU(Organization Unit), 계정, 사용자 및 기타 리소스를 포함하여 확인 및 관리할 수 있으며, 이는 Account Factory를 통해 사업 및 프로젝트의 규모에 맞춰 새로운 계정을 생성하여 기업의 요구사항에 맞게 확장할 수 있어 편리합니다.

멀티 어카운트 환경에서 여러 계정을 사용할 때 가장 불편한 부분은 빌링이 여러개로 청구되는 부분과 이러한 클라우드 트레일 로그 변경 기록을 하나하나 남겨야하는 부분, 추후 이 로그들을 한 번에 보기 불편하다는 부분 등 이러한 필수불가결한 환경 문제들에 대한 디파인을 제공하고 이것을 베스트 프렉티스 기반 랜딩존이라고 볼 수 있습니다.

어카운트는는 빌링을 담당하는 어카운트 밑에 워크로드를 수행하는 어카운트들을 여러 개 생성하는 형태로 배치할 수 있기에 이러한 배치를 통해 비용 발생에 대한 청구들을 ‘매니지먼트 어카운트’라고 불리우는 계정에 한번에 모아서 볼 수 있는 빌링 청구 구조를 만들어내는 것이 가장 큰 이점이라고 할 수 있습니다. 마찬가지로 워크로드에서 발생하는 로그들 역시 로그 아카이브라는 로그를 집계하는 아카이브를 만들어 모든 트레일 로그들을 이쪽으로 집계하도록 설정할 수 있습니다. 또한 보안팀 같은 경우에는 어카운트들의 현황 구성들을 모두 리뷰하고, 검토를 해야하기 때문에 리드할 수 있는 권한을 주는 것이 효율적입니다.

컨트롤 타워가 프로비저닝되면 최초로 생성했던 어카운트는 관리 계정이 되는 것인데, 이를 기준으로 빌딩이 이루어지는 형식으로 이해할 수 있으며, 컨트롤 타워를 프로비저닝 하는 순간, 로그 아카이브 어카운트와 Audit 어카운트를 디폴트로 생성하여, 로그 아카이브 어카운트는 트레이 로고가 모이고, 컨트롤 타워 관리 안에서는 모든 트레일 로고가 중앙으로 집계되도록 설정이 되어, 이 Audit 어카운트가 다른 어카운트를 감사하기 위해 각각의 계정을 만드는게 아닌 SSO를 통해 리드온리의 권한을 부여받아, 이 유저의 권한을 어사인 해주는 SSO가 디폴트로 프로비저닝이 되는 형식입니다.

이러한 환경이 멀티 어카운트를 관리할 때, 가장 기본 구성의 형태라고 볼 수 있고, 이러한 구성이 랜딩존이며, 이것을 디폴트로 만들어주는게 컨트롤 타워 서비스라고 이해할 수 있습니다.

2. 정책 관리를 위한 AWS 베스트 프랙티스 가드레일

출처 : AWS Korea – Control Tower 세미나 참고자료

AWS Control Tower의 가드레일 서비스는 클라우드 자원을 설정할 때 회사가 정한 보안 규칙에서 어긋나지 않도록 막아주는 역할을 의미하는데, 가드레일 서비스는 회사가 정한 보안 규칙에 어긋나지 않게 클라우드 자원들을 유지시킬 수 있는 기능들을 제공한다고 생각하는 서비스로 이해할 수 있습니다.

Control Tower 서비스는 새롭게 개발된 서비스가 아닌 기존에 있던 서비스들[ Organization, SSO, SCP, Config, CloudWatch 등 ]을 조합해서 자동화 기능을 구성해놓은 서비스로, AWS 환경에 대한 지속적인 거버넌스를 제공하는 상위 수준의 보안 정책 규칙을 제공하는데, 이는 AWS Organizations 조직 단위 (OU) 내에서 활성화 할 수 있는 AWS 환경에 대한 특정 거버넌스 정책으로, SCP 라고 하는 Service Control Policies 를 가지고서 통제를 거는 형태와 변경은 가능하지만 정책 위반을 잡아내는 Config 형식으로 두 가지 유형을 제공하고 있습니다.
Enable과 SCP(무조건 막는 정책) 등 의도를 설정하고 정책을 준수하지 않는 리소스 배포를 방지하는 [ 방지 가드레일 ] 유형과 Config rules(모니터링)으로 배포된 리소스들의 부적합을 지속적으로 모니터링하는 [ 감지 가드레일 ]의 유형으로, ‘필수’나 ‘강력한 권장’ 또는 ‘선택 영역’으로 세 가지 범주에서 본 지침을 적용할 수 있습니다. 이러한 규칙에 따라 보안이나 자원 규칙이 어긋나지 않도록 유지해주는 정책 관리 기능이 바로 이 ‘가드레일’ 서비스입니다.

  • AWS CloudFormation을 사용하여 구성 기준 설정
  • 서비스 제어 정책을 사용하여 기본 구성 변경 방지 (방지 가드 레일 용)
  • AWS Config 규칙을 통해 지속적으로 구성 변경 감지 (감지 가드 레일 용)
  • 대시 보드에서 가드 레일 상태 업데이트

3. 계정 프로비저닝을 위한 어카운트 팩토리 (Account Factory)

3-1. (보안 규정이 준수된) 계정 배포 자동화
출처 : AWS Korea – Control Tower 세미나 참고자료
3-2. (보안 규정이 준수된) 계정 배포 자동화 + 서비스 배포 관리
출처 : AWS Korea – Control Tower 세미나 참고자료

Account Factory 서비스는 말 그대로 계정을 만들어내는 공장으로 디폴트로 매니지먼트 어카운트와 로그 어카운트, Audit 어카운트가 기본으로 생성하지만, 기본 계정 이외에 추가적으로 필요한 계정을 새로 생성하고자 한다면 써밍을 통해 새로운 계정을 생성하고, 이를 컨트롤 타워 관리 체계 안으로 편입되는 형식으로 진행됩니다.

어카운트 팩토리의 실제 내부 구성은 서비스 카달로그로 구성이 되어있는 것이며, 이는 자원을 표준화 된 형태의 템플릿으로 배포하는 것이라고 이해할 수 있습니다. 결국, 배포에 필요한 정보들은 어카운트 엘리어스, 이메일 정도만 필요로하며, 배포되는 순간 가드레일이 적용되는 형식입니다.
예를 들어 버지니아에서는 사용할 수 없도록 Preventive 형태의 가드레일을 코리아에만 적용한다면 코리아에만 사용할 수 있도록 정책을 적용할 수 있는 것입니다. 이처럼 각 어카운트 내의 어드민 스트레이터도 바꿀 수 없으며, SCP는 하나의 룰로 적용됩니다. 만약 여기서 계정이 새로 만들어진다면 생성된 순간, 클라우드 포메이션이 이에 따라 서비스를 만들어내는 구조이며, 이러한 구성은 SCP 룰을 통해 아무나 삭제할 수 없도록 설정할 수 있습니다.

이처럼 각 서비스 카달로그의 템플릿을 만들어서 개발자에게는 템플릿에 대한 사용 권한만을 주는 형식으로 접근한다면, 개발자들은 다른 서비스를 고려할 필요 없도록 구성할 수 있으며, 이는 서비스 카달로그의 특성이자 가드레일과 함께한다면 보안규정이 준수된 특성을 활용할 수 있습니다.

인프라 관리 담당자로써 IAM 여러 계정을 생성하여 관리를 해야할 때 겪을 수 있는 가장 큰 문제점은 각 계정별로 아이덴티티가 있어야하고, 빌링이 전부 다르기 때문에 관리자가 변경된다면 권한이 바뀌거나 어카운트에서 자신이 가지고 있는 권한이나 권한에 대한 어사인이 불일치할 수 있는 상황이 발생할 수도 있기 때문에 많은 회사들이 SSO 기반으로 도입하고 있는 추세인데, 이는 컨트롤 타워 서비스를 통해 쉽게 해결할 수 있습니다. 컨트롤 타워 서비스는 SSO 기반으로 자체적으로 디폴트가 구성이 되어 있으며, 아이덴티티와 퍼미션을 중앙에서 관리하기 때문에 계정이 몇백개가 됐건 손쉽고 빠르게 관리할 수 있어 효율적이라고 볼 수 있습니다.

Account Factory는 사내에서 사용할 새로운 AWS 계정 생성을 자동화하는 기능을 제공하고 있어, 새 계정을 프로비저닝 할 때 사전 승인된 계정의 구성을 표준화시켜 하나의 템플릿으로 구성하여 손쉽게 새로운 계정 프로비저닝이 가능합니다. 또한 사전에 승인 된 네트워크 구성과 리전 선택, AWS Service Catalog 등을 사용하여 새 계정을 구성하고, 프로비저닝 할 수 있도록 셀프 서비스를 활성화 할 수 있습니다. 이는 AWS Control Tower는 조직의 계정 프로비저닝 워크플로를 자동화하는 데 도움을 주며 높은 효율성을 제공합니다.

4. 가시성 확보 및 추가적인 조치를 위한 대시보드

출처 : AWS Korea – Control Tower 세미나 참고자료

Control Tower 대시보드는 AWS 환경에 대한 지속적인 가시성을 제공하기 위해 프로비저닝 된 OU 및 계정 수, 활성화 된 가드레일 수 등을 시각화한 대시보드를 제공하여, 이를 통해 해당 가드레일에 대해 OU 및 계정의 상태를 확인할 수 있도록 제공하는 기능입니다.
Control Tower의 대시보드에서는 활성화 된 가드 레일과 관련하여 비준수 리소스 목록도 확인할 수 있으며, 이는 중앙 클라우드 관리자 팀에 랜딩 영역에 대한 지속적인 관제를 가능케하여 기업 전체에 프로비저닝된 계정, 정책 시행을 위해 활성화된 가드레일, 정책 비준수를 지속적으로 감지하기 위해 활성화된 가드레일, 계정 및 OU별로 구성된 비준수 리소스 등을 확인할 수 있도록 제공하여 관리에 대한 효율성을 증진시켜줄 수 있습니다.

랜딩존 생성 후 제공되는 대시보드 서비스는 컨트롤 타워 안에 존재하는 OU(Organization Units)와 Account, Guardrail을 볼 수 있는데, 어떤 OU가 정책 위반 사항이 있는지 등에 대한 현황들을 가시성있게 확인할 수 있는 환경을 제공하고 있습니다. 대시보드상에서 확인되는 Noncompliant 표시는 디텍트에서 오는 것으로, 정책을 위반한 것을 확인할 수 있으며, 또 여러 유저와 계정, 권한을 관리하기 위해서는 SSO와 디렉토리 서비스를 같이 구성하도록 디폴트로 구성되어 있기 때문에 여기서 유저를 만들고, 계정에 퍼미션을 매핑시켜주면 각각 사용할 수 있는 환경이 될 수 있습니다. 이는 어떤 권한으로 접근할지가 딱 데피니션이 되어 환경을 바꿔가면서 쓸 수 있는 형태로, 계정별로 각각 개별적으로 확인하지 않아도 잠재적인 관리나 보안 이슈가 항상 배포되기에 즉각적으로 시각화하여 확인할 수 있습니다.

5. 멀티 계정 환경에서 ID 및 엑세스의 중앙 집중화를 수행

출처 : AWS Korea – Control Tower 세미나 참고자료

AWS Control Tower 서비스는 멀티 계정 환경에서 각 어카운트들에 대한 엑세스를 빌트인 ID와 SSO, IAM 등의 서비스들을 통해 하나의 관리 계정으로 엑세스의 중앙 집중화를 수행할 수 있도록 도와줍니다. 중앙 집중화를 수행한다는 것은 Management 어카운트라는 관리 계정 하나로 각 목적에 따라 Log Archive, Audit, Provisioned 등 분류하여 OU를 구성하고 관리 전용 콘솔창을 통해 쉽고 빠르게 엑세스 할 수 있도록 관리계정을 구성할 수 있습니다.

AWS 의 Organizations의 구성요소를 살펴보면, Organization에는 루트, 관리 계정, 조직 단위 (OU) 및 멤버 계정을 포함하고 있으며, Organization 루트는 조직의 최상위 노드로 조직의 경계를 정의한다고 볼 수 있습니다. 또한 관리 계정은 조직을 관리하기 위한 계정으로 교차 계정 서비스 활성화 및 구성원 계정에 관리 위임하고, 관리 계정에 대한 제한된 액세스를 가지고 있습니다. 마지막으로 OU(Organization Units)은 계정의 그룹으로 이해할 수 있으며, 계정 그룹에서 정책을 활성화하는 데 사용하고, 중첩된 OU는 분리되는 경우에 사용 (예: dev 및 prod 계정)할 수 있습니다.

6. 사전 구성된 로그 아카이브 및 계정에 대한 감사 엑세스

출처 : AWS Korea – Control Tower 세미나 참고자료

Control Tower에서 제공하는 로그 아카이브 기능은 우리가 컨트롤 타워 서비스를 사용해야하는 가장 큰 이유라고 볼 수 있는 기능입니다. 먼저 로그 아카이브란 어카운트에 로그를 전부 모으는 형태로, 각 어카운트가 생성될 때마다 클라우드 트레일이 전부 중앙에 집계되어 모이는 디폴트 설정 형태의 서비스로 이 오토메이션 기능은 그 자체만으로도 엄청난 가치를 가지고 있다고 볼 수 있습니다. 일반적인 경우, 런북을 만들어서 통보하고, 트레일을 설정한 뒤, 들어오는 것을 확인하는 이런 식의 구조로 로그에 대한 작업들을 복잡하게 진행해야 하는데 이러한 프로세스를 자동화한 서비스라고 볼 수 있습니다. 또한 컨트롤 타워 서비스는 ORG에 있는 API를 이용해서 만들어 놓은 서비스로, 컨피그 서비스를 연결시켜 놓았으며, 이는 ORG 서비스의 베네핏을 그대로 상속해 놓았다고 볼 수 있습니다.

ORG의 장점은 어드민 계정을 하나 준비해 놓고, 전체를 관리하는 설정을 진행하는데, 이는 ORG 레벨로 전체를 컨트롤 할 수 있는 이점이 있습니다. 때문에 목적별로 OU를 만드는 것을 추천하고, 추가적으로 S3 사례를 예시로 보면 렌즈를 돌려볼 때 비용을 줄이기 위해서 100개를 전부 확인해야 하지만, 컨트롤 타워 서비스를 이용하면 100개의 계정에 대한 S3를 한번에 전부 돌려주기에 효율성을 높여주며, 이러한 개념들을 상속받아 태그 플래시, 백업 플래시 이런 부분들을 전체 다 가져가는 거고 램 영역도 마찬가지로 그대로 활용할 수 있습니다.

• AWS 컨트롤타워 관리 계정과 조직의 구성원 계정의 작업을 포함하여 모든 작업을 기록
• 멤버 계정 작업 및 이벤트 모니터링 : 로그 아카이브 파일
• 감사 계정은 보안 및 규정 준수 팀이 모든 계정에 대한 액세스를 읽고 작성할 수 있도록 설계된 제한된 계정

7. 빌트인 모니터링 및 Notification 환경 구성

출처 : AWS Korea – Control Tower 세미나 참고자료

Control Tower 서비스는 AWS에서 제공하고 있는 다양한 서비스들과의 호환성을 통해 빌트인 된 모니터링 서비스와 Notification 환경을 구성하여 제공하고 있기에 다양한 서비스들에 대한 관리의 효율성을 증진시킬 수 있습니다. 먼저 멀티 계정 환경에서는 CloudFormation, Systems Manager, Service Catalog 서비스 들을 활용하여 리소스들을 중앙 집중식으로 프로비저닝 할 수 있습니다. 또한 이러한 리소스들을 Personal Health Dashboard와 Resource Access Manager 등의 서비스들을 통해 공유하고, 계정이나 지역 및 서비스들에 대한 옉세스를 제어할 수 있습니다. 그 밖의 다양한 AWS 보안 서비스나 스토리지 서비스 등을 통해서 비용 절감 방안을 파악하거나 최적화할 수 있고, 보안을 강화할 수 있습니다.

8. AWS Marketplace를 통해 제공되는 ISV 솔루션으로 확장 가능

출처 : AWS Korea – Control Tower 세미나 참고자료

마지막으로 AWS Control Tower 서비스는 다양한 ISV(Independent Software Vendor) 솔루션으로 확장하여 사용할 수 있는 AWS Marketpalce 기능을 제공하고 있습니다. AWS Marketplace는 고객이 AWS에서 실행 중인 소프트웨어와 서비스를 검색, 구입한 후 즉시 사용할 수 있도록 지원하는 온라인 소프트웨어 상점으로 기업의 니즈에 따라 원하는 파트너 또는 소프트웨어 제품으로 선택하여 가장 효율적인 솔루션으로 확장하여 사용할 수 있는 장점이 있습니다.

Summary,

간단히 말해, AWS Control Tower 서비스는 ‘멀티 어카운트 환경’에서 ‘거버넌스(Governance)’를 제공해주는 서비스입니다.
그리고 이 ‘거버넌스(Governance)’라고 하는 것은 ‘클라우드를 트레일(CloudTrail)’을 Log Archive Account, Audit Account, ‘SSO(Single Sign-On)’을 기반으로 관리하고, 전체 보안 통제 가이드라인 역할을 하는 ‘가드레일(Guardrail)’을 구성하여 정책을 적용하여 운영 및 관리하는 통합 관리 시스템이라고 이해해주시면 될 것 같습니다.

Control Tower 서비스에 대한 자세한 사항은 [ AWS Control Tower 공식문서 ] 를 참조해주시길 바랍니다.

감사합니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다