우리 회사는 호스팅을 Amazon으로 이전할 예정이며 모든 마이그레이션 문제를 해결하기 위해 노력하고 있습니다. 물리적 하드웨어에서 임시 가상 머신으로 전환하는 것은 상당히 어려운 일이었습니다.
마지막 과제 중 하나는 EBS와 스냅샷을 관리하는 방법을 찾는 것입니다. 현재는 설명적으로 이름을 지정하거나 의미를 추가할 방법이 없기 때문에 관리자가 리소스를 어떻게 관리하고 있는지 궁금합니다. 서버가 한두 대면 큰 문제가 아니지만, 여러 대의 서버를 운영하는 사람들은 어떻게 처리하고 있나요? 소수의 서버를 사용할 때 모든 사람이 RightScale/Scalr와 같은 타사 도구를 사용하고 있습니까? 아니면 위키나 기타 보조 문서를 유지 관리하고 있습니까?
답변1
저는 ec2-condependent-snapshot을 사용합니다(http://alestic.com/2009/09/ec2-condependent-snapshot) 스냅샷을 찍기 위해(RHEL/CentOS에서 파생된 Amazon Linux에서) - 이는 Perl로 작성되었으며 API를 직접 사용합니다. 스냅샷을 생성할 볼륨을 지정하면 설명을 추가할 수 있습니다.
(AWS 콘솔에서는 더 세밀한 제어가 필요한 경우 태그를 추가할 수 있지만, 필요하지 않을 수도 있고 위에 사용된 Perl 모듈(Net::Amazon::EC2)에서 아직 지원되지 않는 간단한 백업의 경우).
위 스크립트는 스냅샷을 삭제하지 않습니다(새 스냅샷만 생성합니다 - 지속적으로 생성합니다(즉, 스냅샷 전에 디스크/DB를 동결할 수 있음). 이 스크립트는 상당히 일반적으로 사용되며 내가 작성한 이전 스냅샷을 삭제하는 데 호환되는 Perl 스크립트를 찾을 수 없었습니다. 내 자신의 (http://www.thatsgeeky.com/2011/06/rotating-ebs-snapshots-ec2-prune-snapshots/). 작업(할아버지-아버지-아들 회전)을 잘 수행하고 위 스크립트와 동일한 종속성 및 매개 변수를 사용합니다.
물론 둘 다 Cron을 통해 실행되도록 설정되어 있습니다.
(이론적으로는 일부 유사한 스크립트(예: PHP 및 Ruby로 작성된 스크립트가 있음)를 데이터베이스에 연결하고 볼륨 및 촬영된 스냅샷에 대한 자체 로그를 유지하는 것이 충분히 쉬워야 합니다. 각 스냅샷에는 고유한 ID가 있으므로 이를 기록하는 한 추가 내부 조직은 쉽게 가능합니다. [그러나 백업 목적으로는 볼륨 ID와 날짜만으로 충분합니다.])
CLI 도구를 사용하지 마십시오. Java로 작성되었으며 직접 API 구현에 비해 엄청나게 느립니다.
답변2
점차적으로 Amazon은 Amazon이 엔터프라이즈 시장에 어필하기 위해 필요한 효과적인 관리를 수행하는 데 필요한 모든 기능을 추가하고 있습니다. 태그가 추가되었으며 사용자가 특정 기능에만 액세스할 수 있도록 하는 향상된 기능이 제공될 예정입니다. 앞으로는 반드시 스크립팅과 배포가 처리될 것입니다. 무료 도구인 ElastDream에 이러한 기능을 추가하고 있습니다.
답변3
텍스트 레이블에 대해 EBS 및 스냅샷 ID를 색인화하는 도구를 직접 작성하는 것이 부족하여 무료RightScale계정을 만들고 닉네임을 지정하는 것은 EBS 볼륨과 스냅샷을 관리하는 가장 좋은 방법입니다.
저는 개인적으로 EC2 인스턴스, AMI 또는 볼륨에 기억하기 쉬운 레이블을 할당할 수 없다는 점이 현재 Amazon 제품의 큰 문제점이라고 생각합니다.
답변4
ElasticFox는 확실히 EC2를 (수동으로) 관리하는 가장 편리한 도구 중 하나입니다. 그러나 핵심 부분은 - 정기적으로 인스턴스 이미징 - 새 인스턴스가 시작되면 일부 자동 초기화를 설정하는 것입니다. - 임시 드라이브 분할 및 마운트 - EBS 볼륨이 사용 가능해지면 마운트 - EBS 또는 EBS에서 파일 및 데이터베이스 복원 공유 스토리지 또는 S3. - 서비스를 시작합니다(MySQL, Apache, Tomcat 등 이름을 지정합니다.)