Elastic Beanstalk를 사용하여 EC2 클래식 환경에서 외부 아마존 RDS 인스턴스 시작 및 연결 (사용 중지) - AWS Elastic Beanstalk

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

Elastic Beanstalk를 사용하여 EC2 클래식 환경에서 외부 아마존 RDS 인스턴스 시작 및 연결 (사용 중지)

중요

아마존 EC2 -클래식은 2022년 8월 15일에 표준 지원이 종료되었습니다. 자세한 내용은 EC2-Classic Networking이 종료되었습니다. 블로그 게시물을 준비하는 방법은 다음과 같습니다.

EC2Classic (noVPC) 과 함께 AWS Elastic Beanstalk사용하는 경우 보안 그룹 작동 방식의 차이로 인해 절차가 약간 변경됩니다. EC2Classic에서는 DB 인스턴스가 EC2 보안 그룹을 사용할 수 없으므로 Amazon에서만 작동하는 DB 보안 그룹을 갖게 RDS 됩니다.

보안 그룹으로부터의 EC2 인바운드 액세스를 허용하는 규칙을 DB 보안 그룹에 추가할 수 있습니다. 그러나 환경과 연결된 Auto Scaling 그룹에는 DB 보안 그룹을 연결할 수 없습니다. DB 보안 그룹과 환경 간에 종속성이 생기지 않도록 하려면 EC2 Amazon에서 세 번째 보안 그룹을 생성해야 합니다. 그런 다음 DB 보안 그룹에 규칙을 추가하여 새 보안 그룹에 대한 인바운드 액세스 권한을 부여해야 합니다. 마지막으로 Elastic Beanstalk 환경의 Auto Scaling 그룹에 할당해야 합니다.

참고
  • Elastic Beanstalk에서 만든 후 Beanstalk 환경에서 분리된 데이터베이스로 시작하는 경우 첫 번째 단계 그룹을 건너뛰고 브리지 보안 그룹 생성하기 아래의 그룹화된 단계를 계속할 수 있습니다.

  • 프로덕션 환경에 대해 분리된 데이터베이스를 사용하려는 경우 데이터베이스에서 사용하는 스토리지 유형이 워크로드에 적합한지 확인합니다. 자세한 내용은 Amazon RDS 사용 설명서의 DB 인스턴스 스토리지DB 인스턴스 수정을 참조하십시오.

EC2클래식에서 RDS 인스턴스를 시작하려면 (아니요VPC)
  1. RDS 관리 콘솔을 엽니다.

  2. 데이터베이스 생성을 선택합니다.

  3. 마법사를 진행합니다. 다음 옵션에 입력하는 값을 적어 둡니다.

    • 마스터 사용자 이름

    • 마스터 암호

  4. 고급 설정 구성이 표시되면 네트워크 및 보안에서 다음을 선택합니다.

    • VPCNot in VPC. 이 옵션을 사용할 수 없는 경우 계정에서 EC2VPC-Classic을 지원하지 않거나 에서만 사용할 수 있는 인스턴스 유형을 선택했을 수 있습니다.

    • 가용 영역(Availability Zone) – No Preference

    • DB 보안 그룹(DB Security Group(s)) – Create new Security Group

  5. 나머지 옵션을 구성하고 데이터베이스 생성을 선택합니다. 다음 옵션에 입력하는 값을 적어 둡니다.

    • 데이터베이스 이름(Database Name)

    • 데이터베이스 포트

EC2-Classic에서는 DB 인스턴스에 보안 그룹 대신 DB 보안 그룹이 있습니다VPC. DB 보안 그룹을 Elastic Beanstalk 환경에 연결할 수 없습니다. 대신 DB 인스턴스에 액세스하고 환경에 연결할 권한을 부여할 수 있는 새 보안 그룹을 만들어야 합니다. 이를 브리지 보안 그룹이라고 하며 이름을 webapp-bridge로 지정합니다.

브리지 보안 그룹을 만들려면
  1. Amazon EC2 콘솔을 엽니다.

  2. 탐색 사이드바의 네트워크 및 보안(Network & Security) 아래에서 보안 그룹(Security Groups)을 선택합니다.

  3. 보안 그룹 생성을 선택합니다.

  4. 보안 그룹 이름webapp-bridge을 입력합니다.

  5. 설명(Description)Provide access to DB instance from Elastic Beanstalk environment instances.를 입력합니다.

  6. 또는 VPC, 기본값을 선택된 상태로 두십시오.

  7. 생성 선택

그런 다음 브리지 보안 그룹에서 오는 인바운드 트래픽을 허용하도록 DB 인스턴스에 연결된 보안 그룹을 수정합니다.

인스턴스의 보안 그룹에서 인그레스 규칙을 수정하려면 RDS
  1. Amazon RDS 콘솔을 엽니다.

  2. 데이터베이스를 선택합니다.

  3. 세부 정보를 보려면 DB 인스턴스의 이름을 선택합니다.

  4. 연결 섹션에서 보안 아래에 DB 인스턴스와 연결된 보안 그룹이 표시됩니다. 링크를 열어 Amazon EC2 콘솔에서 보안 그룹을 확인합니다.

  5. 보안 그룹 세부 정보에서 연결 유형을 EC2 보안 그룹으로 설정합니다.

  6. EC2보안 그룹 이름을 생성한 브리지 보안 그룹의 이름으로 설정합니다.

  7. Authorize를 선택합니다.

그런 다음 실행 중인 환경에 브리지 보안 그룹을 추가합니다. 이 절차에서는 추가 보안 그룹을 연결한 상태에서 환경의 모든 인스턴스를 다시 프로비저닝해야 합니다.

환경에 보안 그룹을 추가하려면
  • 다음 중 하나를 수행합니다.

    • Elastic Beanstalk 콘솔을 사용하여 보안 그룹을 추가하려면

      1. Elastic Beanstalk 콘솔을 열고 지역 목록에서 원하는 지역을 선택합니다. AWS 리전

      2. 탐색 창에서 환경을 선택한 다음 목록에서 환경의 이름을 선택합니다.

        참고

        여러개의 환경을 보유한 경우 검색 창을 통해 환경 목록을 필터링합니다.

      3. 탐색 창에서 구성을 선택합니다.

      4. [인스턴스] 구성 범주에서 [편집]을 선택합니다.

      5. EC2보안 그룹에서 Elastic Beanstalk가 생성하는 인스턴스 보안 그룹 외에도 인스턴스에 연결할 보안 그룹을 선택합니다.

      6. 변경 사항을 저장하려면 페이지 하단에서 적용을 선택합니다.

      7. 경고를 읽은 후 확인을 선택합니다.

    • 구성 파일을 이용하여 보안 그룹을 추가하려면 securitygroup-addexisting.config 예제 파일을 사용합니다.

그 다음 환경 속성을 사용하여 연결 정보를 환경에 전달합니다. Elastic Beanstalk 콘솔을 사용하여 환경에 DB 인스턴스를 추가하면 Elastic Beanstalk는 _와 같은 환경 RDS 속성을 사용하여 애플리케이션에 연결 정보를 전달합니다. HOSTNAME 통합된 DB 인스턴스와 외부 DB 인스턴스 모두에 동일한 애플리케이션 코드를 사용하기 위해 동일한 속성을 사용할 수 있습니다. 또는 고유한 속성 이름을 선택할 수도 있습니다.

환경 속성을 구성하려면
  1. Elastic Beanstalk 콘솔을 열고 지역 목록에서 원하는 지역을 선택합니다. AWS 리전

  2. 탐색 창에서 환경을 선택한 다음 목록에서 환경의 이름을 선택합니다.

    참고

    여러개의 환경을 보유한 경우 검색 창을 통해 환경 목록을 필터링합니다.

  3. 탐색 창에서 구성을 선택합니다.

  4. 업데이트, 모니터링 및 로깅 구성 범주에서 편집을 선택합니다.

  5. 환경 속성 단원에서 애플리케이션이 연결 문자열을 구성하기 위해 읽는 변수를 정의합니다. 통합 RDS 인스턴스가 있는 환경과의 호환성을 위해 다음을 사용하십시오.

    • RDS_DB_ NAME — Amazon RDS 콘솔에 있는 DB 이름입니다.

    • RDS_ USERNAME — 환경에 데이터베이스를 추가할 때 입력하는 마스터 사용자 이름.

    • RDS_ PASSWORD — 환경에 데이터베이스를 추가할 때 입력하는 마스터 비밀번호입니다.

    • RDS_ HOSTNAME — Amazon RDS 콘솔에 있는 DB 인스턴스의 엔드포인트입니다.

    • RDS_ PORT — Amazon RDS 콘솔에 있는 포트입니다.

    속성이 추가된 환경 RDS 속성 구성 섹션
  6. 적용을 선택합니다

환경 속성을 읽고 연결 문자열을 구성하도록 애플리케이션을 아직 프로그래밍하지 않은 경우, 다음 언어별 주제에서 지침을 참조하세요.

마지막으로 애플리케이션이 환경 변수를 읽는 시기에 따라 환경의 인스턴스에서 애플리케이션 서버를 다시 시작해야 할 수 있습니다.

환경의 앱 서버 다시 시작하기
  1. Elastic Beanstalk 콘솔을 열고 지역 목록에서 원하는 지역을 선택합니다. AWS 리전

  2. 탐색 창에서 환경을 선택한 다음 목록에서 환경의 이름을 선택합니다.

    참고

    여러개의 환경을 보유한 경우 검색 창을 통해 환경 목록을 필터링합니다.

  3. 작업(Actions)을 선택한 후 앱 서버 다시 시작(Restart App Server(s))을 선택합니다.