기본 VPC에서 외부 Amazon RDS 인스턴스를 시작하고 이에 연결 - AWS Elastic Beanstalk

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

기본 VPC에서 외부 Amazon RDS 인스턴스를 시작하고 이에 연결

다음 절차에서는 외부 Amazon RDS 인스턴스를 기본 VPC 에 연결하는 프로세스를 설명합니다. 사용자 지정 VPC를 사용하는 경우에도 프로세스는 동일합니다. 환경과 DB 인스턴스가 동일한 서브넷 또는 서로 통신하도록 허용하는 서브넷에 있어야 한다는 점만 추가됩니다. Elastic Beanstalk에서 사용할 사용자 지정 VPC 구성에 대한 자세한 내용은 Amazon VPC에서 Elastic Beanstalk 사용을(를) 참조하세요.

참고
  • 새로운 DB 인스턴스를 시작하는 대신 이전에 있었던 Elastic Beanstalk에서 생성한 데이터베이스로 시작한 다음, Beanstalk 환경에서 분리할 수 있습니다. 자세한 내용은 Elastic Beanstalk 환경에 데이터베이스 추가 단원을 참조하십시오. 이 옵션을 사용하면 새 데이터베이스를 시작하는 절차를 완료할 필요가 없습니다. 그러나 이 주제에서 설명하는 후속 절차를 완료해야 합니다.

  • Elastic Beanstalk에서 만든 후 Beanstalk 환경에서 분리된 데이터베이스로 시작하는 경우 첫 번째 단계 그룹을 건너뛰고 RDS 인스턴스의 보안 그룹에서 인바운드 규칙 수정하기 아래의 그룹화된 단계를 계속할 수 있습니다.

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

기본 VPC에서 RDS DB 인스턴스를 시작하려면
  1. RDS 콘솔을 엽니다.

  2. 탐색 창에서 데이터베이스를 선택합니다.

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

  4. Standard Create(표준 생성)를 선택합니다.

    중요

    Easy Create(간편 생성)를 선택하지 마십시오. 이를 선택하면 이 RDS DB를 시작하는 데 필요한 설정을 구성할 수 없습니다.

  5. Additional configuration(추가 구성) 아래 Initial database name(초기 데이터베이스 이름)ebdb을 입력합니다.

  6. 기본 설정을 검토하고 특정 요구 사항에 따라 이러한 설정을 조정합니다. 다음 옵션에 주의하십시오.

    • DB 인스턴스 클래스(DB instance class) - 사용하는 워크로드에 적절한 메모리와 CPU 성능을 갖고 있는 인스턴스 크기를 선택합니다.

    • 다중 AZ 배포(Multi-AZ deployment) - 고가용성을 위해 이 옵션을 다른 AZ에 Aurora 복제본/읽기 노드 생성(Create an Aurora Replica/Reader node in a different AZ)으로 설정합니다.

    • 마스터 사용자 이름(Master username)마스터 암호(Master password) - 데이터베이스 사용자 이름과 암호입니다. 이러한 값은 나중에 다시 사용할 것이므로 적어둡니다.

  7. 나머지 옵션의 기본 설정을 확인하고 데이터베이스 생성을 선택합니다.

그 다음 DB 인스턴스에 연결된 보안 그룹을 수정하여 해당 포트에서 인바운드 트래픽을 허용합니다. 이 보안 그룹은 나중에 Elastic Beanstalk 환경에 연결할 해당 동일 보안 그룹입니다. 결과적으로, 추가한 규칙은 동일한 보안 그룹의 다른 리소스에 대한 인바운드 액세스 권한을 부여합니다.

RDS 인스턴스에 연결된 보안 그룹에 대한 인바운드 규칙 수정하기
  1. Amazon RDS 콘솔을 엽니다.

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

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

  4. 연결 단원에서 이 페이지에 표시되는 서브넷, 보안 그룹엔드포인트를 적어둡니다. 이는 나중에 이 정보를 사용할 수 있도록 하기 위한 것입니다.

  5. 보안에는 DB 인스턴스와 연결된 보안 그룹이 표시됩니다. 링크를 열어 Amazon EC2 콘솔에서 보안 그룹을 봅니다.

  6. 보안 그룹 세부 정보에서 인바운드 탭을 선택합니다.

  7. 편집을 선택합니다.

  8. 규칙 추가(Add Rule)를 선택합니다.

  9. 유형에서 애플리케이션이 사용하는 DB 엔진을 선택합니다.

  10. 소스sg-를 입력하여 사용할 수 있는 보안 그룹 목록을 확인합니다. Elastic Beanstalk 환경에서 사용되는 Auto Scaling 그룹과 연결된 보안 그룹을 선택합니다. 따라서 환경의 Amazon EC2 인스턴스가 데이터베이스에 액세스할 수 있습니다.

    Amazon EC2 콘솔에서 보안 그룹의 인바운드 규칙을 편집하는 화면 이미지
  11. Save(저장)를 선택합니다.

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

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

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

      1. Elastic Beanstalk 콘솔을 연 다음 리전(Regions) 목록에서 해당 AWS 리전을 선택합니다.

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

        참고

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

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

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

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

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

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

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

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

Amazon RDS DB 인스턴스의 환경 속성을 구성하려면
  1. Elastic Beanstalk 콘솔을 연 다음 리전(Regions) 목록에서 해당 AWS 리전을 선택합니다.

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

    참고

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

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

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

  5. 환경 속성 단원에서 애플리케이션이 연결 문자열을 구성하기 위해 읽는 변수를 정의합니다. 통합된 RDS DB 인스턴스가 있는 환경과의 호환성을 위해 다음과 같은 이름과 값을 사용합니다. RDS 콘솔에서 암호를 제외한 모든 값을 찾을 수 있습니다.

    속성 이름 설명 속성 값

    RDS_HOSTNAME

    DB 인스턴스의 호스트 이름입니다.

    Amazon RDS 콘솔 연결 및 보안 탭의 엔드포인트입니다.

    RDS_PORT

    DB 인스턴스가 연결을 허용하는 포트입니다. DB 엔진마다 기본값이 다릅니다.

    Amazon RDS 콘솔 연결 및 보안 탭의 포트입니다.

    RDS_DB_NAME

    데이터베이스 이름은 ebdb입니다.

    Amazon RDS 콘솔 구성 탭의 DB 이름입니다.

    RDS_USERNAME

    데이터베이스에 구성된 사용자 이름입니다.

    Amazon RDS 콘솔 구성 탭의 마스터 사용자 이름입니다.

    RDS_PASSWORD

    데이터베이스에 구성된 암호입니다.

    Amazon RDS 콘솔에서 참조용 정보를 사용할 수 없습니다.

    RDS 속성이 추가된 환경 속성 구성 섹션
  6. 변경 사항을 저장하려면 페이지 하단에서 적용을 선택합니다.

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

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

환경의 앱 서버를 다시 시작하려면
  1. Elastic Beanstalk 콘솔을 연 다음 리전(Regions) 목록에서 해당 AWS 리전을 선택합니다.

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

    참고

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

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