2011-06-12 6 views
6

EBS 지원 EC2 실행 인스턴스가 있습니다. EBS 상점에는 데이터베이스가 있습니다. 나는 이것으로 AMI를 만들고 싶다. 누군가 지침을 제공 할 수 있습니까?EBS에서 지원하는 EC2 인스턴스에서 AMI를 만드는 방법은 무엇입니까?

  1. MySQL을 종료해야합니까?
  2. 내 AMI가 동일한 EBS 상점에 연결하려고합니까?! (재해)
  3. AMI를 생성하면 자동으로 내 EBS 볼륨을 스냅하고 복사본을 만들 수 있습니까? (이걸 원합니까)

긴 질문을 통해 양해 해 주셔서 감사합니다. 비슷한 정보가 있다는 것을 알고 있지만 실제로 잘못 될 수있는 부분은 다루지 않습니다.

이 SO 질문 :

http://stackoverflow.com/questions/4475532/creating-an-ec2-ami-with-an-ebs-backed-instance-is-it-possible

ElasticFox에 고유 내가 어떤 도구 (명령 행을 선호)를 사용하고 있지 않다. 나는 그 질문에 대한 대답도 믿지 않는다.

이 블로그 :

http://instantbadger.blogspot.com/2009/09/how-to-create-and-save-ami-image-from.html

은 AMI를 만드는 방법에 대한 유익하면서, 모든 EBS를 언급하지 않고 내가 모든 데이터에 대해 조금 걱정입니다.

미리 감사드립니다.

답변

1

질문하기 전에 이미지 생성을 시작하기 전에 스냅 샷 또는 EBS에 저장되지 않은 파일로 MySQL 데이터베이스를 백업하는 것이 좋습니다. (. 그리고 당신은 당신의 생산 시스템이 아닌 다른 곳으로 복원 할 수 있습니다 물론 시험의)

내가 사용

mysqldump --add-drop-table -u root -p databasename > database.sql 

백업과 :

mysql -u root -p databasename < database.sql 

는 복원 할 수 있습니다.

  1. 아니요, MySQL을 종료 할 필요는 없지만 AMI를 만드는 동안 데이터베이스에 쓰지 않도록해야합니다.
  2. 아니요, AMI를 만들면 EBS 볼륨의 새 스냅 숏 (이미지 생성시 내용 그대로)이 만들어집니다.
  3. 예, 2

좀 더 정보를 볼 : 스냅 샷 작업이나 이미지를 만들 때 가능하면 내가 데이터베이스를 종료하는 것을 선호합니다. 그것은 내가 MySQL 전문가가 아니라고 말했지만, 여기에 몇 가지 지침이 있습니다. http://aws.amazon.com/articles/1663?_encoding=UTF8&jiveRedirect=1

위에서 설정 한 암호를 사용하여 인스턴스에서 MySQL 세션을 시작하십시오.

mysql -u root -p 

mysql 세션에서 디스크에 테이블을 플러시하고 잠금을 획득하십시오. 파일 시스템을 디스크에 플러시하고 고정시킵니다. MySQL 세션을 종료하지 마십시오. 그러면 잠금이 손실되고 잠재적으로 일관성이없는 데이터베이스 파일이 스냅 샷됩니다!

FLUSH TABLES WITH READ LOCK; 
SHOW MASTER STATUS; 
SYSTEM sudo xfs_freeze -f /vol 
+0

감사합니다. 이것은 내가 마침내 사용할 접근법입니다. 복제가 설정되어 있기 때문에 상당히 복잡하지만이 게시물은 나에게 출발점을 알려주었습니다. 일단 내가 완전한 대답을하면 다른 사람들을 위해 게시 할 것입니다. – cone

+0

행복하게 도와주세요. – steenhulthin

1

steenhulthin의 제안에 따라 항상 덤프로 MySQL을 백업하십시오. 나는 또한 별도의 EBS 볼륨 또는 더 나은 급습 볼륨에 MySQL의 데이터를 배치하는 것이 좋습니다 http://www.capsunlock.net/2009/12/create-ebs-boot-ami.html

:이 링크는 새 EBS 작성에 도움이 될 것입니다

은 AMI를 백업.

+0

MySQL 데이터는 이미 EBS 상점에 있습니다. – cone

3

Amazon 콘솔에는이 물건을 처리 할 수있는 옵션이 있습니다.

aws 콘솔에 로그인하고 AMI를 생성하려는 인스턴스 ID를 탐색하십시오.

  1. 인스턴스를 마우스 오른쪽 버튼으로 클릭하고 "중지"를 클릭하십시오.
  2. 인스턴스를 마우스 오른쪽 버튼으로 클릭하고 "Create AMI"를 클릭하십시오.
  3. AMI의 입력 이름 & 확인을 누릅니다.

그게 전부입니다. 이것은 AMI를 만들었을 것입니다. 자세한 내용은 http://docs.amazonwebservices.com/AWSEC2/2011-05-15/UserGuide/index.html?Tutorial_CreateImage.html을 참조하십시오.

+0

나는 DB의 다운 타임을 가질 수 없지만, 고마워. – cone

관련 문제