프라이빗 서브넷의 Fargate에서 Amazon ECS 태스크를 실행하려면 어떻게 해야 하나요?

2분 분량
0

프라이빗 서브넷의 AWS Fargate에서 Amazon Elastic Container Service(Amazon ECS) 태스크를 실행하려고 합니다.

간략한 설명

프라이빗 서브넷에서 Fargate 태스크를 실행할 수 있습니다. 다만 사용 사례에 따라서는 퍼블릭 리포지토리에서 이미지를 가져오는 등 몇몇 작업을 위해 인터넷에 접속해야 할 수 있습니다. 또는 태스크에 대한 인터넷 액세스를 차단할 수 있습니다.

인터넷 액세스 없이 프라이빗 서브넷에서 Fargate 태스크를 실행하려면 VPC 엔드포인트를 사용하세요. VPC 엔드포인트를 사용하면 태스크에 인터넷 액세스 권한을 부여하지 않고도 Fargate 태스크를 실행할 수 있습니다. 필요한 엔드포인트는 프라이빗 IP 주소를 통해 액세스됩니다.

프라이빗 서브넷에서 인터넷에 액세스하는 태스크가 필요한 경우 NAT 게이트웨이를 사용하여 인터넷 액세스 권한을 부여합니다. 필요한 엔드포인트는 NAT 게이트웨이의 퍼블릭 IP 주소를 통해 액세스됩니다.

해결 방법

VPC 생성

퍼블릭 또는 프라이빗 서브넷을 포함한 Amazon Virtual Private Cloud(Amazon VPC)를 생성합니다.

그런 다음 사용 사례에 따라 이 문서의 인터넷 액세스 없이 프라이빗 서브넷 사용(VPC 엔드포인트 방식) 또는 인터넷 액세스가 가능한 프라이빗 서브넷 사용 섹션의 단계를 따릅니다.

인터넷 액세스 없이 프라이빗 서브넷 사용(VPC 엔드포인트 방식)

인터페이스 엔드포인트 및 S3 게이트웨이를 생성하려면 다음을 수행합니다.

  1. S3 게이트웨이 엔드포인트를 생성합니다.
  2. ECR 인터페이스 엔드포인트를 생성합니다.
  3. 작업에서 Secrets Manager를 사용하여 보안 암호를 태스크 및 CloudWatch Logs에 삽입하는 경우 Secrets ManagerCloudWatch Logs에 대한 인터페이스 엔드포인트를 생성합니다.

그런 다음 이 문서의 Amazon ECS 클러스터 및 서비스 생성 섹션에 나와 있는 지침을 따릅니다.

인터넷 액세스가 가능한 프라이빗 서브넷 사용

NAT 게이트웨이를 생성합니다.

NAT 게이트웨이를 생성할 때 주의할 점은 다음과 같습니다.

  • NAT 게이트웨이를 퍼블릭 서브넷 안에 배치해야 합니다.
  • 프라이빗 서브넷의 라우팅 테이블을 업데이트합니다. [Destination]에 [0.0.0.0/0]을 입력합니다. **대상(Target)**에는 NAT 게이트웨이의 ID를 선택합니다.

그런 다음 이 문서의 Amazon ECS 클러스터 및 서비스 생성 섹션에 나와 있는 지침을 따릅니다.

Amazon ECS 클러스터 및 서비스 생성

  1. 네트워킹 전용(Networking only) 템플릿(Fargate에서 제공)을 사용해 Amazon ECS 클러스터를 생성합니다.
  2. Amazon ECS 서비스 생성

서비스를 위해 네트워크를 구성할 때 주의할 점은 다음과 같습니다.

  1. 클러스터 VPC에는 1단계에서 생성한 클러스터를 선택합니다.
  2. 앞서 선택한 방법에 따라 VPC 엔드포인트에 대해 구성한 프라이빗 서브넷 또는 NAT 게이트웨이에 대해 구성한 서브넷을 선택합니다.

이제 새 태스크가 프라이빗 서브넷에서 실행됩니다.


AWS 공식
AWS 공식업데이트됨 2년 전