3

AWS에 성공적으로 배포 한 웹 응용 프로그램에 어려움을 겪고 있습니다. 웹 계층 환경에서 모든 것이 올바르게 작동합니다. 그러나 백그라운드 작업을 예약하기 위해 작업자 계층 환경을 추가해야합니다. 이제 AWS 응용 프로그램을위한 2 가지 환경이 생겼습니다. 하나는 웹 계층이고 다른 하나는 작업 계층입니다. 이 환경에서 웹 계층의 RDS 데이터베이스를 사용하기 때문에 작업자 계층에 대한 데이터베이스를 만들지 않았습니다. 웹 계층의 RDS 데이터베이스를 사용하도록 작업자 계층을 지정하려면 어떻게해야합니까?웹 계층 환경의 RDS 데이터베이스를 작업자 계층 환경에 연결합니다. elasticbeans

답변

1

Elastic Beanstalk은 내가 아는 한 실제로 RDS를 처리하는 최상의 솔루션은 아닙니다. RDS 인스턴스를 ElasticBeanstalk 환경에 연결하면 dev/test에 적합하지만 데이터베이스 인스턴스의 수명주기를 응용 프로그램 환경의 수명주기와 연결하는 것이 가장 좋은 방법은 아닙니다.

RDS를 간단히 분리하고 ElasticBeanstalk에 추가하지 말 것을 권하고 싶습니다. 별도로 처리하십시오. 이 접근 방식을 사용하면 여러 환경을 RDS 인스턴스에 연결하고 데이터베이스 수명주기에 영향을 미치지 않고 환경을 종료 할 수 있으며 파란색/녹색 배포 방법으로 지속적인 업데이트를 수행 할 수 있습니다.

ElasticBeanstalk 응용 프로그램에 환경 변수로 DB 세부 정보 (호스트, 포트, 사용자, 비밀번호)를 전달할 수 있습니다 (보안 위험으로 인해 문제가 될 수 있음).

또 다른 대안은 S3 버킷에 연결 문자열을 저장하여 EC2 인스턴스가 EC2 인스턴스 프로필을 통해이 S3 버킷에 액세스하도록 허용하는 것입니다.

Using Elastic Beanstalk with Amazon RDS docs에서 더 많은 정보와 예제를 처리하는 방법을 찾을 수 있습니다.

위의 방법으로 해결되지 않으면 응용 프로그램 수명주기, 인프라 및 종속성을보다 제어 된 방식으로 관리하기 위해 CloudFormation을 조사해야 할 때입니다.