Gunakan DescribeSnapshots dengan AWS SDK atau CLI - AWS SDKContoh Kode

Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Gunakan DescribeSnapshots dengan AWS SDK atau CLI

Contoh kode berikut menunjukkan cara menggunakanDescribeSnapshots.

CLI
AWS CLI

Contoh 1: Untuk menjelaskan snapshot

Contoh describe-snapshots berikut menjelaskan snapshot tertentu.

aws ec2 describe-snapshots \ --snapshot-ids snap-1234567890abcdef0

Output:

{ "Snapshots": [ { "Description": "This is my snapshot", "Encrypted": false, "VolumeId": "vol-049df61146c4d7901", "State": "completed", "VolumeSize": 8, "StartTime": "2019-02-28T21:28:32.000Z", "Progress": "100%", "OwnerId": "012345678910", "SnapshotId": "snap-01234567890abcdef", "Tags": [ { "Key": "Stack", "Value": "test" } ] } ] }

Untuk informasi selengkapnya, lihat EBSsnapshot Amazon di Panduan EC2 Pengguna Amazon.

Contoh 2: Untuk menjelaskan snapshot berdasarkan filter

describe-snapshotsContoh berikut menggunakan filter untuk mencakupkan hasil ke snapshot yang dimiliki oleh AWS akun Anda yang berada dalam pending status. Contoh menggunakan --query parameter untuk hanya menampilkan snapshot IDs dan waktu snapshot dimulai.

aws ec2 describe-snapshots \ --owner-ids self \ --filters Name=status,Values=pending \ --query "Snapshots[*].{ID:SnapshotId,Time:StartTime}"

Output:

[ { "ID": "snap-1234567890abcdef0", "Time": "2019-08-04T12:48:18.000Z" }, { "ID": "snap-066877671789bd71b", "Time": "2019-08-04T02:45:16.000Z }, ... ]

Contoh describe-snapshots berikut menggunakan filter guna mencakup hasil untuk snapshot yang dibuat dari volume tertentu. Contoh menggunakan --query parameter untuk hanya menampilkan snapshotIDs.

aws ec2 describe-snapshots \ --filters Name=volume-id,Values=049df61146c4d7901 \ --query "Snapshots[*].[SnapshotId]" \ --output text

Output:

snap-1234567890abcdef0 snap-08637175a712c3fb9 ...

Untuk contoh tambahan menggunakan filter, lihat Mencantumkan dan memfilter sumber daya Anda di Panduan EC2 Pengguna Amazon.

Contoh 3: Untuk menjelaskan snapshot berdasarkan tanda

Contoh describe-snapshots berikut menggunakan filter tanda guna mencakup hasil untuk snapshot yang memiliki tanda Stack=Prod.

aws ec2 describe-snapshots \ --filters Name=tag:Stack,Values=prod

Untuk contoh output describe-snapshots, lihat Contoh 1.

Untuk contoh tambahan menggunakan filter tag, lihat Bekerja dengan tag di Panduan EC2 Pengguna Amazon.

Contoh 4: Untuk menjelaskan snapshot berdasarkan usia

describe-snapshotsContoh berikut menggunakan JMESPath ekspresi untuk menggambarkan semua snapshot yang dibuat oleh AWS akun Anda sebelum tanggal yang ditentukan. Ini hanya menampilkan snapshotIDs.

aws ec2 describe-snapshots \ --owner-ids 012345678910 \ --query "Snapshots[?(StartTime<='2020-03-31')].[SnapshotId]"

Untuk contoh tambahan menggunakan filter, lihat Mencantumkan dan memfilter sumber daya Anda di Panduan EC2 Pengguna Amazon.

Contoh 5: Untuk melihat snapshot yang diarsipkan saja

Contoh describe-snapshots berikut hanya mencantumkan snapshot yang disimpan di tingkat arsip.

aws ec2 describe-snapshots \ --filters "Name=storage-tier,Values=archive"

Output:

{ "Snapshots": [ { "Description": "Snap A", "Encrypted": false, "VolumeId": "vol-01234567890aaaaaa", "State": "completed", "VolumeSize": 8, "StartTime": "2021-09-07T21:00:00.000Z", "Progress": "100%", "OwnerId": "123456789012", "SnapshotId": "snap-01234567890aaaaaa", "StorageTier": "archive", "Tags": [] }, ] }

Untuk informasi selengkapnya, buka Lihat snapshot yang diarsipkan di Panduan Pengguna Amazon Elastic Compute Cloud.

PowerShell
Alat untuk PowerShell

Contoh 1: Contoh ini menjelaskan snapshot yang ditentukan.

Get-EC2Snapshot -SnapshotId snap-12345678

Output:

DataEncryptionKeyId : Description : Created by CreateImage(i-1a2b3c4d) for ami-12345678 from vol-12345678 Encrypted : False KmsKeyId : OwnerAlias : OwnerId : 123456789012 Progress : 100% SnapshotId : snap-12345678 StartTime : 10/23/2014 6:01:28 AM State : completed StateMessage : Tags : {} VolumeId : vol-12345678 VolumeSize : 8

Contoh 2: Contoh ini menjelaskan snapshot yang memiliki tag 'Nama'.

Get-EC2Snapshot | ? { $_.Tags.Count -gt 0 -and $_.Tags.Key -eq "Name" }

Contoh 3: Contoh ini menjelaskan snapshot yang memiliki tag 'Nama' dengan nilai 'TestValue'.

Get-EC2Snapshot | ? { $_.Tags.Count -gt 0 -and $_.Tags.Key -eq "Name" -and $_.Tags.Value -eq "TestValue" }

Contoh 4: Contoh ini menjelaskan semua snapshot Anda.

Get-EC2Snapshot -Owner self
  • Untuk API detailnya, lihat DescribeSnapshotsdi AWS Tools for PowerShell Referensi Cmdlet.

Rust
SDKuntuk Rust
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara pengaturan dan menjalankannya di Repositori Contoh Kode AWS.

Menampilkan status snapshot.

async fn show_state(client: &Client, id: &str) -> Result<(), Error> { let resp = client .describe_snapshots() .filters(Filter::builder().name("snapshot-id").values(id).build()) .send() .await?; println!( "State: {}", resp.snapshots().first().unwrap().state().unwrap().as_ref() ); Ok(()) }
async fn show_snapshots(client: &Client) -> Result<(), Error> { // "self" represents your account ID. // You can list the snapshots for any account by replacing // "self" with that account ID. let resp = client.describe_snapshots().owner_ids("self").send().await?; let snapshots = resp.snapshots(); let length = snapshots.len(); for snapshot in snapshots { println!( "ID: {}", snapshot.snapshot_id().unwrap_or_default() ); println!( "Description: {}", snapshot.description().unwrap_or_default() ); println!("State: {}", snapshot.state().unwrap().as_ref()); println!(); } println!(); println!("Found {} snapshot(s)", length); println!(); Ok(()) }