Utilícelo DescribeSnapshots con un o AWS SDK CLI - Ejemplos de código de AWS SDK

Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Utilícelo DescribeSnapshots con un o AWS SDK CLI

En los siguientes ejemplos de código, se muestra cómo utilizar DescribeSnapshots.

CLI
AWS CLI

Ejemplo 1: Describir una instantánea

En el siguiente ejemplo de describe-snapshots, se describe la instantánea especificada.

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

Salida:

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

Para obtener más información, consulta las EBSinstantáneas de Amazon en la Guía del EC2 usuario de Amazon.

Ejemplo 2: Describir las instantáneas con base en filtros

En el siguiente describe-snapshots ejemplo, se utilizan filtros para limitar los resultados a las instantáneas que son propiedad de su AWS cuenta y que se encuentran en el pending estado. En el ejemplo, se usa el --query parámetro para mostrar solo la instantánea IDs y la hora en que se inició.

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

Salida:

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

En el siguiente ejemplo de describe-snapshots, se usan filtros para limitar los resultados a las instantáneas creadas a partir del volumen especificado. El ejemplo usa el --query parámetro para mostrar solo la instantáneaIDs.

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

Salida:

snap-1234567890abcdef0 snap-08637175a712c3fb9 ...

Para ver ejemplos adicionales de uso de filtros, consulta Cómo publicar y filtrar tus recursos en la Guía del EC2 usuario de Amazon.

Ejemplo 3: Describir las instantáneas con base en etiquetas

En el siguiente ejemplo de describe-snapshots, se usan filtros de etiquetas para limitar los resultados a las instantáneas que tienen la etiqueta Stack=Prod.

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

Para ver un ejemplo del resultado de describe-snapshots, consulte el ejemplo 1.

Para ver más ejemplos de uso de filtros de etiquetas, consulta Cómo trabajar con etiquetas en la Guía del EC2 usuario de Amazon.

Ejemplo 4: Describir las instantáneas con base en la antigüedad

En el siguiente describe-snapshots ejemplo, se utilizan JMESPath expresiones para describir todas las instantáneas creadas por tu AWS cuenta antes de la fecha especificada. Muestra solo la instantáneaIDs.

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

Para ver ejemplos adicionales de uso de filtros, consulta Cómo publicar y filtrar tus recursos en la Guía del EC2 usuario de Amazon.

Ejemplo 5: Ver solo las instantáneas archivadas

En el siguiente ejemplo de describe-snapshots, se muestran solo las instantáneas que se almacenan en el nivel de archivo.

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

Salida:

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

Para obtener más información, consulte Ver instantáneas archivadas en la Guía del usuario de Amazon Elastic Compute Cloud.

  • Para API obtener más información, consulte DescribeSnapshotsla Referencia de AWS CLI comandos.

PowerShell
Herramientas para PowerShell

Ejemplo 1: en este ejemplo se describe la instantánea especificada.

Get-EC2Snapshot -SnapshotId snap-12345678

Salida:

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

Ejemplo 2: en este ejemplo se describen las instantáneas que tienen la etiqueta «Nombre».

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

Ejemplo 3: En este ejemplo se describen las instantáneas que tienen una etiqueta de «Nombre» con el valor «». TestValue

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

Ejemplo 4: En este ejemplo se describen todas las instantáneas.

Get-EC2Snapshot -Owner self
Rust
SDKpara Rust
nota

Hay más información GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS.

Muestra el estado de una instantánea.

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(()) }
  • Para API obtener más información, consulte DescribeSnapshotsla APIreferencia AWS SDK de Rust.