2018年12月18日火曜日

VDDK API 学習コンテンツ

これまで VDDK API 絡みでいろいろと記事を投稿してきました
一通り基本から応用まで学べるコンテンツになったので記事をまとめておきます

基本概念

VDDK API を使ったバックアップ処理を実装する際の基本概念や簡単な仕組みを紹介しています
図も載せているので導入としては理解しやすいと思います

VDDK のインストールおよびサンプルのビルドと実行方法を紹介しています

VDDK API 入門

VDDK API を C++ から操作する基本的な方法を紹介しています
Init -> Connect -> Open までの基本的な操作を学べます

vmdk から実際にセクタ情報を取得/書き込みするサンプルです
とりあえず Read/Write の動かし方を学ぶことができます

セクタの書き込み、読み込みとは別の API も試しました
PrepareForAccess と EndAccess は対象の VM の vMotion を禁止することができます

VDDK API 側のログを出力する方法を紹介しています
Init する際に設定ファイルを指定する方法も紹介しています

VixDiskLib_QueryAllocatedBlocks は 6.7 を使った際にフルバックアップを実装するために使います
応用では他の API と組み合わせて実際にフルバックアップを実装しています

CBT 入門

コーディングの前に ManagedObjectBrowser を使ってディスクの増分領域を取得する方法を紹介しています

mob を使って実行した操作を govmomi を使ってコードに落とし込んでいます
govmomi を使った初期化の部分から学べます

応用

フルバックアップを実装してみました
対象の VM と全く同じ VM を作ることができます
VDDK API の基本操作と vSphere API の QueryChangedDiskAreas の使い方および CBT の使い方を理解している必要があります

こちらは増分バックアップのサンプル実装になります
vSphere API と組み合わせた実装になっているのでより難しくなっています

0 件のコメント:

コメントを投稿