2017-03-16 3 views
0

PHP가 설치된 EC2 인스턴스로 Elastic Beanstalk 환경을 만들었습니다 : my 파일은/var/www/html에 있습니다.내 EC2 인스턴스를 재부팅하면 www/html 폴더가 비어집니다.

처음으로 Auto-Scaling/Load balancer를 허용했지만 자동 크기 조정이 트리거되면 다른 인스턴스가 만들어지고 이전 인스턴스가 종료되었습니다. 그리고 나서 깨달았습니다. 새로운 하나는 오래된 것의 복제품이 아니 었습니다. EB 구성에서 SSD 루트 볼륨을 연결하는 동안 모든 구성과 파일을 잃었습니다.

다시 시도했는데 EB 설정 (사용자 AMI ID에서)에 포함 된 AMI 이미지를 만들었습니다. 이번에는 내 config가 유지되지만 내 폴더/var/www/html은 비워지고 기본 index.html 파일로 대체됩니다.

그런가요? 자동 스케일링이 인스턴스의 복제본을 만들었다 고 생각했습니다.

그래서 auto scaling/load balancer를 비활성화하고 단일 인스턴스 모드로 작업하기로 결정했습니다. 하지만 그때에도 내 EC2 인스턴스를 재부팅해도 설정은 유지되지만 내 전체 폴더/var/www/html은 다시 비워지고 기본 파일 만 내부에 있습니다.

왜? 내 인스턴스에 EBS 볼륨이 첨부되어 있습니다 (EB는 자동으로 해당 작업을 수행 했으므로) 올바르게 작동 하는지를 이해할 수 있으면 그렇게해서는 안됩니다.

두 파일 모두 동일한 문제 일 수 있지만 실제로 파일이 삭제 된 이유는 없습니다.

도움을 주셔서 감사합니다. Romain

+0

"하지만 EC2 인스턴스를 재부팅해도 구성이 보존되지만 내 전체 폴더/var/www/html이 비어 있습니다": 재부팅을 다시 확인하거나 중지를 다시 시작 하시겠습니까? 동작이 다를 수 있습니다. – Putnik

답변

0

자동 축소 기능은 AMI를 사용하여 새 인스턴스를 시작하며 특정 시점의 AMI는 EC2 인스턴스의 스냅 샷을 넘지 않습니다. 이 때문에 자동 실행이 새 인스턴스를 시작할 때마다 AMI와 현재 원하는 상태 간의 차이가 새 트래픽을 받기 전에 부팅 시간에 적용되어야합니다.

ElasticBeanstalk은 자동 확장 동적 기능에 통합 된 응용 프로그램 배포를 관리하고 인스턴스 구성을 관리하는 도구를 제공합니다. EB 툴을 사용하는 부트 스트랩 중에 이러한 구성이 너무 복잡해지면 커스텀 AMI가 유용 할 때도 있습니다.

자동 확장 인스턴스로 SSH를 실행하고 ElasticBeanstalk 도구 상자 범위에서 수동으로 작업을 시작하면 인스턴스에서 업데이트 된 AMI를 저장하고 자동 축소에 적용하지 않는 한 다음 자동 축소 이벤트에서 모든 변경 사항이 손실됩니다 그룹.

+0

매우 명확합니다. 감사합니다. 그런 다음 eb-config 파일을 사용하여 각각의 새로운 인스턴스에 올바른 컨텐츠와 구성이 포함되도록 구성 할 것입니다. – Paganel