Verwendung DescribeSnapshots mit einem AWS SDK oder CLI - Amazon Elastic Compute Cloud

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwendung DescribeSnapshots mit einem AWS SDK oder CLI

Die folgenden Codebeispiele zeigen, wie es verwendet wirdDescribeSnapshots.

CLI
AWS CLI

Beispiel 1: So beschreiben Sie einen Snapshot

Das folgende describe-snapshots-Beispiel beschreibt den angegebenen Snapshot.

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

Ausgabe:

{ "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" } ] } ] }

Weitere Informationen finden Sie unter Amazon-EBS-Snapshots im Amazon-EC2-Benutzerhandbuch.

Beispiel 2: So beschreiben Sie Snapshots basierend auf Filtern

Im folgenden describe-snapshots Beispiel werden Filter verwendet, um die Ergebnisse auf Snapshots zu beschränken, die Ihrem AWS Konto gehören und sich im pending Bundesstaat befinden. Das Beispiel verwendet den --query-Parameter, um nur die Snapshot-IDs und die Uhrzeit anzuzeigen, zu der der Snapshot gestartet wurde.

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

Ausgabe:

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

Im folgenden describe-snapshots-Beispiel werden Filter verwendet, um die Ergebnisse auf Snapshots zu beschränken, die aus dem angegebenen Volume erstellt wurden. Das Beispiel verwendet den --query-Parameter, um nur die Snapshot-IDs anzuzeigen.

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

Ausgabe:

snap-1234567890abcdef0 snap-08637175a712c3fb9 ...

Weitere Beispiele für die Verwendung von Filtern finden Sie unter Auflisten und Filtern Ihrer Ressourcen im Amazon-EC2-Benutzerhandbuch.

Beispiel 3: So beschreiben Sie Snapshots auf der Grundlage von Tags

Im folgenden describe-snapshots-Beispiel werden Tag-Filter verwendet, um die Ergebnisse auf Snapshots zu beschränken, die das Tag Stack=Prod enthalten.

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

Ein Beispiel für die Ausgabe von describe-snapshots finden Sie in Beispiel 1.

Weitere Beispiele für die Verwendung von Tag-Filtern finden Sie unter Arbeiten mit Tags im Amazon-EC2-Benutzerhandbuch.

Beispiel 4: So beschreiben Sie Snapshots anhand des Alters

Im folgenden describe-snapshots Beispiel werden JMESPath-Ausdrücke verwendet, um alle Snapshots zu beschreiben, die von Ihrem AWS Konto vor dem angegebenen Datum erstellt wurden. Es werden nur die Snapshot-IDs angezeigt.

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

Weitere Beispiele für die Verwendung von Filtern finden Sie unter Auflisten und Filtern Ihrer Ressourcen im Amazon-EC2-Benutzerhandbuch.

Beispiel 5: So zeigen Sie nur archivierte Snapshots an

Im folgenden describe-snapshots-Beispiel werden ausschließlich Snapshots aufgeführt, die auf der Archivstufe gespeichert sind.

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

Ausgabe:

{ "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": [] }, ] }

Weitere Informationen finden Sie unter Archivierte Snapshots anzeigen im Benutzerhandbuch für Amazon Elastic Compute Cloud.

PowerShell
Tools für PowerShell

Beispiel 1: Dieses Beispiel beschreibt den angegebenen Snapshot.

Get-EC2Snapshot -SnapshotId snap-12345678

Ausgabe:

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

Beispiel 2: Dieses Beispiel beschreibt die Snapshots mit dem Tag „Name“.

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

Beispiel 3: Dieses Beispiel beschreibt die Schnappschüsse, die ein 'Name' -Tag mit dem Wert '' TestValue haben.

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

Beispiel 4: Dieses Beispiel beschreibt all Ihre Schnappschüsse.

Get-EC2Snapshot -Owner self
Rust
SDK für Rust
Anmerkung

Es gibt noch mehr dazu. GitHub Sie sehen das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel-Repository einrichten und ausführen.

Zeigt den Status eines Snapshots an.

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(()) }
  • Einzelheiten zur API finden Sie DescribeSnapshotsin der API-Referenz zum AWS SDK für Rust.

Eine vollständige Liste der AWS SDK-Entwicklerhandbücher und Codebeispiele finden Sie unterAmazon EC2 EC2-Ressourcen mithilfe eines AWS SDK erstellen. Dieses Thema enthält auch Informationen zu den ersten Schritten und Details zu früheren SDK-Versionen.