翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS SDK EBS direct の コード例 APIs
次のコード例は、 AWS ソフトウェア開発キット () APIsでEBS直接 を使用する方法を示していますSDK。
または StartSnapshot
で を使用する AWS SDK CLI
次のコード例は、StartSnapshot
を使用する方法を示しています。
- Rust
-
- SDK Rust 用の
-
詳細については、「」を参照してください 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())
}
または PutSnapshotBlock
で を使用する AWS SDK CLI
次のコード例は、PutSnapshotBlock
を使用する方法を示しています。
- Rust
-
- SDK Rust 用の
-
詳細については、「」を参照してください 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(())
}
または CompleteSnapshot
で を使用する AWS SDK CLI
次の例は、CompleteSnapshot
を使用する方法を説明しています。
- Rust
-
- SDK Rust 用の
-
詳細については、「」を参照してください 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(())
}