7.0 U2 以降では、サービス構成は特殊な構成保存データベースに保存されます。
データベースの設定にアクセスするには、 /bin/configstorecli ツールを使用します。
・Config Storeによって管理されているファイルのリストを表示
[root@esxi:~] configstorecli files get { "cached": [ "/etc/slp.reg", "/etc/vmware/schemastore/schema-store-1", "/var/lib/sfcb/registration/repository/root/interop/cim_indicationfilter", "/var/lib/sfcb/registration/repository/root/interop/cim_indicationfilter.idx", "/var/lib/sfcb/registration/repository/root/interop/cim_indicationhandlercimxml", "/var/lib/sfcb/registration/repository/root/interop/cim_indicationhandlercimxml.idx", "/var/lib/sfcb/registration/repository/root/interop/cim_indicationsubscription", "/var/lib/sfcb/registration/repository/root/interop/cim_indicationsubscription.idx", "/var/lib/sfcb/registration/repository/root/interop/cim_listenerdestinationcimxml", "/var/lib/sfcb/registration/repository/root/interop/cim_listenerdestinationcimxml.idx", "/var/lib/sfcb/registration/repository/sfcb-0-0/root/interop/qualifiers", "/var/lib/sfcb/registration/repository/sfcb-0-0/root/interop/qualifiers.idx" ], "config": [ "/etc/dhclient-vmk0.conf", "/etc/dhclient6-vmk0.conf", "/etc/host.conf", "/etc/issue", "/etc/motd", "/etc/nscd.conf", "/etc/ntp.keys",
・各構成値にアクセスするための、スキーマ情報取得
[root@esxi:~] configstorecli schema list { "esx": { ← Component "assignhw": [ ← Group "overrides" ←Key ], "attestation": [ "tpm2_settings", "tpm2_endorsement_keys", "tpm2_ca_certificates", "esx_base_images", "certificate" ], "authentication": [ "user_accounts", "trust_security_token_issuers", "esx_token_config",
スキーマは3層構成になっており、それぞれComponent / Group / Keyをと呼ばれ、それらを指定することで各構成値を指定する。
・構成値を取得
[root@esxi:~] configstorecli config default get -c esx -g services -k vpxa { "alarm": { "check_frequency": 20, "power_on_silence": 60 }, "core": { "debug_options": { "disconnect_hostd": false, "ignore_snapshot_config_cache": false, "simulate_invalid_snapshot_mo": true, "simulate_invalid_snapshot_mo_once": false }, "host_sync": { "get_changes": { "asyncvmxblob": true, "delay": 0, "envbrowser_refresh_rate": 300, "timeout": 0 }, "guestdisk_use_percentage_diff_check": false, "heartbeat": { "interval": 10, "stress_delayed_heartbeat": 300, "stress_duration": 180000000, "stress_enabled": false, "stress_missed_heartbeat": 500 }, "host_health_system_throttle_interval": 0, "max_event_reporting_delay_seconds": 60,
コマンドにおける、defaultはそのほかにもcurrentとdesireがある。
また、getの代わりにset / update を利用すると設定ができるが、その際はcurrentを指定する必要がある。
・設定変更時の挙動確認
①configstorecliにて直接変更する場合
1.設定値を記載したjsonファイルを作成
[root@esxi:/tmp] cat /tmp/wel.json { "message": "test" }
2.設定をアップデート
[root@esxi:/tmp] configstorecli config current update -c esx -g system -k welcome_message -infile /tmp/wel.json Update: completed successfully.
3.変更を確認
[root@esxi:/tmp] configstorecli config current get -c esx -g system -k welcome_message { "message": "test" }
②esxcliにて変更する場合
1.現在値を確認
[root@esxi:~] configstorecli config default get -c esx -g system -k welcome_message { "message": "" } [root@esxi:~] [root@esxi:~] configstorecli config current get -c esx -g system -k welcome_message {} [root@esxi:~] [root@esxi:~] esxcli system welcomemsg get [root@esxi:~]
2.設定をアップデート
[root@esxi:~] esxcli system welcomemsg set -m="welcome" [root@esxi:~]
3.変更を確認
[root@esxi:~] esxcli system welcomemsg get welcome [root@esxi:~] [root@esxi:~] [root@esxi:~] configstorecli config current get -c esx -g system -k welcome_message { "message": "welcome" } [root@esxi:~]
esxcliにてconfig storeが変更されていることが確認できる。
※参考
https://kb.vmware.com/s/article/82227?lang=ja
https://kb.vmware.com/s/article/2046347
Introduction to the new ESXi Configuration Store CLI (configstorecli)