「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>仮想化アーキテクチャ]]

* 目次 [#mb0fefb5]
#contents

*概要 [#ic2ddf07]
VHDについて。

*詳細 [#d2f159fa]

**形式 [#u4d7c7c8]

***容量固定 [#m813b9f2]
あらかじめ決めたボリュームサイズと同等のファイルサイズで作成。

-メリット~
作成時と使用時のVHDファイルサイズは変化が無いため、
--フラグメント化を防止できる。
--下位レイヤのアライメントと揃えることが容易。

-デメリット~
サイズが大きいために取り扱いが難しくなることもある。

***容量可変 [#e036bebe]
-VHDファイル中に管理情報を持っていて、論理ブロックが、~
ファイル中のどの位置(FilePosition)にあるか、自前で管理する。

-メリット~
[[容量固定>#m813b9f2]]に書かれている、メリットがない。

-デメリット~
[[容量固定>#m813b9f2]]に書かれている、デメリットがない。


***Sparse Files [#h32fe604]
-NTFSのファイルシステムの管理情報として、

>HDDのセクタを

--割り当ててあるセクタ
--割り当てていないセクタ
---割り当てていないセクタをreadすると、00 が返る。

>がある。

-Sparse Filesを作る場合、専用のAPIで、~
特定のFilePositionを切り捨てる。

-AzureのVHDは、Sparse Files形式で、~
実使用容量(ActualGB)の分だけPage BLOBを使う。

***差分 [#oc30bac9]
元のVHDイメージと使用した場合の差分を扱う。

***ハードディスクへのリンク [#ged7debe]
物理ハードディスクのリンクまたはパーティションとして使用する形式。

**可搬性 [#y13613c4]
基本的にVHDは持ち運びができるが、以下の点に注意が必要。

***ホストOSとゲストOS [#g2663bb8]
ホストOS(VM構成バージョン)とゲストOSの互換性

-Hyper-V - Wikipedia > サポートされるゲストOS~
https://ja.wikipedia.org/wiki/Hyper-V#%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%81%95%E3%82%8C%E3%82%8B%E3%82%B2%E3%82%B9%E3%83%88OS

***VHDの互換性 [#d8996407]
-[[ホストOS(VM構成バージョン)とゲストOSの互換性>#g2663bb8]]に依存。

-ただし、VHDの移行には、以下の問題がある。
--構成情報の移行ができない。
--スナップショットの移行ができない。

-構成情報やスナップショットを移行する場合、[[エクスポート / インポート>#e1b149f1]]を行う。

***エクスポート / インポート [#e1b149f1]

-VHD単体ではなく、構成情報やスナップショットも移行する。

-Windows 8 や Server 2012では~
エクスポートしていない仮想マシンでも直接インポートできる。

-エクスポート / インポート における 互換性は、以下のように言えるらしい。
--新しい OS にて作成した仮想マシンを古い OS のホストにインポートする事は不可
--ただし、上記 以外のケースでも、失敗することがある(2008→2012R2はダメらしい)。

-参考

--Hyper-Vの仮想マシンをインポートする(Windows 8/Server 2012編):Tech TIPS - @IT~
https://www.atmarkit.co.jp/ait/articles/1309/06/news097.html

--Hyper-V の仮想マシンにおける エクスポート / インポート の互換性 – Made in container~
https://www.syuheiuda.com/?p=3132

***[[TPM>TPM(Trusted Platform Module)]] [#of8e0c39]
***[[TPM>TPM(Trusted Platform Module)]]の移行 [#of8e0c39]
VM の[[TPM>TPM(Trusted Platform Module)]]を有効にしている場合は、[[TPM>TPM(Trusted Platform Module)]]も移行する必要がある模様。

-Windows Server 2016 Hyper-V から Windows Server 2019 Hyper-V 移行~
http://www.vwnet.jp/Windows/WS19/2019011401/MigrationWS16HyperV2WS19HyperV.htm

*参考 [#y06f6aa0]
-VHD (ファイルフォーマット) - Wikipedia~
https://ja.wikipedia.org/wiki/VHD_(%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88)

-Sparse Files (Windows)~
https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa365564.aspx

-Niigata.NET Page Blob Download 最適化 — Kyrt Blog~
http://kyrt.in/2015/10/16/niigata_net_2015_10_dml.html

----
Tags: [[:Windows]], [[:Hyper-V]], [[:仮想化]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS