Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengimpor gambar mesin virtual ke perangkat Snowball Edge
Anda dapat menggunakan AWS CLI dan layanan Impor/Ekspor VM untuk mengimpor gambar mesin virtual (VM) ke perangkat Snowball Edge sebagai Amazon Machine Image (AMI). Setelah mengimpor gambar VM, daftarkan gambar sebagai AMI dan luncurkan sebagai instance yang kompatibel dengan Amazon EC2.
Anda dapat menambahkan AMIs dari Amazon EC2 ke perangkat saat membuat pekerjaan untuk memesan perangkat Snowball Edge. Gunakan prosedur ini setelah Anda menerima perangkat Snowball Edge. Untuk informasi selengkapnya, lihat Memilih opsi komputasi dan penyimpanan.
Anda juga dapat menggunakan AWS OpsHub untuk mengunggah file gambar VM. Untuk informasi selengkapnya, lihat Mengimpor gambar ke perangkat Anda sebagai EC2 AMI yang kompatibel dengan Amazon dalam panduan ini.
Topik
- Langkah 1: Siapkan gambar VM dan unggah ke perangkat Snowball Edge
- Langkah 2: Siapkan izin yang diperlukan di Snowball Edge
- Langkah 3: Impor gambar VM sebagai snapshot di Snowball Edge
- Langkah 4: Daftarkan snapshot sebagai AMI di Snowball Edge
- Langkah 5: Luncurkan instance dari AMI di Snowball Edge
- Tindakan AMI tambahan untuk Snowball Edge
Langkah 1: Siapkan gambar VM dan unggah ke perangkat Snowball Edge
Siapkan gambar VM dengan mengekspor gambar VM dari Amazon EC2 AMI atau instance AWS Cloud menggunakan VM Impor/Ekspor atau dengan membuat gambar VM secara lokal menggunakan platform virtualisasi pilihan Anda.
Untuk mengekspor EC2 instans Amazon sebagai image VM menggunakan Impor/Ekspor VM, lihat Mengekspor instance sebagai VM menggunakan Impor/Ekspor VM di VM, Import/Export User Guide. To export an Amazon EC2 AMI as a VM image using VM Import/Export lihat Mengekspor VM langsung dari Gambar Mesin Amazon (AMI) di Panduan Pengguna Impor/Ekspor VM.
Jika membuat gambar VM dari lingkungan lokal Anda, pastikan gambar dikonfigurasi untuk digunakan sebagai AMI di perangkat Snowball Edge. Anda mungkin perlu mengonfigurasi item berikut, tergantung pada lingkungan Anda.
Konfigurasikan dan perbarui sistem operasi.
Tetapkan nama host.
Pastikan protokol waktu jaringan (NTP) dikonfigurasi.
Sertakan kunci publik SSH, jika perlu. Buat salinan lokal dari pasangan kunci. Untuk informasi selengkapnya, lihat Menggunakan SSH untuk Connect ke Instans Komputasi Anda di Snowball Edge.
Instal dan konfigurasikan perangkat lunak apa pun yang akan Anda gunakan pada perangkat Snowball Edge.
catatan
Waspadai batasan berikut saat menyiapkan snapshot disk untuk perangkat Snowball Edge.
-
Snowball Edge saat ini hanya mendukung pengimporan snapshot yang ada dalam format gambar RAW.
-
Snowball Edge saat ini hanya mendukung impor snapshot dengan ukuran dari 1 GB hingga 1 TB.
Mengunggah gambar VM ke bucket Amazon S3 di perangkat Snowball Edge
Setelah menyiapkan gambar VM, unggah ke bucket S3 di perangkat atau cluster Snowball Edge. Anda dapat menggunakan adaptor S3 atau penyimpanan yang kompatibel dengan Amazon S3 di Snowball Edge untuk mengunggah snapshot.
Untuk mengunggah gambar mesin virtual menggunakan adaptor S3
Gunakan
cp
perintah untuk menyalin file gambar VM ke ember di perangkat.aws s3 cp
image-path
s3://S3-bucket-name
--endpoint http://S3-object-API-endpoint:443
--profileprofile-name
Untuk informasi selengkapnya, lihat AWS CLI Perintah yang didukung dalam panduan ini.
Untuk mengunggah gambar VM menggunakan penyimpanan yang kompatibel dengan Amazon S3 di Snowball Edge
Gunakan
put-object
perintah untuk menyalin file snapshot ke ember di perangkat.aws s3api put-object --bucket
bucket-name
--keypath-to-snapshot-file
--bodysnapshot-file
--endpoint-urls3api-endpoint-ip
--profileyour-profile
Untuk informasi selengkapnya, lihat Bekerja dengan objek S3 pada perangkat Snowball Edge.
Langkah 2: Siapkan izin yang diperlukan di Snowball Edge
Agar impor berhasil, Anda harus mengatur izin untuk Impor/Ekspor VM di perangkat Snowball Edge, Amazon EC2, dan pengguna.
catatan
Peran dan kebijakan layanan yang memberikan izin ini terletak di perangkat Snowball Edge.
Izin diperlukan untuk Impor/Ekspor VM di Snowball Edge
Sebelum memulai proses impor, Anda harus membuat peran IAM dengan kebijakan kepercayaan yang memungkinkan VM Import/Export on the Snowball Edge device to assume the role. Additional permissions are given to the role to allow VM Import/Export di perangkat mengakses gambar yang disimpan di bucket S3 di perangkat.
Buat file json kebijakan kepercayaan
Berikut ini adalah contoh kebijakan kepercayaan yang diperlukan untuk dilampirkan pada peran sehingga VM Import/Export dapat mengakses snapshot yang perlu diimpor dari bucket S3.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"vmie.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }
Buat peran dengan file json kebijakan kepercayaan
Nama peran dapat berupa vmimport. Anda dapat mengubahnya dengan menggunakan opsi --role-name dalam perintah:
aws iam create-role --role-name
role-name
--assume-role-policy-document file:///trust-policy-json-path
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Berikut ini adalah output contoh dari perintah create-role
.
{ "Role":{ "AssumeRolePolicyDocument":{ "Version":"2012-10-17", "Statement":[ { "Action":"sts:AssumeRole", "Effect":"Allow", "Principal":{ "Service":"vmie.amazonaws.com" } } ] }, "MaxSessionDuration":3600, "RoleId":"AROACEMGEZDGNBVGY3TQOJQGEZAAAABQBB6NSGNAAAABPSVLTREPY3FPAFOLKJ3", "CreateDate":"2022-04-19T22:17:19.823Z", "RoleName":"vmimport", "Path":"/", "Arn":"arn:aws:iam::123456789012:role/vmimport" } }
Buat kebijakan untuk peran tersebut
Contoh kebijakan berikut memiliki izin minimum yang diperlukan untuk mengakses Amazon S3. Ubah nama bucket Amazon S3 menjadi nama yang memiliki gambar Anda. Untuk perangkat Snowball Edge mandiri, snow-id
ubah ke ID pekerjaan Anda. Untuk sekelompok perangkat, ubah snow-id
ke ID cluster. Anda juga dapat menggunakan awalan untuk lebih mempersempit lokasi tempat VM Import/Export dapat mengimpor snapshot. Buat file json kebijakan seperti ini.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:GetMetadata" ], "Resource":[ "arn:aws:s3:snow:
account-id
:snow/snow-id
/bucket/import-snapshot-bucket-name
", "arn:aws:s3:snow:account-id
:snow/snow-id
/bucket/import-snapshot-bucket-name
/*" ] } ] }
Buat kebijakan dengan file kebijakan:
aws iam create-policy --policy-name
policy-name
--policy-document file:///policy-json-file-path
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Berikut ini adalah contoh output dari perintah create-policy.
{ "Policy":{ "PolicyName":"vmimport-resource-policy", "PolicyId":"ANPACEMGEZDGNBVGY3TQOJQGEZAAAABOOEE3IIHAAAABWZJPI2VW4UUTFEDBC2R", "Arn":"arn:aws:iam::123456789012:policy/vmimport-resource-policy", "Path":"/", "DefaultVersionId":"v1", "AttachmentCount":0, "IsAttachable":true, "CreateDate":"2020-07-25T23:27:35.690000+00:00", "UpdateDate":"2020-07-25T23:27:35.690000+00:00" } }
Lampirkan kebijakan ke peran
Lampirkan kebijakan ke peran sebelumnya dan berikan izin untuk mengakses sumber daya yang diperlukan. Hal ini mengizinkan layanan VM Import/Export lokal untuk mengunduh snapshot dari Amazon S3 pada perangkat.
aws iam attach-role-policy --role-name
role-name
--policy-arn arn:aws:iam::123456789012:policy/policy-name
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Izin yang diperlukan oleh penelepon di Snowball Edge
Selain peran untuk VM Import/Export Snowball Edge untuk memulai, Anda juga harus memastikan bahwa pengguna memiliki izin yang mengizinkannya untuk meneruskan peran ke VMIE. Jika Anda menggunakan pengguna root default untuk melakukan impor, pengguna root sudah memiliki semua izin yang diperlukan, sehingga Anda dapat melewati langkah ini, dan melanjutkan ke langkah 3.
Lampirkan dua izin IAM berikut ke pengguna yang melakukan impor.
-
pass-role
-
get-role
Buat kebijakan untuk peran tersebut
Berikut ini adalah contoh kebijakan yang memungkinkan pengguna melakukan tindakan get-role
dan pass-role
untuk IAM role.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action": "iam:GetRole", "Resource":"*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "importexport.amazonaws.com" } } } ] }
Buat kebijakan dengan file kebijakan:
aws iam create-policy --policy-name
policy-name
--policy-document file:///policy-json-file-path
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Berikut ini adalah contoh output dari perintah create-policy.
{ "Policy":{ "PolicyName":"caller-policy", "PolicyId":"ANPACEMGEZDGNBVGY3TQOJQGEZAAAABOOOTUOE3AAAAAAPPBEUM7Q7ARPUE53C6R", "Arn":"arn:aws:iam::123456789012:policy/caller-policy", "Path":"/", "DefaultVersionId":"v1", "AttachmentCount":0, "IsAttachable":true, "CreateDate":"2020-07-30T00:58:25.309000+00:00", "UpdateDate":"2020-07-30T00:58:25.309000+00:00" } }
Setelah kebijakan dibuat, lampirkan kebijakan ke pengguna IAM yang akan memanggil operasi Amazon EC2 API atau CLI untuk mengimpor snapshot.
aws iam attach-user-policy --user-name
your-user-name
--policy-arn arn:aws:iam::123456789012:policy/policy-name
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Izin Diperlukan untuk memanggil Amazon EC2 APIs di Snowball Edge
Untuk mengimpor snapshot, pengguna IAM harus memiliki izin ec2:ImportSnapshot
. Jika membatasi akses ke pengguna tidak diperlukan, Anda dapat menggunakan ec2:*
izin untuk memberikan akses Amazon EC2 penuh. Berikut ini adalah izin yang dapat diberikan atau dibatasi untuk Amazon EC2 di perangkat Anda. Buat file kebijakan dengan konten yang ditampilkan:
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ec2:ImportSnapshot", "ec2:DescribeImportSnapshotTasks", "ec2:CancelImportTask", "ec2:DescribeSnapshots", "ec2:DeleteSnapshot", "ec2:RegisterImage", "ec2:DescribeImages", "ec2:DeregisterImage" ], "Resource":"*" } ] }
Buat kebijakan dengan file kebijakan:
aws iam create-policy --policy-name
policy-name
--policy-document file:///policy-json-file-path
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Berikut ini adalah contoh output dari perintah create-policy.
{ "Policy": { "PolicyName": "ec2-import.json", "PolicyId": "ANPACEMGEZDGNBVGY3TQOJQGEZAAAABQBGPDQC5AAAAATYN62UNBFYTF5WVCSCZS", "Arn": "arn:aws:iam::123456789012:policy/ec2-import.json", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "IsAttachable": true, "CreateDate": "2022-04-21T16:25:53.504000+00:00", "UpdateDate": "2022-04-21T16:25:53.504000+00:00" } }
Setelah kebijakan dibuat, lampirkan kebijakan ke pengguna IAM yang akan memanggil operasi Amazon EC2 API atau CLI untuk mengimpor snapshot.
aws iam attach-user-policy --user-name
your-user-name
--policy-arn arn:aws:iam::123456789012:policy/policy-name
--endpoint http://snowball-ip
:6078 --region snow --profileprofile-name
Langkah 3: Impor gambar VM sebagai snapshot di Snowball Edge
Langkah selanjutnya adalah mengimpor gambar VM sebagai snapshot pada perangkat. Nilai S3Bucket
parameter adalah nama bucket yang berisi gambar VM. Nilai S3Key
parameter adalah jalur ke file gambar VM di bucket ini.
aws ec2 import-snapshot --disk-container "Format=RAW,UserBucket={S3Bucket=
bucket-name
,S3Key=image-file
}" --endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
Untuk informasi selengkapnya, lihat import-snapshot
Perintah ini tidak mendukung switch berikut.
[--client-data
value
][--client-token
value
][--dry-run]
[--no-dry-run]
[--encrypted]
[--no-encrypted]
[--kms-key-id
value
][--tag-specifications
value
]
contoh output dari import-snapshot
perintah
{ "ImportTaskId":"s.import-snap-1234567890abc", "SnapshotTaskDetail":{ "DiskImageSize":2.0, "Encrypted":false, "Format":"RAW", "Progress":"3", "Status":"active", "StatusMessage":"pending", "UserBucket":{ "S3Bucket":"bucket", "S3Key":"vmimport/image01" } } }
catatan
Snowball Edge saat ini hanya mengizinkan satu pekerjaan impor aktif berjalan pada satu waktu, per perangkat. Untuk memulai tugas impor baru, sebaiknya menunggu untuk tugas saat ini agar selesai, atau memilih simpul lain yang tersedia dalam sebuah klaster. Anda juga dapat memilih untuk membatalkan impor saat ini jika Anda mau. Untuk mencegah penundaan, jangan reboot perangkat Snowball Edge saat impor sedang berlangsung. Jika anda reboot perangkat, impor akan gagal, dan kemajuan akan dihapus apabila peranngkat menjadi mudah diakses. Untuk memeriksa status dari status tugas impor snapshot Anda, gunakan perintah berikut:
aws ec2 describe-import-snapshot-tasks --import-task-ids
id
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
Langkah 4: Daftarkan snapshot sebagai AMI di Snowball Edge
Ketika pengimporan snapshot ke perangkat berhasil, Anda dapat mendaftarkannya menggunakan perintah register-image
.
catatan
Anda hanya dapat mendaftarkan AMI ketika semua snapshot-nya tersedia.
Untuk informasi selengkapnya, lihat register-image
contoh dari register-image
perintah
aws ec2 register-image \ --name
ami-01
\ --descriptionmy-ami-01
\ --block-device-mappings "[{\"DeviceName\": \"/dev/sda1\",\"Ebs\":{\"Encrypted\":false,\"DeleteOnTermination\":true,\"SnapshotId\":\"snapshot-id
\",\"VolumeSize\":30}}]" \ --root-device-name /dev/sda1 \ --endpoint http://snowball-ip
:8008 \ --region snow \ --profileprofile-name
Berikut ini adalah contoh pemetaan perangkat blok JSON. Untuk informasi selengkapnya, lihat block-device-mapping parameter register-image
[ { "DeviceName": "/dev/sda", "Ebs": { "Encrypted": false, "DeleteOnTermination": true, "SnapshotId": "
snapshot-id
", "VolumeSize": 30 } } ]
contoh dari register-image
perintah
{ "ImageId": "s.ami-8de47d2e397937318" }
Langkah 5: Luncurkan instance dari AMI di Snowball Edge
Untuk meluncurkan instance, lihat run-instance
Nilai image-id
parameter adalah nilai ImageId
nama sebagai output dari register-image
perintah.
aws ec2 run-instances --image-id
image-id
--instance-typeinstance-type
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
{ "Instances":[ { "SourceDestCheck":false, "CpuOptions":{ "CoreCount":1, "ThreadsPerCore":2 }, "InstanceId":"s.i-12345a73123456d1", "EnaSupport":false, "ImageId":"s.ami-1234567890abcdefg", "State":{ "Code":0, "Name":"pending" }, "EbsOptimized":false, "SecurityGroups":[ { "GroupName":"default", "GroupId":"s.sg-1234567890abc" } ], "RootDeviceName":"/dev/sda1", "AmiLaunchIndex":0, "InstanceType":"sbe-c.large" } ], "ReservationId":"s.r-1234567890abc" }
catatan
Anda juga dapat menggunakan AWS OpsHub untuk meluncurkan instance. Untuk informasi selengkapnya, lihat Meluncurkan instance EC2 yang kompatibel dengan Amazon dalam panduan ini.
Tindakan AMI tambahan untuk Snowball Edge
Anda dapat menggunakan AWS CLI perintah tambahan untuk memantau status impor snapshot, mendapatkan detail tentang snapshot yang telah diimpor, membatalkan impor snapshot, dan menghapus atau membatalkan pendaftaran snapshot setelah diimpor.
Memantau status impor snapshot di Snowball Edge
Untuk melihat status kemajuan impor saat ini, Anda dapat menjalankan EC2 describe-import-snapshot-tasks
perintah Amazon. Perintah ini mendukung pagination dan filtering pada file. task-state
contoh dari describe-import-snapshot-tasks
perintah
aws ec2 describe-import-snapshot-tasks --import-task-ids
id
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
contoh dari output describe-import-snapshot-tasks
perintah
{ "ImportSnapshotTasks": [ { "ImportTaskId": "s.import-snap-8f6bfd7fc9ead9aca", "SnapshotTaskDetail": { "Description": "Created by AWS-Snowball-VMImport service for s.import-snap-8f6bfd7fc9ead9aca", "DiskImageSize": 8.0, "Encrypted": false, "Format": "RAW", "Progress": "3", "SnapshotId": "s.snap-848a22d7518ad442b", "Status": "active", "StatusMessage": "pending", "UserBucket": { "S3Bucket": "bucket1", "S3Key": "image1" } } } ] }
catatan
Perintah ini hanya menampilkan output untuk tugas yang telah berhasil diselesaikan atau ditandai sebagai dihapus dalam 7 hari terakhir. Filter hanya mendukung Name=task-state
, Values=active | deleting | deleted |
completed
Perintah ini tidak mendukung parameter berikut.
[--dry-run]
[--no-dry-run]
Membatalkan tugas impor di Snowball Edge
Untuk membatalkan tugas impor, jalankan perintah cancel-import-task
.
contoh dari cancel-import-task
perintah
aws ec2 cancel-import-task --import-task-id
import-task-id
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
contoh dari output cancel-import-task
perintah
{ "ImportTaskId": "s.import-snap-8234ef2a01cc3b0c6", "PreviousState": "active", "State": "deleting" }
catatan
Hanya tugas yang tidak dalam status selesai dapat dibatalkan.
Perintah ini tidak mendukung parameter berikut.
[--dry-run]
[--no-dry-run]
Menggambarkan snapshot di Snowball Edge
Setelah snapshot diimpor, Anda dapat menggunakan perintah ini untuk menjelaskannya. Untuk melakukan filter snapshot, Anda dapat meneruskan snapshot-ids
dengan ID snapshot dari respons tugas impor sebelumnya. Perintah ini mendukung pagination dan filter padavolume-id
,status
, danstart-time
.
contoh dari describe-snapshots
perintah
aws ec2 describe-snapshots --snapshot-ids
snapshot-id
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
contoh dari output describe-snapshots
perintah
{ "Snapshots": [ { "Description": "Created by AWS-Snowball-VMImport service for s.import-snap-8f6bfd7fc9ead9aca", "Encrypted": false, "OwnerId": "123456789012", "SnapshotId": "s.snap-848a22d7518ad442b", "StartTime": "2020-07-30T04:31:05.032000+00:00", "State": "completed", "VolumeSize": 8 } ] }
Perintah ini tidak mendukung parameter berikut.
[--restorable-by-user-ids
value
][--dry-run]
[--no-dry-run]
Menghapus snapshot dari perangkat Snowball Edge
Untuk menghapus snapshot yang Anda miliki dan tidak Anda butuhkan lagi, Anda dapat menggunakan perintah delete-snapshot
.
contoh dari delete-snapshot
perintah
aws ec2 delete-snapshot --snapshot-id
snapshot-id
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
catatan
Snowball Edge tidak mendukung menghapus snapshot yang berada dalam status TERTUNDA atau jika ditetapkan sebagai perangkat root untuk AMI.
Perintah ini tidak mendukung parameter berikut.
-
[--dry-run]
-
[--no-dry-run]
Membatalkan pendaftaran AMI di Snowball Edge
Untuk membatalkan pendaftaran AMIs yang tidak lagi Anda butuhkan, Anda dapat menjalankan perintah. deregister-image
Membatalkan pendaftaran AMI yang berada dalam status Tertunda saat ini tidak didukung.
contoh dari deregister-image
perintah
aws ec2 deregister-image --image-id
image-id
--endpoint http://snowball-ip
:8008 --region snow --profileprofile-name
Perintah ini tidak mendukung parameter berikut.
[--dry-run]
[--no-dry-run]