
ども。なのまるです!
ようやくESXi5系を本格的に使い始めてきたんですが、ちょっとはまったのでメモです!
基本的にハイパーバイザーであるESXiは、再起動すると一部のファイルを除いてハイパーバイザー内のファイルが初期化されてしまいます。
もくじ
ESXi4では
ESXi4では、以下で紹介している方法で残しておくことが出来たんですが、ESXi5になってから使えなくなりました。。。ESXi5系 では
ESXi5では、4と同じ方法では設定が保存されませんでした!調べてみるといくつか方法があるようで・・・
- state.tgzを作成する
- boot.cfgを書き換えて、任意のtgzファイルを展開する
- onetime.tgzに入れる
state.tgzを作成する
いくつかある方法の中で、「state.tgzを作成する」を選択することとします。理由はVMwareのKnowledge Baseで紹介されていたから!
手順
- state.tgz を展開する
- local.tgz を展開する
- 入れたいデータを入れる
- local.tgz を作成する
- state.tgz を作成する
state.tgz を展開する
1 2 | cd /tmp tar zxf /bootbank/state .tgz |
local.tgz を展開する
1 2 3 | cd /tmp mkdir /tmp/local tar zxf local .tgz -C local |
入れたいデータを入れる(SSHキー)
デフォルトだと、こんなファイルが入っていたの(主に /etc 以下のファイル)で、ここに何か追加する1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | etc /vmware/ssl/rui .key etc /vmware/ssl/rui .crt etc /vmware/hostd/hostsvc .xml etc /vmware/hostd/vmAutoStart .xml etc /vmware/hostd/pools .xml etc /vmware/esx .conf etc /vmware/dvsdata .db etc /vmware/license .cfg etc /vmware/ .backup.counter etc /vmware/vmware .lic etc /vmware/locker .conf etc /vmware/vpxa/vpxa .cfg etc /vmsyslog .conf.d /hostd .conf etc /vmsyslog .conf.d /vpxa .conf etc /vmsyslog .conf.d /fdm .conf etc /security/access .conf etc /ssh/ssh_host_rsa_key etc /ssh/ssh_host_dsa_key etc /ssh/ssh_host_rsa_key .pub etc /ssh/ssh_host_dsa_key .pub etc /chkconfig .db etc /resolv .conf etc /keymap etc /group etc /dhclient-vmk0 .leases etc /random-seed etc /vmsyslog .conf etc /shadow etc /hosts etc /sfcb/sfcb .cfg etc /sfcb/uuid etc /sfcb/repository/root/config/omc_config .idx etc /sfcb/repository/root/config/omc_config etc /sfcb/repository/root/config/omc_namespaceconfig etc /sfcb/repository/root/config/omc_namespaceconfig .idx etc /sfcb/repository/root/interop/sfcb_registeredprofile etc /sfcb/repository/root/interop/cim_indicationfilter .idx etc /sfcb/repository/root/interop/sfcb_registeredprofile .idx etc /sfcb/repository/root/interop/cim_indicationhandlercimxml .idx etc /sfcb/repository/root/interop/cim_listenerdestinationcimxml .idx etc /sfcb/repository/root/interop/cim_indicationsubscription .idx etc /ntp .conf etc /ntp .drift |
1 2 | vi /etc/ssh/keys-root/authorized_keys cp -rp /etc/ssh/keys-root /tmp/local/etc/ssh |
local.tgz を作成する
どうやら、local.tgzにはファイルしか入っていないようなので、以下のようなコマンドでファイルのみがtgzに入るように仕込みます。(そのまま作ってもいい気がするけど・・・)1 2 | cd /tmp/local find etc - type f -print0 | xargs -0 tar cvzf .. /local .tgz |
※補足
本当はxargsで渡すやり方だとファイル数が多くなった時に、抜けるファイルが出てくるんで非推奨なんですが、ESXiのtarコマンドには「-T」オプションが無いので取り急ぎこのコマンドで対処しています。
findの結果をtarでアーカイブしたい
state.tgz を作成する
1 2 3 4 5 6 | cd /tmp/ tar cvzf state.tgz local .tgz cp state.tgz /bootbank/ もしくは tar cvzf /bootbank/state .tgz local .tgz |
まとめ
- もう、これでバッチリですね!
- ESXi4と同じようにしたい場合は「/bootbank/onetime.tgz」を使うといいと思います!
- ちゃんとサポート取れる情報源ではないので、自己責任でお願いします!