끄적이는 보송

[AWS] Workspaces 란 본문

STUDY/AWS

[AWS] Workspaces 란

끄적이는 보송 2022. 3. 15. 18:34
반응형

Amazon Workspaces

 

Amazon Workspaces란 AWS DaaS(Desktop as a Service) 서비스이다. 혹은 가상 데스크톱 인프라(VDI)라고 생각해도 좋다. WorkSpaces는 EC2 기반의 서비스지만 청구방식이 약간 다르다. 자세한 건 밑의 AWS 공식 도큐먼트 링크를 통해 Workspaces가 지원하는 Region, OS 및 가격정책을 확인할 수 있다.

https://aws.amazon.com/ko/workspaces/pricing/

 

클라우드 네이티브 영구 데스크톱 가상화 - Amazon WorkSpaces 요금 – Amazon Web Services

각 Windows 번들 옵션에는 WorkSpace당 Microsoft 원격 데스크톱 서비스(RDS) 구독자 액세스 라이선스(SAL)가 포함됨

aws.amazon.com

 

 

 

Workspaces AD 선택

Amazon Workspaces를 사용하기 위해선 AD가 필수다. AD(Active Directory)란 조직의 여러 정보나 정책을 담고 있으며 IT 업무를 하는데 도움을 주는 일종의 데이터베이스와 같다. Workspaces는 현재 3가지 AD를 지원한다. (AWS Managed Microsoft AD, AWS Simple AD, AD Connector)

 

1. AWS Managed Microsoft AD

- 모든 범위의 AD 서비스를 조직에게 제공한다.

- Amazon에서 모니터링, 일일 스냅샷 백업 및 복구를 담당한다.

- Standard와 Enterprise 옵션으로 나뉜다.- Standard는 30,000개의 directory object 커버할 수 있으며, 5,000명 이하의 사용자를 위해 설계됨.- Enterprise는 가장 비싼 AD 옵션으로 500,000 directory object를 커버할 수 있으며, 80,000 명의 사용자를 위해 설계됨.

 

2. AWS Simple AD

- samba4로 구동되며 사용자 계정 및 그룹 멤버십 같은 기본 AD 서비스만 필요한 조직을 설계됨.

- Amazon에서 모니터링, 일일 스냅샷 백업 및 복구를 담당한다.

- 500명의 사용자 / 5000명의 사용자를 지원하는 각각 두 개의 size 옵션을 제공함

 

3. AD Connector

다른 AD와 다르게 AD Connector는 Directory Gateway이다.

Client의 Directory 요청을 On-Premise의 Microsoft AD로 리다이렉션 한 다음 Workspaces로 리다이렉션 한다.

기존 AD 사용자가 자기 Workspaces에 접속할 수 있도록 한다.

 

만약 작은 규모의 배포를 고려하고 있고, On-Premise 영역까지 확장할 필요가 없다면 simple AD를 선택하면 된다. 참고로 하나의 Subnet에 여러 AWS AD 서비스를 붙일 수 있다.

 

 

 

Workspaces 동작 방식

사용자는 Workspaces에 액세스 할 때 VDI Client를 이용한다. 사용자가 인증이 되면 Streaming Gateway를 통해 스트리밍 트래픽을 송수신하여 Workspaces를 이용한다. 여기서 Workspaces는 ENI가 2개가 있는데, 하나(eth0)는 관리 네트워크 인터페이스이고, 하나(eth1)는 기본 네트워크 인터페이스다.

 

eth1은 아웃바운드 트래픽에 사용되며 인터넷 연결과 Workspaces를 Directory Join에 사용된다.

 

eth0는 AWS가 Workspaces를 관리하는 데 사용되는 네트워크 인터페이스다. Workspace desktop와 Workspace client 사이의 대화형 스트리밍 연결에 사용되며 사용자가 연결을 종료하면 사라지는 네트워크 인터페이스다. 

 

WorkSpaces는 생성된 리전에 따라 다르게 Private IP 범위를 eth0 ENI 할당한다. 디렉터리가 등록되면 Workspaces는 자신이 소속되는 VPC CIDR과 라우팅 테이블 테스트를 하는데 이때 충돌이 발생하면 오류 메시지와 함께 디렉터리가 등록되지 않는다. 또한 디렉터리가 성공적으로 등록되어도 VPC 내의 라우팅 테이블 변경으로 인해 충돌이 발생할 수도 있다. 이 외에도 eth0을 위해 열어줘야 하는 포트도 있고 상황에 따라 여러 제약사항이 많은 듯하다. 

 

참조 문헌: https://docs.aws.amazon.com/workspaces/latest/adminguide/workspaces-port-requirements.html#management-ip-ranges

 

IP address and port requirements for WorkSpaces - Amazon WorkSpaces

If your firewall uses stateful filtering, ephemeral ports (also known as dynamic ports) are automatically opened to allow return communication. If your firewall uses stateless filtering, you must open ephemeral ports explicitly to allow return communicatio

docs.aws.amazon.com

 

 

 

실습하기 전에...

실습에 들어가기 전에 몇 가지 집고 넘어가자

 

1. 외부 통신을 위한 EIP

Workspaces가 외부와 라우팅이 가능한 EIP가 필요하다. 즉, NAT Gateway가 구성되어야 한다. NAT Gateway의 고정 IP를 통해 Private Subnet에 위치한 Workspaces는 인터넷 액세스 하되 외부 침입을 막을 수 있다. NAT 구성은 이 글을 참고할 수 있다. https://bosungtea9416.tistory.com/20 

 

2. Workspaces가 설치될 VPC 환경

아마존 공식 도큐먼트 중 일부를 읽어보니 다음과 같이 구성할 것을 추천하고 있다.

- Workspaces 배포를 위한 별도의 VPC를 만들어 트래픽을 분리하고 관리한다. (본 포스팅은 그냥 하나로 하겠다.)

- AZ를 분리하여 고가용성 AD 디렉터리 서비스를 제공할 한쌍의 Subnet을 배치한다. 

- 미래를 생각해 IP주소가 충분한지 고려해 VPC/Subnet CIDR를 정한다.

 

 

 

실습

1. Workspaces 서비스 화면으로 넘어가 생성해준다. Quick Setup이 아닌 Advanced Setup을 클릭한다.

 

 

2. Workspaces를 사용하기 위해선 directory가 필요하다. 없다면 생성해줘야 한다. Simple AD와 AD connector는 무료다.

여기서는 simple AD를 선택하겠다.

 

 

3. 위에서 설명한 Simple AD에 Size 옵션이 두 개 제공된다는 부분이다. 테스트를 위한 것이니 스몰을 선택하겠다.

 

 

4. 회사 이름, 디렉터리 DNS 이름 그리고 netbios 이름을 기입한다. 디렉터리 DNS 이름은 VPC 내에서만 다뤄지며 공개될 필요는 없지만 관리자가 제어할 필요는 있다.

 

 

5. 관리자 암호를 넣고 다음으로 넘어간다.

 

 

6. Workspaces가 생성될 VPC와 Subnet을 입력하고 생성해준다.

 

 

7. 생성이 완료되고 좀 시간이 지나니 상태가 활성화되었다.

 

 

8. Workspaces를 위한 사전 AD 작업은 끝났다. 이제 이 AD 서비스를 기반으로 Workspaces를 생성한다.

 

 

9. 사전에 생성한 AD 서비스를 참고해 내용을 기입한다. 'Enable Self Service Permissions' 은 사용자가 Workspace의 서비스를 변경할 수 있도록 하는 옵션이다. 비용 관련해서 민감하다면 비활성화 해주자. 'Enalbe Amazon WorkDocs'는 Workspaces와 WorkDocs의 연동을 말한다. WorkDocs 관련해서는 나중에 다뤄보겠다. 

 

 

10. 사용자 정보를 입력하자. 저기 입력한 이메일로 나중에 메일이 올 거다.

 

 

11. 원하는 WorkDocs 번들을 선택한다.

 

 

12. 스토리지를 설정할 수 있다. 프리티어를 선택했는데 저 볼륨 값을 변경하면 비용이 과금되니 참고하자.

 

 

13. 사용자가 사용하지 않을 때 WorkSpaces를 Stop 하는 옵션이다. 프리티어를 충족하기 위해 선택해야 한다. 굳이 안 할 이유를 못 찾겠다.

 

14. Workspaces 볼륨 Encryption 설정이다. 나는 그냥 넘어갔다.

 

 

15. 관련 설정을 모두 넣어주고 생성하니, 한 20분 지나고 Workspace가 생성되었다.

 

 

16. Workspaces의 상세 정보다. 저 'Client Link'를 통해 Workspaces 접속을 위한 프로그램을 다운로드하여주고 'Registration Code'를 기억해두자.

 

 

17. Workspaces와 함께 사용자 생성이 완료되었다면, 아까 기입한 이메일 주소로 메일 한 통이 왔을 것이다. 확인이 안 된다면 스팸메일을 확인해보자. 1번 안내 링크를 클릭해 사용자 암호를 설정한다.

 

 

18. 설치한 Workspace 프로그램을 실행하고 Registration Code를 입력해 접속한다.

 

 

19. 접속이 완료되었고 인터넷도 잘 되는 것을 볼 수 있다.

 

 

 

 

Workspaces 제약사항

아마존 홈페이지에서 Workspaces 관련 글을 읽으면 다 좋아 보인다. 싼 값에 DaaS 서비스를 이용할 수 있고, 빠르고 쉽게 On-Demand로 서비스 이용이 가능하고 기타 등등... 하지만 Workspaces에는 여러 제약사항이 있고 도입하려는 규모가 대규모라면 신중해질 필요가 있다.

 

1. 위 예시로 윈도우 Workspaces를 설치했다. 정확히 말하면 Windows Server다. 이게 뭔 뜻이냐면 윈도우 환경에서 당연하게 사용했던 프로그램이 Workspaces에 작동하지 않을 수 있다는 뜻이다. 아니 호환되지 않는 프로그램이 상당히 많다

 

2. Workspaces로 몇몇 웹페이지에 접속할 수 없다. Workspaces가 사용하는 IP 주소가 문제다. Workspace가 서울 리전에 설치되어 있고 IP주소도 서울 리전 것이 맞지만 일부 기업에서는 이것은 '아마존이 관리'하는 서울 리전 IP주소로 보고 해외 IP와 동일하게 취급한다. DDOS 공격 등을 우려해 해외 IP를 차단한 것으로 추측된다. 이 경우, 문제 해결을 위해선 기업에 직접 문의해야 한다. 이것이 해결되고 안되고는 순전히 웹페이지 회사의 마음이다. 비단 Amazon Workspaces 만의 문제가 아니며 Azure, GCP도 동일한 문제를 겪고 있다.

 

3. 블루투스 기반 제품과 연동이 안될 수 있다.

 

4. 한/영 키 전환이 안된다.

 

5. 그 외 기타 자잘한 버그 등 문제점은 계속 보이고 있다.

 

 

 

반응형
Comments