Amazon ECS Service Connect 구성 개요 - Amazon Elastic Container Service

Amazon ECS Service Connect 구성 개요

Service Connect를 사용하는 경우 리소스에서 구성해야 하는 파라미터가 있습니다.

Service Connect를 위해 구성해야 하는 Amazon ECS 리소스
파라미터 위치 앱 유형 설명 필수
태스크 정의 클라이언트 클라이언트 작업 정의에서 Service Connect에 사용할 수 있는 변경 사항이 없습니다. N/A
태스크 정의 클라이언트-서버 서버는 컨테이너의 portMappings에 있는 포트에 name 필드를 추가해야 합니다. 자세한 내용은 portMappings 단원을 참조하세요.
태스크 정의 클라이언트-서버 서버는 선택적으로 애플리케이션 프로토콜(예: HTTP)을 제공하여 서버 애플리케이션에 대한 프로토콜별 지표를 수신할 수 있습니다(예: HTTP 5xx). 아니요
서비스 정의 클라이언트 조인할 네임스페이스를 구성하려면 클라이언트 서비스에서 serviceConnectConfiguration을 추가해야 합니다. 이 네임스페이스에는 이 서비스가 검색해야 하는 모든 서버 서비스가 포함되어야 합니다. 자세한 내용은 serviceConnectConfiguration 단원을 참조하십시오.
서비스 정의 클라이언트-서버 서버 서비스에서 serviceConnectConfiguration을 추가하여 서비스에서 사용할 수 있는 DNS 이름, 포트 번호 및 네임스페이스를 구성해야 합니다. 자세한 내용은 serviceConnectConfiguration 단원을 참조하십시오.
클러스터 클라이언트 클러스터는 기본 Service Connect 네임스페이스를 추가할 수 있습니다. 클러스터의 새 서비스는 Service Connect가 서비스에서 구성된 경우 네임스페이스를 상속합니다. 아니요
클러스터 클라이언트-서버 서버 서비스에 적용되는 클러스터의 Service Connect에 사용할 수 있는 변경 사항이 없습니다. 서버 작업 정의 및 서비스는 해당 구성을 설정해야 합니다. N/A
Service Connect 구성 단계 개요

다음 단계는 Service Connect 구성 방법의 개요를 제공합니다.

중요
  • Service Connect에서 사용자 계정에 AWS Cloud Map 서비스를 생성합니다. 인스턴스를 수동으로 등록/등록 취소하거나, 인스턴스 속성을 변경하거나, 서비스를 삭제하여 이러한 AWS Cloud Map 리소스를 수정하면 애플리케이션 트래픽 또는 후속 배포에서 예상치 못한 동작이 발생할 수 있습니다.

  • Service Connect는 태스크 정의에서 링크를 지원하지 않습니다.

  1. 작업 정의의 포트 매핑에 포트 이름을 추가합니다. 또한 애플리케이션의 계층 7 프로토콜을 식별하여 추가 지표를 얻을 수 있습니다.

  2. AWS Cloud Map 네임스페이스를 사용하여 ECS 클러스터를 생성하거나 네임스페이스를 별도로 생성합니다. 간단한 구성을 위해 네임스페이스에 원하는 이름을 사용하여 클러스터를 생성하고 네임스페이스에 동일한 이름을 지정합니다. 이 경우 Amazon ECS는 필요한 구성으로 새 HTTP 네임스페이스를 생성합니다. Service Connect는 Amazon Route 53에서 DNS 호스팅 영역을 사용하거나 생성하지 않습니다.

  3. 네임스페이스 내에 Service Connect 엔드포인트를 생성하도록 서비스를 구성합니다.

  4. 서비스를 배포하여 엔드포인트를 생성합니다. Amazon ECS는 각 작업에 Service Connect 프록시 컨테이너를 추가하고 AWS Cloud Map에 Service Connect 엔드포인트를 생성합니다. 이 컨테이너는 작업 정의에 구성되어 있지 않고, 작업 정의를 수정하지 않고 재사용하여 동일한 네임스페이스 또는 여러 네임스페이스에 여러 서비스를 생성할 수 있습니다.

  5. 엔드포인트에 연결할 클라이언트 앱을 서비스로 배포합니다. Amazon ECS는 각 작업에서 Service Connect 프록시를 통해 이를 Service Connect 엔드포인트에 연결합니다.

    애플리케이션은 프록시를 서비스 연결 엔드포인트에 연결하는 데에만 사용합니다. 프록시를 사용하기 위한 추가 구성은 없습니다. 프록시는 라운드 로빈 로드 밸런싱, 이상값 탐지 및 재시도를 수행합니다. 프록시에 대한 자세한 내용은 Service Connect 프록시를 참조하세요.

  6. Amazon CloudWatch의 Service Connect 프록시를 통해 트래픽을 모니터링합니다.

클러스터 구성

클러스터를 생성하거나 업데이트할 때 Service Connect의 기본 네임스페이스를 설정할 수 있습니다. 동일한 AWS 리전 및 계정에 없는 네임스페이스 이름을 지정하면 새 HTTP 네임스페이스가 생성됩니다.

클러스터를 생성하고 기본 Service Connect 네임스페이스를 지정하면 클러스터는 Amazon ECS가 네임스페이스를 생성하는 동안 PROVISIONING 상태로 대기합니다. 네임스페이스의 상태를 나타내는 클러스터 상태에서 attachment를 볼 수 있습니다. 연결은 기본적으로 AWS CLI에 표시되지 않으므로 연결을 보려면 --include ATTACHMENTS를 추가해야 합니다.

서비스 구성

Service Connect는 최소 구성을 요구하도록 설계됩니다. 작업 정의의 Service Connect에서 사용할 각 포트 매핑의 이름을 설정해야 합니다. 서비스에서 클라이언트 서비스를 만들려면 Service Connect를 켜고 네임스페이스를 선택해야 합니다. 클라이언트-서버 서비스를 만들려면 포트 매핑 중 하나의 이름과 일치하는 단일 Service Connect 서비스 구성을 추가해야 합니다. Amazon ECS는 작업 정의의 포트 번호와 포트 이름을 재사용하여 Service Connect 서비스와 엔드포인트를 정의합니다. 이러한 값을 재정의하려면 콘솔에서 다른 파라미터인 Discovery, DNSPort를 사용하거나 Amazon ECS API에서 discoveryNameclientAliases를 각각 사용할 수 있습니다.