使用 EBS for Rust 的 Amazon SDK 範例 - AWS SDK 程式碼範例

文件 AWS SDK AWS 範例 SDK 儲存庫中有更多可用的 GitHub 範例。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 EBS for Rust 的 Amazon SDK 範例

下列程式碼範例示範如何使用 AWS SDK for Rust 搭配 Amazon EBS 來執行動作和實作常見案例。

Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然 動作會示範如何呼叫個別服務函數,但您可以在其相關案例中查看內容中的動作。

每個範例都包含完整原始程式碼的連結,您可以在其中找到如何在內容中設定和執行程式碼的指示。

主題

動作

下列程式碼範例示範如何使用 CompleteSnapshot

Rust 的 SDK
注意

還有更多 on GitHub。尋找完整範例,並了解如何在 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(()) }
  • 如需 API 詳細資訊,請參閱 CompleteSnapshot AWS for Rust SDK 參考中的 API

下列程式碼範例示範如何使用 PutSnapshotBlock

Rust 的 SDK
注意

還有更多 on GitHub。尋找完整範例,並了解如何在 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(()) }
  • 如需 API 詳細資訊,請參閱 PutSnapshotBlock AWS for Rust SDK 參考中的 API

下列程式碼範例示範如何使用 StartSnapshot

Rust 的 SDK
注意

還有更多 on GitHub。尋找完整範例,並了解如何在 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()) }
  • 如需 API 詳細資訊,請參閱 StartSnapshot AWS for Rust SDK 參考中的 API