ESXi 6.5 から ESXi 6.7 へのお引越しメモ


自宅メインサーバのProLiant DL380 Gen7からProLiant ML350p Gen8へのリプレース時のメモです。

いつもの

  • 素人のメモだよ
  • バージョンとか環境によって上手く行かなかったり、データが飛んだりするかも知れないよ
  • バックアップはちゃんととってね!

対象

ESXi 6.5 → 6.7でやってますが、6系なら行けるんじゃないんでしょうか。たぶん。
Thin ProvisioningなVMのイメージを使ってるんでそんな人向けに書いてますが、Thick Provisioningな環境だともっと楽かもしれません。

大まかな流れとして

  1. VMデータの取得
  2. VMデータの移行
  3. Thin ProvisioningなVMデータの処理
  4. VMの登録

といった感じです。

準備編

SSHアクセスの有効化

管理画面からESXiのsshアクセスを有効化しておきます。
Webからコンソールを表示することもできるので、必須ではありません。
でもみんな慣れた環境でやりたいよね ね?

オタクはすぐに鯖にWintermuteとかつける

データの取得

の前にVMの電源は一旦落としましょう。
ESXiのWebUIからデータを落としてもいいんですが、フォルダ単位で落としてくることができないため、今回はCyberduckを使用しました。
SFTP接続ができれば何でもいいと思います。

VMのデータは
/vmfs/volumes/[データストア名]/[VM名]
としてフォルダが作られています。

なお、実際に使われている容量ではなく、VMに割り当てている容量でファイルが落ちてくるので、手元の容量や移行先の容量が小さい場合にはこのへんを参考に縮小するといいと思います。今回は試していないのでGoogle先生に相談してください。
fdisk でパーティションのサイズを変更する
How to Shrink an ext2/3/4 File system with resize2fs

ではダウンロード開始です。

おせぇ

試してないけどscpとかでも投げられるんじゃないんでしょうか。試してないけど。

移行編

確認

拾ってきたデータを見てみましょう

割当64GB分のVMデータだったので64GB分ふってきてます。無慈悲。

転送

先程と同じく
/vmfs/volumes/[データストア名]/[VM名]
で投げればよいです。

おせぇ!

Thin Provisioningのお片付け

さて、データは入りました

が、そのまま64GB食ってます。つらい

なんで実際に使われている容量に減らしましょう
ここからコンソールでの作業が必要になるので、SSHを有効化するなりWebからコンソールを開きます

cd /vmfs/volumes/[データストア名]/[VM名]
ls -lha

VMware ESX および ESXi の仮想ディスクを拡張、縮小、および圧縮する (2092650)
を参考に処理を行います。
実際に容量を食っている -flatのほうではなく、ただのvmdkを対象にします。
vmkfstools -K [VM名]_0.vmdk

Webから確認すると

64GBではなくなりました

VMの登録

仮想マシンから仮想マシンの作成/登録で持ってきたVMを選ぶだけ

おわり

たぶんちゃんと移行するならシステムの容量削ったりなんだりしたほうが移行しやすいんだろうなと思いました。
以上