Cloud/AWS
Amazon VPC Lattice - Part 3 : Service/VPC association,Service Sharing
지기(ZIGI)
2023. 4. 5. 06:24
Today Keys : lattice, vpc, service, amazon, network, share, owner, simplifying, application, connect, secure, monitor
이번 포스팅은 서로 다른 VPC 및 AWS 계정에 걸쳐 서비스 간의 네트워크 연결 및 애플리케이션 계층 라우팅을 자동으로 관리해주는 Amazon VPC Lattice에 대한 세 번째 포스팅입니다. 앞으로 몇 번에 걸쳐서 다루게 될지는 모르겠지만, VPC Lattice를 구성하는 방법에 대해서 차근 차근 포스팅 해보려고 합니다.
세 번째 포스팅에서는 VPC Lattice Service Network의 Owner와 이를 공유 받은 공유 계정 간의 Lattic Service와 VPC associations에 대한 관리 권한을 간단히 테스트 해보고, Lattice Service Owner가 Lattice Service를 VPC Lattice Service Network Owner에 공유하여, VPC Lattice Service Network Owner가 Lattice Service를 association하여 Service에 접근하는 것을 테스트해 봅니다.
이번 포스팅에서는 VPC Lattice Service Network를 소유한 Owner 계정과 이를 공유 받은 공유 계정을 번갈아 가면서 테스트를 하기 때문에, 테스트 내용이 어느 계정에서 진행되는 지를 먼저 위에 표기하고 시작합니다. 각 계정의 AWS ID의 앞/뒤로 2자리씩는 아래와 같으며, 포스팅 내용을 볼 때 참고하시면 되겠습니다.
계정 정보
VPC Lattice Service Network Owner 계정 : Owner계정(69-72)
VPC Lattice Service Network 공유 계정 : 공유계정(16-33)
[공유 계정(16-33)]
VPC Lattice Service Network에 Owner 계정이 연결한 Owner 계정 서비스 연결을 해제하는 경우 : 불가
[Owner 계정(69-72)]
VPC Lattice Service Network에 공유 계정이 연결한 공유 계정 서비스 연결을 해제하는 경우 : 가능
[공유 계정(16-33)]
VPC Lattice Service Network에 Owner 계정이 연결한 Owner 계정 VPC 연결을 해제하는 경우 : 불가
[Owner 계정(69-72)]
VPC Lattice Service Network에 공유 계정이 연결한 공유 계정 VPC 연결을 해제하는 경우 : 가능
Owner에서 공유 계정의 VPC Lattice Service 등록하기
VPC Lattice Service Network Owner 계정 : Owner계정(69-72)
VPC Lattice Service Network 공유 계정 : 공유계정(16-33)
[Owner 계정(69-72)]
VPC Lattice Service Network Owner 계정에서도 다른 계정의 Lattice Service 연결을 바로 할 수는 없습니다. Service Network에서 Service associations에서 Service를 등록하려고 보면 다음과 같이 Serivce가 보이지 않습니다.
만약 VPC Lattice Service Network Owner 계정에서 다른 계정의 Lattice Service를 등록하려면, Lattice Service를 만든 계정에서 Lattice Service에 대한 Resource를 공유해줘야 합니다.
[공유 계정(16-33)] - Lattice Service2를 만든 계정
Lattice Service를 만든 계정에서, VPC Lattice Service Network Owner 계정으로 리소스를 공유하는 절차입니다.
Step 1 Specify resource share details
Resource Access Manager에서 VPC Lattice Service를 Resource Type으로 해서 공유 설정을 합니다.
공유 Resource 이름은 'zigi-ram-ls'라고 했습니다.
Step 2 Associate permissions
공유 리소스에 대한 권한은 기본 값 그대로 둡니다.
Step 3 Grant access to principals
VPC Lattice Service를 공유 할 계정을 선택합니다.
AWS의 모든 계정 혹은 동일 Organization에 속한 계정에서만 가능하게 설정 할 수 있습니다. 저는 같은 Organization에 속한 계정으로만 공유를 하고, 공유 ID에는 VPC Lattice Service Network Owner 계정의 ID (69-72)를 추가했습니다.
Step 4 Review and create
VPC Lattice Service를 공유하기 위한 설정을 다시 한 번 확인하고 공유를 합니다.
정상적으로 공유가 완료되면 다음과 같이 정상적으로 공유가 된 것을 확인 할 수 있습니다.
[Owner 계정(69-72)]
이제 VPC Lattice Service Network Owner 계정(69-72)에서도 zigi2-ls2라는 VPC Lattice Service를 만든 계정의 Service가 확인이 되고, VPC Lattice Service Network에 연결 할 수 있습니다. Save changes를 클릭해서 Service를 연결합니다..
VPC Lattice Service Network의 Service associations에서 보면 다음과 같이 Service가 연결된 것을 볼 수 있습니다.
새로 연결된 Lattice Serivce에 접근을 해보면, 정상적으로 통신이 되는 것을 볼 수 있습니다.
[공유 계정(16-33)]
VPC Lattice Service Network에 Owner 계정(69-72)이 연결한 공유 계정(16-33)Service 연결을 해제하는 경우 : 불가
→ Lattice Service를 만든 계정(16-33)이더라도, Service Network에 직접 연결 한 것이 아니라면 삭제 불가
[Owner 계정(67-72)]
VPC Lattice Service Network에 Owner 계정(69-72)이 연결한 공유 계정(16-33)Service 연결을 해제하는 경우 : 가능
→ VPC Lattice Service Network에 Owner 계정은 Service 연결 주체와 상관없이 삭제 가능.