2014년 3월 Amazon WorkSpaces를 출시한 이후 고객은 기존 Virtual Desktop Infrastructure를 마이그레이션하거나 새로운 VDI 워크로드를 서비스에 배치하여 확장 가능하고 안전하고 비용 효율적인 클라우드 기반 데스크톱을 구축할 수 있도록 지원하고 있습니다. 이 서비스를 통해 고객이 시작한 WorkSpace에 대해서만 매월 또는 매시간 비용을 지불할 수 있으므로 기존 데스크톱 및 사내 VDI 솔루션과 비교하여 비용을 절감하는 동시에 이러한 유형의 환경을 관리하고 유지하는 데 따르는 모든 복잡성을 AWS로 오프로드할 수 있습니다. 또한 사용자가 언제 어디서나 지원되는 장치에서 문서, 응용프로그램 및 리소스에 액세스할 수 있도록 설계되었습니다.
Amazon WorkSpaces를 사용하는 고객은 일반적으로 회사 연결 데스크톱을 직원 및 외부 계약자에게 제공하는 등의 특정 사용 사례에서 시작합니다. 이 접근 방식을 통해 기업은 BYOD(Bring Your Own Device) 전략을 활용하고 사용자에게 고가의 물리적 하드웨어를 구입 및 관리할 필요 없이 GPU를 사용할 수 있는 강력한 데스크톱을 제공할 수 있습니다.
고객이 Amazon WorkSpaces에 익숙해짐에 따라 사실상 모든 기업 데스크톱 사용 사례에서 서비스 혜택을 활용할 수 있다는 사실을 인식하기 시작합니다. 곧 Amazon WorkSpaces는 엔지니어, 개발자, 임원, 이사 등 모든 기업 수준에서 사용되기 시작합니다.
Amazon WorkSpaces는 AWS 영역 또는 WorkSpaces 서비스를 일정 기간 사용할 수 없는 경우 주요 사용자가 사용할 수 있는 WorkSpaces를 유지하는 데 도움이 되는 DR(재해 복구) 전략을 고려할 수 있지만 높은 수준의 가용성을 제공하도록 설계되었습니다.
이 기사에서는 고객 중 한 명이 설계 및 코드를 작성하는 데 도움을 준 “웜 대기” DR 전략을 공유하려고 합니다. 이것이 실제 사례입니다.
이 전략을 통해 고객은 비즈니스에 필요한 RTO(복구 시간 목표) 및 RTO(복구 시점 목표)를 유지하면서 비용을 절감할 수 있었습니다.
시나리오 아키텍처
다음은 아키텍처에서 이 시나리오를 설명합니다.
이 시나리오에서는 다음 사항을 확인할 수 있습니다.
- VPN 또는 AWS Direct Connect를 통해 회사 내부 환경과 AWS 간의 연결입니다.
- Amazon WorkSpaces는 AD Connector가 있는 AWS 디렉토리 서비스를 통해 AWS에 연결된 회사 도메인, EC2 기반 도메인 컨트롤러 또는 EC2 인스턴스가 가입된 AWS 디렉토리 서비스 관리 AD 기반 도메인에서 자격 증명을 사용하여 프로비저닝됩니다.
- 회사는 기존 Active Directory 사용자를 위해 WorkSpace를 제공합니다. AD 인프라는 도메인 컨트롤러 또는 윈도우즈 인스턴스가 도메인에 가입되어 Amazon EC2에서 실행되는 AWS로 확장됩니다.
솔루션 개요
이 솔루션은 DR 영역의 동일한 AWS 계정 또는 다른 AWS 계정에 WorkSpace 인스턴스를 “AutoStop” 실행 모드로 생성하고 WorkSpace 사용자를 유지하도록 선택한 OU(Active Directory Organization Unity)에서 사용자가 생성 또는 제거되었는지 지속적으로 검사하기 위해 설계되었습니다. 이렇게 하면 OU에서 사용자를 이동 또는 삭제할 경우 솔루션은 각 WorkSpace를 종료하거나 생성하고 DR 영역의 활성 사용자에 대해서만 기존 WorkSpace 인스턴스를 유지합니다.
프로덕션 환경에서 AWS 영역 또는 Amazon WorkSpaces를 사용할 수 없게 된 경우 사용자는 Amazon WorkSpaces 클라이언트에서 등록 코드를 사용하여 DR 영역 WorkSpace 인스턴스에 연결하고 정상적으로 작동하도록 지시할 수 있습니다.
이 솔루션에 대해 지정한 OU에 주요 사용자만 배치하도록 선택할 수 있습니다. 이렇게 하면 비용을 절감하고 가장 중요한 사용자를 항상 생산적으로 유지할 수 있습니다.
이 솔루션을 배포하면 빨간색으로 강조 표시된 구성 요소가 구축되고 아래 표시된 리소스와 통합됩니다.
이 솔루션은 AWS CloudFormation을 사용하여 DR 영역에서 다음 구성 요소의 배포를 자동화합니다.
- Amazon S3 버킷은 Amazon WorkSpace 사용자의 업데이트된 목록이 포함된 CSV 파일을 저장하며, CloudFormation 템플릿을 인스턴스화할 때 지정한 OU(조직 통합)에서 추출됩니다.
- 시스템 매니저 — 유지 관리 기간(관련 작업 포함)은 매 5분마다 실행됩니다. 이 작업에는 지정된 OU에 있는 사용자의 사용자 이름을 CSV 파일로 추출하여 Amazon S3 버킷에 업로드하는 PowerShell 스크립트가 있습니다.
- 새 CSV 파일이 업로드되면 트리거되는 AWS 람다 기능입니다. AD 사용자 목록이 포함된 CSV 파일을 읽고 현재 WorkSpace 인스턴스와 비교합니다. AD 사용자 목록에 있는 사용자에게 WorkSpace가 없는 경우 해당 사용자에 대한 WorkSpace가 생성됩니다. AD 사용자 목록에 없는 사용자에 대해 WorkSpace가 생성된 경우, WorkSpace는 종료됩니다. 이렇게 하면 활성 사용자만 WorkSpace를 유지할 수 있습니다.
- 최소한의 권한 원칙에 따라 솔루션을 작동시키는 데 필요한 모든 IAM 역할 및 정책이 필요했습니다.
이 솔루션의 비용은 AWS 시스템 매니저에 의해 구성되며, 추가 비용 없이 Amazon S3에 저장된 파일, 이 경우 매우 작은 AWS Lambda, 이 시나리오에서는 매우 비용 효율적인 AWS Lamda가 제공됩니다.
기존 리소스와 관련하여 EC2에서 실행되는 도메인 컨트롤러 또는 구성원 서버의 비용을 고려할 수 있습니다. 이 비용은 선택한 인스턴스 유형에 따라 달라집니다.
AD 커넥터 비용은 디렉터리 크기에 따라 달라집니다.
AD Connector를 사용하는 경우, 작은 디렉토리에 하나 이상의 활성 WorkSpace를 연결하거나 대형 디렉토리에 대해 100명 이상의 활성 사용자가 매달 있는 한 AD Connector는 추가 비용이 들지 않습니다.
Microsoft AD를 사용하는 경우 가격은 디렉터리 및 영역의 크기에 따라 달라집니다.
WorkSpaces 비용은 번들 크기와 프로비저닝된 WorkSpaces 수에 따라 달라집니다. 이 솔루션에 활용되는 실행 모드는 “자동 중지”이므로 그 측면에서도 비용이 절감됩니다.
필수 조건
DR 영역의 필수 구성 요소는 다음과 같습니다.
- 내부 또는 Amazon EC2의 도메인 컨트롤러 또는 멤버 서버이며 Active Directory 도메인, 내부 또는 AWS 디렉터리 서비스에 가입되어 있습니다. 이 인스턴스는 AWS 시스템 관리자가 관리해야 합니다.
- WorkSpaces에 등록된 AD 커넥터 또는 관리 AD입니다. 이러한 구성 요소는 해당 지역의 Amazon WorkSpaces에서 지원하는 가용성 영역의 서브넷과 생성하려는 인스턴스 수를 지원할 수 있는 충분한 용량을 사용하여 구성되어야 합니다. 사용할 가용성 영역을 모를 경우 지원 티켓을 열면 AWS 지원을 통해 해당 정보를 확인하는 데 도움이 될 수 있습니다.
- AWS 계정의 제한은 DR 영역에서 만들려는 번들 유형 및 WorkSpaces 수로 설정되어 있어야 합니다. 이에 따라 제한을 설정하려면 지원 티켓을 열어 주십시오.
- WorkSpaces 이미지 및 번들은 DR 영역에서 사용할 수 있는 예상 회사 이미지 특성으로 구성됩니다. 프로덕션 AWS 영역에서 사용하는 사용자 지정 이미지가 있는 경우 콘솔을 사용하여 AWS 영역 내에서 또는 AWS 영역 간에 사용자 지정 WorkSpaces 이미지를 복사할 수 있습니다.
- Active Directory에는 분리된 OU(Organization Unity)에 Amazon WorkSpaces 사용자가 있어야 합니다.
Amazon WorkSpaces에서 사용자 자신의 이미지를 실행하는 경우 AWS 지원팀 및 AWS 계정 팀과 협력하여 DR 영역에서 충분한 전용 용량을 확보했는지 확인해 주십시오.
배포 프로세스
1. AWS Management Console에 로그인하고 DR 환경에 사용할 영역을 선택합니다.
2. 아래 버튼을 클릭하여 AWS CloudFormation 템플릿을 보고 AWS CloudFormation 콘솔을 통해 WorkSpace Multi-region DR 솔루션을 시작합니다.
3. ws-dr-template.yml 파일의 내용을 로컬에 저장하고 스택 생성, 템플릿 파일 업로드, 파일 선택을 차례로 클릭하여 AWS CloudFormation 콘솔을 통해 배포하고 파일을 선택한 후 Next(다음)을 선택합니다.
4. 매개변수에서 템플리트의 매개변수를 검토하고 그에 따라 입력합니다. 이 솔루션은 다음 매개 변수를 사용합니다.
파라미터를 입력했으면 Next(다음)을 선택합니다.
5. 옵션 페이지에서 Next(다음)을 선택합니다.
6. 검토 페이지에서 설정을 검토하고 확인합니다. 템플릿이 AWS ID 및 액세스 관리(IAM) 리소스를 생성한다는 것을 확인하는 상자를 선택해야 합니다.
7. 스택을 배포하려면 만들기를 선택합니다.
솔루션이 배포되면 5분 후 S3 버킷에 CSV 파일이 표시되기 시작해야 합니다.
이 때 솔루션은 지정된 OU에 있는 사용자를 추적하고 DR 영역에서 WorkSpaces를 유지합니다.
DR 활성화 프로세스
운영 AWS 영역에서 Amazon WorkSpaces를 사용할 수 없는 드문 경우, DR 영역의 WorkSpaces에 연결하기 위해 등록 코드를 변경하도록 사용자에게 지시하기만 하면 됩니다.
사용자의 WorkSpaces 클라이언트에서 해당 등록 코드를 미리 구성하고 DR WorkSpaces 인스턴스를 사용해야 하는 경우 해당 등록 코드를 변경하도록 사용자에게 지시할 수 있습니다.
또는 AWS Lambda를 사용하여 시스템을 생성하여 APIs를 사용하여 AWS 상태를 모니터링하여 운영 영역에서 Amazon WorkSpacess 서비스를 사용할 수 없게 되었는지 확인한 다음 사용자에게 DR 영역의 등록 코드를 사용하여 연결하도록 알림을 보낼 수 있습니다.
다음 아키텍처는 프로덕션 영역을 사용할 수 없는 경우 DR 활성화 프로세스를 보여 줍니다.
결론
Amazon.com의 최고 기술 책임자로서, Werner Vogels는 “모든 것이 항상 실패한다”고 말한 적이 있습니다. 이러한 단순한 사실 때문에 시스템 설계가 실패에 탄력적으로 대응할 수 있도록 해야 합니다. 이 솔루션을 통해 Amazon WorkSpaces 환경을 위한 비용 효율적인 DR 전략을 구현하고 불리한 상황에서도 사용자의 생산성을 유지할 수 있기를 바랍니다.
빌드업웍스에서 AWS 무료 컨설팅을 진행합니다.
AWS에 대하여 궁금하신 내용이 있으시거나, 도입을 검토 중이시라면 편하게 신청해주세요.
본 문서는 Building a multi-region disaster recovery environment for Amazon WorkSpaces 내용에 기반하여 작성 되었습니다.
© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.