Amazon ECS Service Connect에서 공유 AWS Cloud Map 네임스페이스 사용
Service Connect에 대한 공유 AWS Cloud Map 네임스페이스 설정에는 네임스페이스 소유자가 네임스페이스 생성, AWS Resource Access Manager(AWS RAM)를 통한 소유자 공유, 소비자의 리소스 공유 수락, 공유 네임스페이스를 사용하도록 소비자의 Service Connect 구성과 같은 단계가 포함됩니다.
1단계: AWS Cloud Map 네임스페이스 생성
네임스페이스 소유자는 다른 계정과 공유할 AWS Cloud Map 네임스페이스를 생성합니다.
AWS Management 콘솔을 사용하여 공유를 위한 네임스페이스를 생성하는 방법
-
https://console.aws.amazon.com/cloudmap/
에서 AWS Cloud Map 콘솔을 엽니다. -
Create namespace(네임스페이스 생성)를 선택합니다.
-
네임스페이스 이름을 입력하세요. 이 이름은 모든 참여 계정의 서비스에서 사용됩니다.
-
네임스페이스 유형에서 사용 사례에 적합한 유형을 선택하세요.
-
API 직접 호출 - DNS 기능이 없는 서비스 검색을 위한 HTTP 네임스페이스.
-
VPC에서 API 직접 호출 및 DNS 쿼리 - VPC의 프라이빗 DNS 쿼리로의 서비스 검색을 위한 프라이빗 DNS 네임스페이스.
-
API 직접 호출 및 퍼블릭 DNS 쿼리 - 퍼블릭 DNS 쿼리로의 서비스 검색을 위한 퍼블릭 DNS 네임스페이스.
-
-
Create namespace(네임스페이스 생성)를 선택합니다.
2단계: AWS RAM를 사용하여 네임스페이스 공유
네임스페이스 소유자는 AWS RAM를 사용하여 네임스페이스를 다른 AWS 계정과 공유합니다.
AWS RAM 콘솔을 사용하여 네임스페이스를 공유하는 방법
-
AWS RAM 콘솔(https://console.aws.amazon.com/ram/
)을 엽니다. -
리소스 공유 생성을 선택합니다.
-
이름에 리소스 공유를 설명하는 이름을 입력합니다.
-
리소스 섹션에서 다음을 수행합니다.
-
리소스 유형에서 클라우드 맵 네임스페이스를 선택하세요.
-
이전 단계에서 생성한 클러스터를 선택하세요.
-
-
관리형 권한 섹션에서 AWSRAMPermissionCloudMapECSFullPermission을 지정하세요.
중요
AWSRAMPermissionCloudMapECSFullPermission관리형 권한을 사용하여 Service Connect가 네임스페이스와 제대로 작동하도록 네임스페이스를 공유해야 합니다. -
위탁자 섹션에서 네임스페이스를 공유할 AWS 계정과 지정하세요. 계정 ID 또는 조직 단위 ID를 입력할 수 있습니다.
-
리소스 공유 생성을 선택합니다.
3단계: 리소스 공유 수락
네임스페이스 소비자 계정은 공유 네임스페이스를 사용하려면 리소스 공유 초대를 수락해야 합니다.
AWS RAM 콘솔을 사용하여 리소스 공유 초대를 수락하는 방법
-
소비자 계정에서 AWS RAM 콘솔(https://console.aws.amazon.com/ram/
)을 여세요. -
탐색 창에서 나와 공유됨, 리소스 공유를 선택하세요.
-
리소스 공유 초대를 선택하고 리소스 공유 수락을 선택하세요.
-
수락한 후 리소스 세부 정보에서 공유 네임스페이스 ARN을 기록하세요. Service Connect 서비스를 구성할 때 이 ARN을 사용합니다.
4단계: 공유 네임스페이스를 사용하여 Amazon ECS 서비스 구성
공유 네임스페이스를 수락한 후 네임스페이스 소비자는 공유 네임스페이스를 사용하도록 Amazon ECS 서비스를 구성할 수 있습니다. 구성은 일반 네임스페이스를 사용하는 방식과 비슷하지만 이름 대신 네임스페이스 ARN을 지정해야 합니다. 자세한 서비스 생성 절차는 Amazon ECS 롤링 업데이트 배포 생성 섹션을 참조하세요.
AWS Management 콘솔을 사용하여 공유 네임스페이스가 있는 서비스를 생성하는 방법
https://console.aws.amazon.com/ecs/v2
에서 콘솔을 엽니다. -
클러스터 페이지에서 서비스를 생성하려는 클러스터를 선택하세요.
-
서비스에서 생성을 선택하세요.
-
워크로드에 따라 다른 세부 정보를 입력한 후 Service Connect 섹션에서 Service Connect 사용을 선택하세요.
-
네임스페이스에 공유 네임스페이스의 전체 ARN을 입력하세요.
ARN 형식은
arn:aws:servicediscovery:입니다.region:account-id:namespace/namespace-id -
서비스 유형(클라이언트 또는 클라이언트-서버)에 따라 나머지 Service Connect 설정을 구성하세요.
-
서비스 생성 프로세스를 완료하세요.
serviceConnectConfiguration의 namespace 파라미터에 공유 네임스페이스 ARN을 지정하여 AWS CLI 또는 AWS SDK를 사용하여 서비스를 구성할 수도 있습니다.
aws ecs create-service \ --cluster my-cluster \ --service-name my-service \ --task-definition my-task-def \ --service-connect-configuration '{ "enabled": true, "namespace": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcdef1234567890", "services": [{ "portName": "web", "discoveryName": "my-service", "clientAliases": [{ "port": 80, "dnsName": "my-service" }] }] }'