vCenterのCLIインストール方法についてまとめます。マルチデータセンタ構成を考える時は、複数vCenterのそれっぽい環境を作って動作確認をする事になるかと思います。トライ&エラーが必要で何度もvCenterを再構築する事になるかと思いますので、vCenter構築の自動化手法を知っておくのは悪いことではありません。
インストーラーのシステム要件
vCenterのCLIインストールが可能なOSはそれほど多くありません。「vCenter Serverインストーラーのシステム要件」を参照すると、SUSEとUbuntuしかサポートされない事がわかります。
以下、サポート対象外ですが、CentOS 7.8で動作確認済の手順を示します。なお、CentOS 8.XではOVFテンプレートをデプロイする処理を試みる時点でエラーを返す事が分かっています。
VCSA(vCenter Server Appliance)のダウンロード
Download VMware vSphereをブラウザで開きます。「VMware vCenter Server 7.0」を押下します。
バージョンは適宜変更ください
「VMware vCenter Server and Modules VMware vCenter Server Appliance」と書かれているファイルサイズが大きい方の「DOWNLOAD NOW」を押下します。
ファイルサイズが小さい方はバージョンアップ専用のファイルです
「I agree to the terms and conditions outline in the End User License Agreement」にチェックを入れ、「ACCEPT」を押下します。すると、ダウンロードが開始されます。
VCSA(vCenter Server Appliance)のインストール
マウント
isoファイル適当な位置にマウントします。以下/mnt/以下にisoファイルがマウントされている前提で説明します。
mount VMware-VCSA-all-7.0.2-17694817.iso /mnt/
テンプレートファイルの編集
vCenterをCLIインストールする場合は、vCenterへ入力するパラメタを以下のjsonファイルに記入します。
全部で5種類のファイルがありますが、「replication」と名のつくファイルは信頼関係の結ばれたvCenterを構築し、cross vCenter vMotionをするような構成を想定しています。「cluster」と名のつくファイルは冗長構成のvCenterを構築する場合を想定しています。
ESXi上に1台構成のvCenterを構築する場合は「embedded_vCSA_on_ESXi.json」を使用します。
[root@ansible012 ~]# ll /mnt/vcsa-cli-installer/templates/install/ 合計 30 -r-xr-xr-x 1 root root 4586 1月 24 00:52 embedded_vCSA_on_ESXi.json -r-xr-xr-x 1 root root 5626 1月 24 00:52 embedded_vCSA_on_VC.json -r-xr-xr-x 1 root root 4809 1月 24 00:52 embedded_vCSA_replication_on_ESXi.json -r-xr-xr-x 1 root root 5849 1月 24 00:52 embedded_vCSA_replication_on_VC.json -r-xr-xr-x 1 root root 5396 1月 24 00:52 vCSA_with_cluster_on_ESXi.json
isoファイルは読み取り専用ですので、上記ファイルを適当な位置へコピーし編集可能な状態にします。
cp -p /mnt/vcsa-cli-installer/templates/install/embedded_vCSA_on_ESXi.json /tmp/ chmod 755 /tmp/embedded_vCSA_on_ESXi.json
embedded_vCSA_on_ESXi.jsonを環境に合わせて編集します。編集例は以下の通りです。
# vi /tmp/embedded_vCSA_on_ESXi.json { "__version": "2.13.0", "__comments": "Sample template to deploy a vCenter Server Appliance with an embedded Platform Services Controller on an ESXi host.", "new_vcsa": { "esxi": { "hostname": "192.168.1.181", "username": "root", "password": "P@ssw0rd", "deployment_network": "external", "datastore": "datastore11" }, "appliance": { "__comments": [ "You must provide the 'deployment_option' key with a value, which will affect the VCSA's configuration parameters, such as the VCSA's number of vCPUs, the memory size, the storage size, and the maximum numbers of ESXi hosts and VMs which can be managed. For a list of acceptable values, run the supported deployment sizes help, i.e. vcsa-deploy --supported-deployment-sizes" ], "thin_disk_mode": true, "deployment_option": "small", "name": "194-vcenter" }, "network": { "ip_family": "ipv4", "mode": "static", "ip": "192.168.1.194", "dns_servers": [ "192.168.1.221" ], "prefix": "24", "gateway": "192.168.1.1", "system_name": "vcenter04.gokatei.go" }, "os": { "password": "P@ssw0rd", "ntp_servers": "192.168.1.221", "ssh_enable": true }, "sso": { "password": "P@ssw0rd", "domain_name": "gokatei4.go" } }, "ceip": { "description": { "__comments": [ "++++VMware Customer Experience Improvement Program (CEIP)++++", "VMware's Customer Experience Improvement Program (CEIP) ", "provides VMware with information that enables VMware to ", "improve its products and services, to fix problems, ", "and to advise you on how best to deploy and use our ", "products. As part of CEIP, VMware collects technical ", "information about your organization's use of VMware ", "products and services on a regular basis in association ", "with your organization's VMware license key(s). This ", "information does not personally identify any individual. ", "", "Additional information regarding the data collected ", "through CEIP and the purposes for which it is used by ", "VMware is set forth in the Trust & Assurance Center at ", "http://www.vmware.com/trustvmware/ceip.html . If you ", "prefer not to participate in VMware's CEIP for this ", "product, you should disable CEIP by setting ", "'ceip_enabled': false. You may join or leave VMware's ", "CEIP for this product at any time. Please confirm your ", "acknowledgement by passing in the parameter ", "--acknowledge-ceip in the command line.", "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" ] }, "settings": { "ceip_enabled": false } } }
デプロイの実行
vcsa-deployというCLIツールを使用すると、vCenterのデプロイができます。どのような引数を与えれば良いかは、以下のように「–help」を与えると調べる事ができます。
[root@ansible012 ~]# /mnt/vcsa-cli-installer/lin64/vcsa-deploy --help Usage: vcsa-deploy [-h] [--version] [--supported-deployment-sizes] {install,upgrade,migrate} ... optional arguments: -h, --help Show this help message and exit. --version Show the version and exit. --supported-deployment-sizes Display all of the supported deployment options from the OVA in default location. If the OVA package is not found, default values are displayed Available sub-commands. Use vcsa-deploy [subcommand] --help for a list of subcommand-specific arguments: {install,upgrade,migrate} install Deploy VCSA to a remote host. upgrade Upgrade an existing vCSA. migrate Migrate an existing Windows installation of vCenter Server to a vCSA. The exit codes and their meanings are: 0: Command ran successfully 1: Runtime error 2: Validation error 3: Template error
[root@ansible012 ~]# /mnt/vcsa-cli-installer/lin64/vcsa-deploy install --help Usage: vcsa-deploy install [-h] [--template-help] [--log-dir LOG_DIR] [--skip-ovftool-verification] [--accept-eula] [--acknowledge-ceip] [--pause-on-warnings] [--operation-id OPERATION_ID] [--no-ssl-certificate-verification] [-v | -t] [--verify-template-only | --precheck-only] template [template ...] Deploy VCSA to a remote host. optional arguments: -h, --help Show this help message and exit. Other Arguments: --template-help Print out the help for template settings. --log-dir LOG_DIR Directory for log and other output files. --skip-ovftool-verification Deploy the vCenter Server Appliance directly through OVF Tool without performing parameter verification. Basic template verification will still be performed. --accept-eula Accept the end-user license agreement. This argument is required to deploy the appliance. --acknowledge-ceip Confirm your acknowledgement about your VMware Customer Experience Improvement Program (CEIP) participation. This argument is required if 'ceip_enabled' is set to true in the install/upgrade/migration template. --pause-on-warnings Pause and wait for acknowledgment of some warnings. --operation-id OPERATION_ID Provide an Operation ID to track install/upgrade/migration activities. --no-ssl-certificate-verification Skip security certificate verification for all server connections. -v, --verbose Debug information will be displayed in the console. If you set this parameter, you cannot set --terse. -t, --terse Only warning and error information will be displayed in the console. If you set this parameter, you cannot set --verbose. --verify-template-only Perform only the basic template verification but do not run additional prechecks, and do not deploy vCenter Server Appliance. For additional prechecks and OVF Tool parameter verification, use --precheck-only parameter. --precheck-only Perform only the basic template verification and OVF Tool parameter verification, but do not deploy the vCenter Server Appliance. Required Arguments: template Path of JSON files that describe the vCenter Server Appliance deployment procedure. Use --template-help for a list of template settings. Use vcsa-deploy [subcommand] --help for a list of subcommand-specific arguments. The exit codes and their meanings are: 0: Command ran successfully 1: Runtime error 2: Validation error 3: Template error
実行例は以下の通りです。第1引数はinstallとし、テンプレートファイルも引数として与えます。
最低限必要なオプションはEULAの同意を意味する「–accept-eula」のみですが、その他、ログ出力などの便利なオプションもありますので、環境に応じて適宜変更ください。
/mnt/vcsa-cli-installer/lin64/vcsa-deploy install --accept-eula /tmp/embedded_vCSA_on_ESXi.json
thumbprintを許可するかどうかを聞かれますので、許容するならば「1」を押下し、Enterを入力します。
Retrying the connection with certificate thumbprint check... If an untrusted SSL certificate is installed on '192.168.1.181', secure communication cannot be guaranteed. Depending on your security policy, this issue could represent a security concern. The SHA-1 thumbprint of the certificate is '18:BC:38:29:E5:DF:21:47:11:36:65:B6:B4:8A:00:99:4B:5F:F7:C3' Do you accept the thumbprint? 1: Accept and continue. 2: Do not accept and exit. Enter '1' or '2':
インストールが完了すると以下のように出力されます。
[SUCCEEDED] Successfully executed Task 'ApplianceLoginSummaryTask: Provide appliance login information.' in TaskFlow 'embedded_vCSA_on_ESXi' at 10:06:13 =================================== 10:06:14 =================================== Result and Log File Information... WorkFlow log directory: /tmp/vcsaCliInstaller-2021-03-30-09-45-6b3nue0f/workflow_1617097519138