VM Import/Export를 사용하여 VM을 이미지로 가져오기 - VM Import

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

VM Import/Export를 사용하여 VM을 이미지로 가져오기

작은 정보

콘솔 기반 환경의 가상 머신(VM)을 가져오려면 Migration Hub Orchestrator 콘솔에서 AWS로 가상 머신 이미지 가져오기 템플릿을 사용할 수 있습니다. 자세한 정보는 AWS Migration Hub Orchestrator 사용 설명서를 참조하세요.

VM Import/Export를 사용하여 가상 머신(VM) 이미지를 가상화 환경에서 Amazon EC2로 인스턴스 실행에 사용할 수 있는 Amazon 머신 이미지(AMI)로 가져올 수 있습니다. 그런 다음 이러한 VM 이미지를 인스턴스에서 다시 가상 환경으로 내보낼 수 있습니다. 이 경우 IT 보안, 구성 관리, 규정 준수 요구 사항을 충족하기 위해 VM에 구축한 투자를 Amazon EC2로 가져와 활용할 수 있습니다.

중요
  • AWS VM Import/Export는 새 VM Import 작업을 생성할 때 --license-type 또는 --usage-operation 파라미터 중 하나의 값을 지정할 것을 강력히 권장합니다. 이렇게 하면 운영 체제에 적절한 라이선스를 부여하고 청구를 최적화할 수 있습니다. 자세한 설명은 라이선스 옵션 섹션을 참조하세요.

  • AWSVM Import/Export는 소스 VM 내에 기본적으로 설치된 이미지만 지원하며 physical-to-virtual (P2V) 변환 프로세스를 사용하여 만든 이미지는 지원하지 않습니다. 자세한 내용은 VM Import/Export 요구 사항 섹션을 참조하세요.

가상화 환경에서 VM 내보내기

VM의 내보내기 준비가 완료되면 가상화 환경에서 VM을 내보내기할 수 있습니다. VM을 이미지로 가져올 경우 OVA(Open Virtualization Archive), VMDK(가상 머신 디스크), VHD/VHDX(가상 하드 디스크), 원시 형식으로 디스크를 가져올 수 있습니다. 일부 가상화 환경에서는 일반적으로 하나 이상의 VMDK, VHD 또는 VHDX 파일이 포함된 OVF(Open Virtualization Format)로 내보내기한 후, OVA 파일로 파일을 패키징합니다.

자세한 내용은 사용하는 가상화 환경의 설명서를 참조하세요. 예:

VM의 프로그래밍 방식 수정

ImportImage API를 사용하여 VM을 가져올 때, AWS는 가져온 VM을 액세스할 수 있도록 파일 시스템을 수정합니다. 수정된 파일을 작성할 때 AWS는 동일한 위치에 새로운 이름으로 원래 파일을 보관합니다. 다음 작업이 발생할 수 있습니다.

일반
  • AWS에서 제공한 이미지와의 패리티를 위해 AWS Systems Manager 클라이언트는 VM에 설치됩니다.

Windows
  • VM이 부팅 가능해지도록 레지스트리 설정을 수정합니다.

Linux
  • OS에 직접 Citrix PV 드라이버를 설치하거나 이를 포함하도록 initrd/initramfs를 수정합니다.

  • 정적 IP를 동적 IP로 바꾸도록 네트워크 스크립트를 수정합니다.

  • /etc/fstab을 수정하여, 잘못된 항목을 주석 처리하고 디바이스 이름을 UUID로 바꿉니다. 디바이스에 대해 일치하는 UUID를 찾을 수 없는 경우 nofail 옵션이 디바이스 설명에 추가됩니다. 가져온 후에는 디바이스 이름 지정을 수정하고 nofail을 삭제해야 합니다. VM에서 가져오기 작업을 하기 위한 가장 좋은 방법은 디바이스 이름이 아닌 UUID로 VM 디스크 디바이스를 지정하는 것입니다.

    비 표준 파일 시스템 유형(cifs, smbfs, vboxsf, sshfs 등)이 들어 있는 /etc/fstab의 항목이 비활성화됩니다.

  • 기본 항목 및 제한 시간과 같은 GRUB 부트로더 설정을 수정합니다.

VM을 이미지로 가져오기

가상화 환경에서 VM을 내보낸 다음 Amazon EC2로 가져올 수 있습니다. 가져오기 과정은 VM의 출처에 상관 없이 모두 동일하게 진행됩니다.

사전 조건

  • 내보낸 이미지를 저장할 Amazon S3 버킷을 생성하거나 기존 버킷을 선택합니다. 버킷은 VM을 가져오려는 리전에 있어야 합니다. S3 버킷에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서를 참조하세요.

  • vmimport라는 IAM 역할을 생성합니다. 자세한 설명은 필수 서비스 역할 섹션을 참조하세요.

  • 가져오기 명령을 실행하는 데 사용할 컴퓨터에 AWS CLI를 아직 설치하지 않은 경우 AWS Command Line Interface 사용 설명서를 참조하세요.

    작은 정보

    지원되는 AWS 리전에서는 AWS Management Console에서 바로 시작되는 브라우저 기반의 사전 인증된 쉘에 AWS CloudShell을 사용할 수도 있습니다.

Amazon S3로 이미지 업로드

선택한 업로드 도구를 사용하여 Amazon S3 버킷에 VM 이미지 파일을 업로드합니다. Amazon S3 콘솔을 사용하는 파일 업로드에 대한 자세한 내용은 객체 업로드를 참조하세요.

VM 가져오기

Amazon S3에 VM 이미지 파일을 업로드한 후 AWS CLI를 사용하여 이미지를 가져올 수 있습니다. 이 도구는 Amazon S3 버킷과 파일 경로 또는 퍼블릭 Amazon S3 파일의 URL을 허용합니다. 프라이빗 Amazon S3 파일에는 미리 서명된 URL이 필요합니다. Migration Hub Orchestrator 콘솔에서 AWS로 가상 머신 이미지 가져오기 템플릿을 사용하여 온프레미스 가상 머신 이미지를 AWS로 가져올 수도 있습니다. 자세한 설명은 Example 4 섹션을 참조하세요.

다음 예제에서는 AWS CLI 명령 import-image를 사용하여 가져오기 작업을 생성합니다.

예 1: 디스크가 하나인 이미지 가져오기

디스크가 하나인 이미지를 가져오려면 다음 명령을 사용합니다.

aws ec2 import-image --description "My server VM" --disk-containers "file://C:\import\containers.json"

다음은 S3 버킷을 사용하여 이미지를 지정하는 예제 containers.json 파일입니다.

[ { "Description": "My Server OVA", "Format": "ova", "UserBucket": { "S3Bucket": "my-import-bucket", "S3Key": "vms/my-server-vm.ova" } } ]

다음은 Amazon S3의 URL을 사용하여 이미지를 지정하는 예제 containers.json 파일입니다.

[ { "Description": "My Server OVA", "Format": "ova", "Url": "s3://my-import-bucket/vms/my-server-vm.ova" } ]

예 2: 여러 디스크가 있는 이미지 가져오기

여러 디스크가 있는 이미지를 가져오려면 다음 명령을 사용합니다.

$ C:\> aws ec2 import-image --description "My server disks" --disk-containers "file://C:\import\containers.json"

다음은 예 containers.json 파일입니다.

[ { "Description": "First disk", "Format": "vmdk", "UserBucket": { "S3Bucket": "my-import-bucket", "S3Key": "disks/my-server-vm-disk1.vmdk" } }, { "Description": "Second disk", "Format": "vmdk", "UserBucket": { "S3Bucket": "my-import-bucket", "S3Key": "disks/my-server-vm-disk2.vmdk" } } ]

예 3: 암호화 옵션이 활성화된 이미지 가져오기

암호화된 루트 볼륨이 있는 이미지를 가져오려면 다음 명령을 사용합니다.

aws ec2 import-image --description "My server disks" --encrypted --kms-key-id 0ea3fef3-80a7-4778-9d8c-1c0c6EXAMPLE --disk-containers "file://C:\import\containers.json"

전체 가져오기 프로세스 중에 암호화용으로 제공된 CMK를 비활성화해서는 안 됩니다. 자세한 내용은 Amazon EC2 사용 설명서Amazon EBS 암호화를 참조하십시오.

예 4: Migration Hub Orchestrator에서 AWS로 가상 머신 이미지 가져오기 템플릿을 사용하여 이미지 가져오기

  1. Migration Hub Orchestrator 콘솔을 엽니다.

  2. 탐색 창에서 마이그레이션 워크플로 생성을 선택합니다.

  3. 워크플로 템플릿 선택 페이지에서 AWS로 가상 이미지 가져오기 템플릿을 선택합니다.

  4. 워크플로를 구성하고 제출하여 VM 가져오기를 시작합니다. 자세한 정보는 AWS Migration Hub Orchestrator 사용 설명서를 참조하세요.

이미지 가져오기 작업 모니터링

describe-import-image-tasks명령을 사용하여 가져오기 작업의 상태를 반환할 수 있습니다.

aws ec2 describe-import-image-tasks --import-task-ids import-ami-1234567890abcdef0

상태 값은 다음을 포함합니다.

  • active — 가져오기 작업이 진행 중입니다.

  • deleting — 가져오기 작업이 취소되는 중입니다.

  • deleted — 가져오기 작업이 취소되었습니다.

  • updating — 가져오기 상태를 업데이트하는 중입니다.

  • validating — 가져온 이미지를 확인하는 중입니다.

  • validated — 가져온 이미지를 확인하였습니다.

  • converting — 가져온 이미지를 AMI로 변환 중입니다.

  • completed — 가져오기 작업이 완료되었으며 AMI를 사용할 준비가 되었습니다.

이미지 가져오기 작업이 완료된 후에는 출력에 AMI의 ID가 포함됩니다. ImageId를 포함하는 출력 예는 다음과 같습니다.

{ "ImportImageTasks": [ { "ImportTaskId": "import-ami-01234567890abcdef", "ImageId": "ami-1234567890EXAMPLE", "SnapshotDetails": [ { "DiskImageSize": 705638400.0, "Format": "ova", "SnapshotId": "snap-111222333444aaabb" "Status": "completed", "UserBucket": { "S3Bucket": "my-import-bucket", "S3Key": "vms/my-server-vm.ova" } } ], "Status": "completed" } ] }

이미지 가져오기 작업 취소

활성 가져오기 작업을 취소해야 하는 경우 cancel-import-task명령을 사용하십시오.

aws ec2 cancel-import-task --import-task-id import-ami-1234567890abcdef0

다음 단계

이미지 가져오기 작업이 완료된 후에는 AMI 결과를 사용하여 인스턴스를 시작하거나 AMI를 또다른 리전에 복사할 수 있습니다.

일부 운영 체제의 경우 향상된 네트워킹을 위한 디바이스 드라이버 및 Nitro 기반 인스턴스에 필요한 NVMe 블록 디바이스는 가져오기 중 자동으로 설치되지 않습니다. 이러한 드라이버를 수동으로 설치하려면 다음 설명서의 지침에 따르세요. 그런 다음 사용자 지정된 인스턴스에서 새 AMI를 생성합니다.