EB CLI를 사용하여 여러 Elastic Beanstalk 환경을 하나의 그룹으로 관리 - AWS Elastic Beanstalk

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

EB CLI를 사용하여 여러 Elastic Beanstalk 환경을 하나의 그룹으로 관리

EB CLI를 사용하여 AWS Elastic Beanstalk 환경 그룹을 만들 수 있으며, 각 환경 그룹은 서비스 중심 아키텍처 애플리케이션의 개별 구성 요소를 실행합니다. EB CLI는 ComposeEnvironments API를 사용하여 이 같은 그룹을 관리합니다.

참고

환경 그룹은 멀티컨테이너 Docker 환경의 여러 컨테이너들과 다릅니다. 환경 그룹에서는 애플리케이션의 각 구성 요소가 전용 Amazon EC2 인스턴스를 가지고 별도의 Elastic Beanstalk 환경에서 실행됩니다. 구성 요소마다 별도로 확장할 수가 있습니다. 멀티컨테이너 Docker에서는 한 애플리케이션의 여러 구성 요소를 하나의 환경으로 결합합니다. 모든 구성 요소가 동일한 Amazon EC2 인스턴스 세트를 공유하고, 각 인스턴스가 여러 개의 Docker 컨테이너를 실행합니다. 애플리케이션의 필요에 따라 이들 아키텍처 중 하나를 선택하십시오.

멀티컨테이너 Docker에 대한 자세한 내용은 Amazon ECS 플랫폼 브랜치 사용 단원을 참조하십시오.

애플리케이션 구성 요소는 다음 폴더 구조로 구성됩니다.

~/project-name |-- component-a | `-- env.yaml `-- component-b `-- env.yaml

각 하위 폴더는 이름이 env.yaml인 환경 정의 파일 및 자체 환경에서 실행될 애플리케이션의 독립적인 구성 요소의 소스 코드로 구성됩니다. env.yaml 형식에 대한 자세한 내용은 환경 매니페스트(env.yaml) 단원을 참조하십시오.

Compose Environments API를 사용하려면 먼저 프로젝트 폴더에서 eb init를 실행하여, 각 구성 요소를 --modules 옵션을 통해 소속된 폴더 이름으로 지정합니다.

~/workspace/project-name$ eb init --modules component-a component-b

EB CLI에 각 구성 요소를 구성하라는 메시지가 표시되면 각 구성 요소 폴더에 .elasticbeanstalk 디렉터리를 만듭니다. EB CLI는 부모 디렉터리에 구성 파일을 만들지 않습니다.

~/project-name |-- component-a | |-- .elasticbeanstalk | `-- env.yaml `-- component-b |-- .elasticbeanstalk `-- env.yaml

그런 다음 구성 요소별로 하나씩 eb create 명령과 생성할 환경 목록을 실행합니다.

~/workspace/project-name$ eb create --modules component-a component-b --env-group-suffix group-name

이 명령은 각 구성 요소에 대한 환경을 생성합니다. EnvironmentName 파일에 지정된 env.yaml을 그룹 이름(하이픈으로 구분)으로 연결하여 환경 이름을 만듭니다. 두 옵션과 하이픈의 총 길이는 허용되는 최대 환경 이름 길이인 23자를 초과할 수 없습니다.

환경을 업데이트하려면 eb deploy 명령을 사용하십시오.

~/workspace/project-name$ eb deploy --modules component-a component-b

각 구성 요소를 개별적으로 또는 하나의 그룹으로 업데이트할 수 있습니다. --modules 옵션으로 업데이트하려는 구성 요소를 지정합니다.

EB CLI는 사용한 그룹 이름을 eb create에 있는 EB CLI 구성 파일의 branch-defaults 섹션에 /.elasticbeanstalk/config.yml로 저장합니다. 다른 그룹에 애플리케이션을 배포하려면 --env-group-suffix를 실행할 때 eb deploy 옵션을 사용하십시오. 아직 그룹이 존재하지 않는 경우, EB CLI는 새 환경 그룹을 만듭니다.

~/workspace/project-name$ eb deploy --modules component-a component-b --env-group-suffix group-2-name

환경을 종료하려면 각 모듈의 폴더에서 eb terminate를 실행합니다. 기본적으로 EB CLI는 다른 실행 환경이 종속되어 있는 환경을 종료할 때 오류를 표시합니다. 먼저 종속 환경을 종료하거나 --ignore-links 옵션을 사용하여 기본 동작을 재정의합니다.

~/workspace/project-name/component-b$ eb terminate --ignore-links