

# 공유 AWS Cloud Map 네임스페이스를 사용한 Amazon ECS Service Connect 문제 해결
<a name="service-connect-shared-namespaces-troubleshooting"></a>

다음 정보를 활용하여 공유 AWS Cloud Map 네임스페이스 및 Service Connect 관련 문제를 해결합니다. 오류 메시지 찾기에 대한 자세한 내용은 [Amazon ECS 문제 해결](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/troubleshooting.html)을 참조하세요.

권한 누락으로 인해 또는 네임스페이스에 대한 액세스가 취소된 경우 권한 문제와 관련된 오류 메시지가 나타납니다.

**중요**  
`AWSRAMPermissionCloudMapECSFullPermission` 관리형 권한을 사용하여 Service Connect가 네임스페이스와 제대로 작동하도록 네임스페이스를 공유해야 합니다.

오류 메시지는 다음 형식 중 하나로 표시됩니다.

An error occurred (ClientException) when calling the <OperationName> operation: User: arn:aws:iam::<account-id>:user/<user-name> is not authorized to perform: <ActionName> on resource: <ResourceArn> because no resource-based policy allows the <ActionName> action

다음 시나리오에서는 이 형식으로 오류 메시지가 표시됩니다.

**클러스터 생성 또는 업데이트 장애**  
이러한 문제는 `CreateCluster` 또는 `UpdateCluster`와 같은 Amazon ECS 작업이 AWS Cloud Map 권한 누락으로 인해 실패할 경우 발생합니다. 이 작업에는 다음 AWS Cloud Map 작업에 대한 권한이 필요합니다.  
+ `servicediscovery:GetNamespace`
리소스 공유 초대가 소비자 계정에서 수락되었고 Service Connect 구성에서 올바른 네임스페이스 ARN이 사용되고 있는지 확인합니다.

**서비스 생성 또는 업데이트 장애**  
이러한 문제는 `CreateService` 또는 `UpdateService`와 같은 Amazon ECS 작업이 AWS Cloud Map 권한 누락으로 인해 실패할 경우 발생합니다. 이 작업에는 다음 AWS Cloud Map 작업에 대한 권한이 필요합니다.  
+ `servicediscovery:CreateService`
+ `servicediscovery:GetNamespace`
+ `servicediscovery:GetOperation`(새 AWS Cloud Map 서비스를 생성하는 경우)
+ `servicediscovery:GetService`(AWS Cloud Map 서비스가 이미 있는 경우)
리소스 공유 초대가 소비자 계정에서 수락되었고 Service Connect 구성에서 올바른 네임스페이스 ARN이 사용되고 있는지 확인합니다.

**`ListServicesByNamespace` 작업 실패**  
이 문제는 Amazon ECS `ListServicesByNamespace` 작업이 실패할 때 발생합니다. 이 작업에는 다음 AWS Cloud Map 작업에 대한 권한이 필요합니다.  
+ `servicediscovery:GetNamespace`
이 문제를 해결하는 방법:  
+ 소비자 계정에 `servicediscovery:GetNamespace` 권한이 있는지 확인합니다.
+ API를 직접 호출할 때 이름이 아닌 네임스페이스 ARN을 사용합니다.
+ 리소스 공유가 활성 상태이고 초대가 수락되었는지 확인합니다.

User: <iam-user> is not authorized to perform: <ActionName> on resource: <ResourceArn> with an explicit deny in an identity-based policy.

다음 시나리오에서는 이 형식으로 오류 메시지가 표시됩니다.

**서비스 삭제에 실패하고 `DRAINING` 상태로 멈춤**  
이 문제는 네임스페이스에 대한 액세스가 취소될 때 누락된 `servicediscovery:DeleteService` 권한으로 인해 Amazon ECS `DeleteService` 작업이 실패한 경우 발생합니다. 서비스는 처음에는 삭제에 성공한 것처럼 보일 수 있지만 `DRAINING` 상태에서 멈춥니다. 오류 메시지는 Amazon ECS 서비스 이벤트로 표시됩니다.  
이 문제를 해결하려면 네임스페이스 소유자가 네임스페이스를 소비자 계정과 공유하여 서비스 삭제를 완료해야 합니다.

**서비스의 태스크가 실행되지 않음**  
이 문제는 누락된 권한으로 인해 태스크가 시작되지 않은 경우 발생합니다. 오류 메시지는 중지된 태스크 오류로 표시됩니다. 자세한 내용은 [Amazon ECS 중지된 작업 오류 해결](resolve-stopped-errors.md) 섹션을 참조하세요.  
태스크를 실행하려면 다음 AWS Cloud Map 작업이 필요합니다.  
+ `servicediscovery:GetOperation`
+ `servicediscovery:RegisterInstance`
소비자 계정에 필요한 권한이 있고 공유 네임스페이스에 액세스할 수 있는지 확인합니다.

**작업이 완전히 중지되지 않거나 `DEACTIVATING` 또는 `DEPROVISIONING` 상태에서 멈춤**  
이 문제는 권한 누락으로 인해 종료 중 태스크가 AWS Cloud Map 서비스에서 등록 취소되지 않는 경우 발생합니다. 오류는 태스크 연결에서 `DescribeTasks` API를 사용하여 검색할 수 있는 `statusReason`으로 표시됩니다. 자세한 내용은 *Amazon Elastic Container Service API 참조*의 [DescribeTasks](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html)를 참조하세요.  
태스크를 중지하려면 다음 AWS Cloud Map 작업이 필요합니다.  
+ `servicediscovery:DeregisterInstance`
+ `servicediscovery:GetOperation`
공유 네임스페이스에 대한 액세스가 취소되면 네임스페이스 액세스가 복원될 때까지 태스크가 `DEACTIVATING` 또는 `DEPROVISIONING` 상태로 유지될 수 있습니다. 네임스페이스 소유자에게 네임스페이스에 대한 액세스를 복원하도록 요청합니다.