Exemplos de código de SDK da AWS para APIs diretas do EBS - Amazon EBS

Exemplos de código de SDK da AWS para APIs diretas do EBS

Os exemplos de código a seguir mostram como usar as APIs diretas do EBS com um kit de desenvolvimento de software (SDK) da AWS.

Usar StartSnapshot com o AWS SDK ou a CLI

O código de exemplo a seguir mostra como usar StartSnapshot.

Rust
SDK para Rust
nota

Há mais no GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da AWS.

async fn start(client: &Client, description: &str) -> Result<String, Error> { let snapshot = client .start_snapshot() .description(description) .encrypted(false) .volume_size(1) .send() .await?; Ok(snapshot.snapshot_id.unwrap()) }
  • Para obter detalhes da API, consulte StartSnapshot na Referência da API AWS SDK para Rust.

Usar PutSnapshotBlock com o AWS SDK ou a CLI

O código de exemplo a seguir mostra como usar PutSnapshotBlock.

Rust
SDK para Rust
nota

Há mais no GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da AWS.

async fn add_block( client: &Client, id: &str, idx: usize, block: Vec<u8>, checksum: &str, ) -> Result<(), Error> { client .put_snapshot_block() .snapshot_id(id) .block_index(idx as i32) .block_data(ByteStream::from(block)) .checksum(checksum) .checksum_algorithm(ChecksumAlgorithm::ChecksumAlgorithmSha256) .data_length(EBS_BLOCK_SIZE as i32) .send() .await?; Ok(()) }
  • Para obter detalhes da API, consulte PutSnapshotBlock na Referência da API AWS SDK para Rust.

Usar CompleteSnapshot com o AWS SDK ou a CLI

O código de exemplo a seguir mostra como usar CompleteSnapshot.

Rust
SDK para Rust
nota

Há mais no GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da AWS.

async fn finish(client: &Client, id: &str) -> Result<(), Error> { client .complete_snapshot() .changed_blocks_count(2) .snapshot_id(id) .send() .await?; println!("Snapshot ID {}", id); println!("The state is 'completed' when all of the modified blocks have been transferred to Amazon S3."); println!("Use the get-snapshot-state code example to get the state of the snapshot."); Ok(()) }
  • Para obter detalhes da API, consulte CompleteSnapshot na Referência da API AWS SDK para Rust.