Amazon S3에서 Elastic Beanstalk 사용
Amazon Simple Storage Service(Amazon S3)는 매우 내구력 있는 내결함성 데이터 스토리지를 제공합니다.
Elastic Beanstalk는 환경을 생성하는 각 리전에 대해 elasticbeanstalk-
라는 Amazon S3 버킷을 생성합니다. Elastic Beanstalk는 이 버킷을 사용하여 해당 애플리케이션이 제대로 작동하는 데 필요한 객체(예: 임시 구성 파일)를 저장합니다.region
-account-id
Elastic Beanstalk는 생성하는 Amazon S3 버킷에 대해 기본 암호화를 켜지 않습니다. 이는 기본적으로 객체가 버킷에 암호화되지 않은 상태로 저장된다(권한이 있는 사용자만이 액세스할 수 있다)는 의미입니다. 일부 애플리케이션의 경우 하드 드라이브, 데이터베이스 등에 저장 시 모든 객체의 암호화가 필요합니다(유휴 시 암호화라고도 함). 이 요구 사항이 있는 경우 기본 암호화에 대해 계정의 버킷을 구성할 수 있습니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 S3 버킷에 대한 Amazon S3 기본 암호화를 참조하세요.
Elastic Beanstalk Amazon S3 버킷의 내용
다음 표에는 Elastic Beanstalk가 elasticbeanstalk-
Amazon S3 버킷에 저장하는 일부 객체가 나와 있습니다. 또한 수동으로 삭제해야 하는 객체도 나와 있습니다. 불필요한 스토리지 비용이 발생하지 않도록 하기 위해 그리고 개인 정보가 보존되지 않도록 하기 위해서는 객체가 더 이상 필요 없을 경우 수동으로 삭제해야 합니다.*
객체 | 언제 저장되는가? | 언제 삭제되는가? |
---|---|---|
환경을 생성하거나, 기존 환경에 애플리케이션 코드를 배포할 때, Elastic Beanstalk는 Amazon S3에 애플리케이션 버전을 저장하고 환경과 연결합니다. |
애플리케이션 삭제 중 그리고 버전 수명 주기에 따라 |
|
Elastic Beanstalk 콘솔 또는 EB CLI를 사용하여 새로운 애플리케이션 버전을 업로드하면 Elastic Beanstalk가 그 복사본을 Amazon S3에 저장하고 환경의 소스 번들로 설정합니다. |
직접 만듭니다. 애플리케이션 버전을 삭제할 경우 Amazon S3에서 버전 삭제를 선택하여 관련 소스 번들을 삭제할 수도 있습니다. 자세한 내용은 단원을 참조하십시오애플리케이션 버전 관리 |
|
사용자 지정 플랫폼을 생성하면 Elastic Beanstalk가 관련 데이터를 Amazon S3에 임시로 저장합니다. |
사용자 지정 플랫폼 생성 완료 시 |
|
Elastic Beanstalk에 인스턴스 로그 파일(테일 또는 번들 로그)을 검색하여 Amazon S3에 저장하도록 요청할 수 있습니다. 로그 교체를 활성화하여 로그가 교체된 후 이를 Amazon S3에 자동으로 게시하도록 환경을 구성할 수도 있습니다. |
테일 및 번들 로그: 생성되고 15분 후 교체된 로그: 직접 만듭니다. |
|
직접 만듭니다. |
직접 만듭니다. |
Elastic Beanstalk Amazon S3 버킷에서 객체 삭제
환경을 종료하거나 애플리케이션을 삭제하면 Elastic Beanstalk가 Amazon S3에서 대부분의 관련 객체를 삭제합니다. 실행 중인 애플리케이션의 저장 비용을 최소화하려면 애플리케이션에 필요하지 않은 객체를 정기적으로 삭제하십시오. 또한 Elastic Beanstalk Amazon S3 버킷의 내용에 나와 있듯이 수동으로 삭제해야 하는 객체에 유의하십시오. 개인 정보가 불필요하게 보존되지 않도록 하려면 더 이상 필요 없는 객체를 삭제하십시오.
-
애플리케이션에서 더 이상 사용하지 않을 애플리케이션 버전을 삭제하십시오. 애플리케이션 버전을 삭제할 경우, Amazon S3에서 버전 삭제를 선택하여 관련 소스 번들(애플리케이션의 소스 코드 사본과 구성 파일)도 삭제할 수 있습니다. 이러한 소스 번들은 애플리케이션을 배포하거나 애플리케이션 버전을 업로드할 때 Elastic Beanstalk가 Amazon S3에 업로드한 것입니다. 애플리케이션 버전을 삭제하는 방법은 애플리케이션 버전 관리 단원을 참조하십시오.
-
필요 없는 교체된 로그를 삭제합니다. 또는 나중에 분석하기 위해 Amazon S3 Glacier로 다운로드하거나 이동합니다.
-
저장된 구성 중 환경에서 더 이상 사용하지 않을 구성을 삭제합니다.
Elastic Beanstalk Amazon S3 버킷 삭제
Elastic Beanstalk에서는 생성되는 버킷에 버킷 정책을 적용하여 환경에서 버킷에 쓸 수 있도록 허용하면서 실수로 삭제되지 않도록 방지합니다. Elastic Beanstalk에서 생성된 버킷을 삭제해야 하는 경우 먼저 Amazon S3 콘솔에서 버킷 속성의 권한(Permissions) 섹션에서 버킷 정책을 삭제합니다.
Elastic Beanstalk가 생성한 버킷을 계정에서 삭제할 경우 해당 리전에 기존 애플리케이션과 실행 중인 환경이 있으면 애플리케이션이 제대로 작동하지 않을 수 있습니다. 예:
-
환경을 확장할 경우 Elastic Beanstalk는 Amazon S3 버킷에서 환경의 애플리케이션 버전을 확인하고 이를 사용하여 새로운 Amazon EC2 인스턴스를 시작할 수 있어야 합니다.
-
사용자 지정 플랫폼을 생성할 경우 Elastic Beanstalk는 이 생성 과정에서 임시 Amazon S3 스토리지를 사용합니다.
전체 버킷을 삭제하는 대신 필요 없는 특정 객체를 Elastic Beanstalk Amazon S3 버킷에서 삭제하는 것이 좋습니다.
Elastic Beanstalk 스토리지 버킷을 삭제하려면(콘솔)
-
Amazon S3 콘솔
을 엽니다. -
버킷 이름을 선택하여 Elastic Beanstalk 스토리지 버킷의 페이지를 엽니다.
-
[Permissions] 탭을 선택합니다.
-
[Bucket Policy]를 선택합니다.
-
삭제를 선택합니다.
-
Amazon S3 콘솔의 기본 페이지로 돌아간 후 버킷 이름 바깥쪽 라인을 클릭하여 Elastic Beanstalk 스토리지를 선택합니다.
-
[Delete Bucket]을 선택합니다.
-
버킷의 이름을 입력한 다음 확인을 선택합니다.