VMware ESXi VMを新しいデータストアに移動-シンプロビジョニングを維持


27

vCenterが利用できないVMware ESXi環境の問題に対する適切なソリューションを探しています。

VMDKシンプロビジョニングを維持しながら、単一のESXiホストでVMをあるデータストアから別のデータストアに移動する最良の方法は何ですか?

これは、別のドライブアレイ/データストアで拡張されたスタンドアロンサーバーです。古い配列に含まれるデータを新しい配列に移動したいと思います。

編集:宛先データストアのサイズは、実際にはソースよりも小さくなっています。シックファイルをコピーする十分なスペースがありません。


VMを小さすぎて収まらないデータストアに移動するのが賢明だと思いますか?VMがすべてのストレージスペースを使い果たすことにした不正なプロセスはどうなりますか
ゾレダチェ

一般的に、いいえ...しかし、これは特別な場合です。VMは成長しません。
ewwhite

VMが成長しない場合、シンプロビジョニングを維持する理由はありません。
ジムB

ESXiのバージョン
ジェドダニエルズ

これは、ESXiの5です
ewwhite

回答:


21

[ファイル]-> [エクスポート]-> [OVFテンプレートのエクスポート]も使用できます。

そしてそれをインポートします。前回試したとき、これはvmdk形式を保持していると思います。かなり時間が経っていたので、今はよくわかりません。


3
バージョン4.1以降の場合、インポート時にthinまたはthickを使用するように求められます。
ジェドダニエルズ

2
わかった!OVFの圧縮スパースファイルへのエクスポートは、迅速で簡単でした。インポート時にシンまたはシックプロビジョニングのオプションが与えられ、インポートは迅速でした。72GB(8GBを使用)仮想マシンの場合は5分。
ewwhite

3
FWIW、ovftoolを使用してコマンドラインからこれを行うこともできます。
ジェドダニエルズ

28

自分でこれを行う方法を見つけたところです。転送中のシンプロビジョニングを維持しながらVMを新しいデータストアに移動する方法に関する、わかりやすいガイドを以下に示します(したがって、転送時間も短縮されます)。

CLIでvmkfstoolsを使用したステップバイステップガイド

  1. VMの電源を切る
  2. (オプション)必要に応じてスナップショットを統合します。
  3. vCenterインベントリからVMを削除します
    • VMを右クリックし、[インベントリから削除]をクリックします ここに画像の説明を入力してください
  4. ESXiマシンでSSHを有効にする
    • vSphereクライアントで、構成->セキュリティプロファイル->プロパティ(サービスの隣)-> SSH(リスト内)->オプション->開始に移動します。
  5. rootとしてSSH経由でログインします
  6. 宛先データストアにディレクトリを準備します
    • mkdir "/vmfs/volumes/destination_datastore/Some VM"
  7. シンプロビジョニングを使用して.vmdkファイルを複製する
    • vmkfstools -i "/vmfs/volumes/source_datastore/Some VM/Some VM.vmdk" -d thin "/vmfs/volumes/destination_datastore/Some VM/Some VM.vmdk"
  8. 残りのファイルをコピーします(.vmdkファイルの上書きを回避)
    • find "/vmfs/volumes/source_datastore/Some VM" -maxdepth 1 -type f | grep -v ".vmdk" | while read file; do cp "$file" "/vmfs/volumes/destination_datastore/Some VM"; done
  9. 手順2でスナップショットを統合しなかった場合、スナップショット.vmdkデルタファイルが存在する可能性があるため、これらもコピーする必要があります(これには時間がかかる場合があります)。
    • find "/vmfs/volumes/source_datastore/Some VM" -maxdepth 1 -type f | grep [0123456789][0123456789][0123456789][0123456789][0123456789][0123456789] | grep ".vmdk" | while read file; do cp "$file" "/vmfs/volumes/destination_datastore/Some VM"; done
  10. 必要なすべてのファイルのクローン作成とコピーが完了したら、新しいデータストアからインベントリにVMを追加します
    • vSphereクライアントで、[ 構成]-> [ストレージ]-> [データブラウザ ]に移動し、VMの移動先のデータストアを右クリックして、[データストアの参照]をクリックします。 ここに画像の説明を入力してください
  11. VMを参照し、.vmxファイルを右クリックして、[インベントリに追加]をクリックします ここに画像の説明を入力してください
  12. VMを起動して、動作するかどうかを確認します。コピーするか移動するかを尋ねられたら、コピーしたと答えてください。(これが何を意味するのかはわかりませんが、少なくとも変更されるvNICのMACアドレスと関係があると思います。) ここに画像の説明を入力してください
  13. VMが正常に起動した場合、古いデータストアからVMを削除できます。
    • rm -rf "/vmfs/volumes/source_datastore/Some VM"

注:ESXi 5でのみテスト済み

イラストはこのブログから恥知らずにコピーされました


1
これは機能するはずですが、スナップショットを使用してVMを移動する方法に関する情報を提供することも愚かです。このような移動を試みる前に、すべてのスナップショットを削除するように人々に伝えてください。
パウスカ

2
上記の@ohaalの投稿であるesxi 5.5 u1では、-print0を-printに変更する必要があり、それは魅力的でした!PS。賛成票を投じますが、担当者はいません。
icereval 14

2
@ohaalがESXi 6.7で動作することを確認しました。ありがとうございました!
エドの山

.vmdkおよび.vmx以外のファイルをコピーする理由はありますか?存在しない場合は、findラインをシンプルに変更できcpます。
アグスティンラド

8

この回答をご覧ください。同じロジック、つまりこの引用があなたの状況に適用されます:

「Converter」と呼ばれますが、実際には「All-Purpose OS Data Mover」と呼ばれるべきです。しかし、舌からそれほどうまく転がりません。

唯一の違いは、送信元ホストと宛先ホストは同じですが、データストアが異なることです。これは、ファイルがESXiホストからConverterマシンに移動してから、ホストに戻ることを意味します。Converterが「スマート」で、それが同じホストであることを知っていればいいと思います。残念ながら、それにはお金がかかります。

警告:VMを変換すると、ネットワークアダプターの新しいMACアドレスが生成されます。ほとんどのゲストOSは、これを新しいデバイスとして解釈します。


1
MACアドレスに関する優れた点。
ジェームズバーネット

3

実際には、ターゲットの宛先にフォルダーを作成し、フォルダー内のファイルをソースからコピーするだけで、ファイルは薄くなります。フォルダーをコピーすると、シンからシックに変換されます。


2
これは間違っています。du -h .同じデータストアで既に作成されたフォルダにコピーすると、Thin を使用して検証されたものが太くなった cp C* ../newdir
ローワンホーキンス

0

ファイルをコピーし、vmkfstoolsを介してシンに再変換します。


宛先データストアのサイズは、実際にはソースよりも小さくなっています。シックファイルをコピーする十分なスペースがありません。
ewwhite

その場合、コピーと再変換は機能しませんが、vmkfstoolsを使用してコピー先に直接クローンすることもできます。これにより、余分なGBのゼロが転送されないため、転送に必要な時間が短縮されます。私の答えには、それを行う方法の詳細が含まれています。
オハール
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.