developer tip

웹 인터페이스를 통해 리전간에 Amazon EC2 AMI를 이동합니까?

copycodes 2020. 12. 29. 07:22
반응형

웹 인터페이스를 통해 리전간에 Amazon EC2 AMI를 이동합니까?


리전간에 AMI 이미지를 쉽게 이동하고 사용자 지정하는 방법이 있습니까? (도쿄-> 싱가포르)

API와 S3를 엉망으로 만들 수 있다는 것을 알고 있지만 더 쉬운 방법이 있습니까?


2012 년 12 월부터 Amazon은 이제 UI 도구 (Amazon Management Console)를 통해 AMI를 다른 리전으로 마이그레이션하는 것을 지원합니다. 여기 에서 설명서를 참조 하십시오.

그래서 어떻게했는지 ..

  1. AMI에서 Snapshot-ID 및 연결 방법 (예 : / dev / sda1)을 찾습니다.
  2. 스냅 샷을 선택하고 "복사"를 클릭 한 다음 대상 지역을 설정하고 복사본을 만듭니다 (시간이 걸립니다!).
  3. 새 스냅 샷을 선택하고 " 이미지 만들기 "를 클릭합니다.

        아키텍처 : (32 비트 또는 64 비트 선택)

        이름 / 설명 : (1 개 제공)

        커널 ID : Linux AMI를 마이그레이션 할 때 "기본값"을 선택하면 실패 할 수 있습니다. 나를 위해 일한 것은 여기 Amazon Kernels 목록으로 이동하여 Amazon이 지원하는 커널을 찾은 다음 이미지를 만들 때 지정하는 것이 었습니다)

        루트 장치 이름 : / dev / sda1

        " 예, 생성합니다 "를 클릭합니다.

  4. 새 AMI에서 인스턴스를 시작하고 연결할 수 있는지 테스트합니다.


Eric의 게시물 ( http://alestic.com/2010/10/ec2-ami-copy)을 사용하여 할 수 있습니다.


다음은 AWS 콘솔 유틸리티가에 설치되어 /opt/aws/bin/있고 JAVA_HOME=/usri386 아키텍처를 실행 중이라고 가정 하고, 그렇지 않으면 x86_64로 대체합니다.

1) 이미지가 1.5GB에 맞고 / mnt에 여유 공간이 있다고 생각하는 라이브 스냅 샷을 실행합니다 (실행 중 확인 df).

/opt/aws/bin/ec2-bundle-vol -d /mnt -k /home/ec2-user/.ec2/pk-XXX.pem -c /home/ec2-user/.ec2/cert-XXX.pem -u 123456789 -r i386 -s 1500

2) 현재 지역의 S3 버킷에 업로드

/opt/aws/bin/ec2-upload-bundle -b S3_BUCKET -m /mnt/image.manifest.xml -a abcxyz -s SUPERSECRET

3) EU S3 버킷으로 이미지 전송

/opt/aws/bin/ec2-migrate-image -K /home/ec2-user/.ec2/pk-XXX.pem -C /home/ec2-user/.ec2/cert-XXX.pem -o abcxyz -w SUPERSECRET --bucket S3_BUCKET_US --destination-bucket S3_BUCKET_EU --manifest image.manifest.xml --location EU

4) 아일랜드에서 인스턴스를 시작할 수 있도록 AMI를 등록합니다.

/opt/aws/bin/ec2-register –K /home/ec2-user/.ec2/pk-XXX.pem –C /home/ec2-user/.ec2/cert-XXX.pem http://s3.amazonaws.com:80/S3_BUCKET/image.manifest.xml --region eu-west-1 -name DEVICENAME -a i386 --kernel aki-xxx


이를위한 API 도구가 있습니다. http://docs.amazonwebservices.com/AWSEC2/latest/CommandLineReference/ApiReference-cmd-MigrateImage.html


이제 ec2-bundle-vol 및 ec2-migrate-image, BTW에 의해 구식이라고 생각합니다. Lincoln D. Stein의이 Perl 스크립트를 살펴볼 수도 있습니다. http://search.cpan.org/~lds/VM -EC2 / bin / migrate-ebs-image.pl

용법:

$ migrate-ebs-image.pl --us-east-1에서 ap-southeast-1 ami-123456으로


Amazon 은이 블로그 게시물 에서이 기능에 대한 지원을 방금 발표했습니다 . dmohr의 답변은 AMI가 아닌 EBS 복사와 관련이 있습니다.

블로그 게시물을 사용할 수없는 경우 관련 부분을 인용합니다.

AMI Copy를 사용하려면 AWS Management Console에서 복사 할 AMI를 선택하고 대상 리전을 선택한 다음 복사를 시작하면됩니다. AMI Copy는 EC2 사용 설명서에 설명 된대로 EC2 명령 줄 인터페이스 또는 EC2 API를 통해 액세스 할 수도 있습니다 . 복사가 완료되면 새 AMI를 사용하여 대상 리전에서 새 EC2 인스턴스를 시작할 수 있습니다.


이제 AWS는 UI / CLI / API를 통해 다른 리전에 EBS 스냅 샷 복사를 지원합니다. 스냅 샷을 복사 한 다음 여기에서 AMI를 만들 수 있습니다. AWS에서 직접 AMI 사본 제공 :

"또한이 기능에 대한 후속 조치로 Amazon 머신 이미지 (AMI) 복사를 출시 할 계획입니다.이를 통해 리전간에 퍼블릭 및 사용자 지정 생성 AMI를 모두 복사 할 수 있습니다.

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html?ref_=pe_2170_27415460


Ylastic을 사용하면 지역간에 EBS 지원 Linux 이미지를 이동할 수 있습니다.

한 달에 $ 25 또는 $ 50이지만 일주일 동안 평가할 수있을 것 같습니다.


방금 CloudyScripts의 스크립트를 사용하여이 작업을 수행했으며 훌륭하게 작동했습니다 : https://cloudyscripts.com/tool/show/5 (그리고 무료입니다).


현재로 2017 , 그것은 .. 바로 스크린 샷을 따라 아주 간단입니다 :

여기에 이미지 설명 입력

여기에 이미지 설명 입력

여기에 이미지 설명 입력

여기에 이미지 설명 입력


사용할 수있는 도구 목록에 Scalr추가하겠습니다 (면책 조항 : 저는 그곳에서 일합니다). Scalr 내에서 자체 AMI를 생성 할 수 있습니다 (역할이라고 함). 역할이 준비되면 배포 할 위치 (모든 지역)를 선택하기 만하면됩니다.

Scalr 는 Apache 2 라이선스에 따라 출시 된 오픈 소스입니다. 직접 다운로드하여 설치할 수 있습니다. 그렇지 않으면 지원을 포함한 호스팅 된 버전을 통해서도 사용할 수 있습니다. Scalr의 대안에는 RightScale 및 enStratus가 포함됩니다.

참조 URL : https://stackoverflow.com/questions/5402013/move-amazon-ec2-amis-between-regions-via-web-interface

반응형