LinuxからコマンドラインでvCenterを構築

vCenterをCLIでインストールするメリット

普段はGUIでやることが多いvCenterの構築ですが、CLIでも行うことができます。 コンフィグを用意すればスクリプトを実行するだけで構築してくれます。 手順書を作るのが設定ファイルを書くだけでよくなります。 設定項目は事前に理解しておく必要がありますが、GUIでの設定を理解していれば設定する項目は同じなので難易度は高くありません。 冪等性が維持されているかは確認したほうがいいと思います。

前提

LinuxOSを用意します。今回はCentOS7を使用しています。 NetworkとしてESXiと通信ができる必要があります。 vCenterはvCenter Server Appliance 6.0 で構築します。 基本的なvCenterの要件はクリアしているものとします。(DNSなど)

事前のコンフィグ準備

LinuxOSにメディアを適当なマウントポイントにマウントします。 マウント後に中身を別のディレクトリにコピーします。

mount /dev/cdrom /tmp/vcenter
mkdir /opt/vcenter
cp -rp /tmp/vcenter/* /opt/vcenter/

インストール用のコンフィグ(json)ファイルがあるディレクトリへ移動し、バックアップをとります。

cd /opt/vcenter/vcsa-cli-installer/templates/install/
cp -p embedded_vCSA_on_ESXi.json embedded_vCSA_on_ESXi.json`date +%Y%m%d`

ファイルのパーミッションは555になっているので書き込みできるように変更します。

chmod 755 embedded_vCSA_on_ESXi.json

コンフィグファイルを編集していきます。

vi embedded_vCSA_on_ESXi.json
"esxi": {
            "hostname": "<インストールするESXiのホスト名>",
            "username": "ESXiのユーザ名",
            "password": "パスワード",
            "deployment.network": "<所属させるネットワーク(VM Networkなど)>",
            "datastore": "データストア名"
        },
        "appliance": {
            "thin.disk.mode": true,
            "deployment.option": "small",
            "name": "Embedded-vCenter-Server-Appliance"
        },
        "network": {
            "ip.family": "ipv4",
            "mode": "static",
            "ip": "<vCenterに設定するIPアドレス>",
            "dns.servers": [
                "<DNSサーバを指定>"
            ],
            "prefix": "<ネットワークのサブネット(例:24)>",
            "gateway": "<vCenterに設定するデフォルトゲートウェイ>",
            "system.name": "<vCenterのホスト名>"
        },
        "os": {
            "password": "vCenterに設定るすパスワード",
            "ssh.enable": true
        },
        "sso": {
            "password": "vCenterに設定るすパスワード",
            "domain-name": "ドメイン名",
            "site-name": "vmware"
        }

スクリプトの実行

スクリプトを実行します。階層が違うので移動する必要があります。

cd ./../../lin64
 or
cd /opt/vcenter/vcsa-cli-installer/lin64

コマンドを実行します。出力情報の都合上一部カットしています。

./vcsa-deploy install --verbose --accept-eula ./../templates/install/embedded_vCSA_on_ESXi.json

...
=================== [1] Verify Template started at 10:55:27 ===================
Performing basic template verification...
CEIP is not enabled because the template key 'ceip.enabled' in section 'ceip',
subsection 'settings' was set to 'false'.
Checking section 'new.vcsa'
    Checking subsection 'vc'
    Checking subsection 'network'
...
The SHA1 thumbprint of the certificate is
'6B:8C:82:CE:93:69:1E:20:23:D8:E1:F4:BB:12:E4:E7:AF:75:6C:5B'
Do you accept the thumbprint?
1: Accept and continue.
2: Do not accept and exit.
1
Template verification completed successfully.
=================================== 10:55:29 ===================================
Starting vCenter Server Appliance installer to deploy "vCenter01"...
This appliance is a vCenter Server instance with an embedded Platform Services
Controller.
================ [2] Verify Configurations started at 10:55:29 ================
Performing basic verification...

...

Basic verification completed successfully.
=============== [3] Execute OVF Tool Command started at 10:55:32 ===============
Running OVF Tool to deploy the OVF...
'--guestinfo.cis.deployment.autoconfig' is set to: True
See /tmp/vcsaCliInstaller-2017-05-27-10-55-3JkjX_/ovftool.log for the OVF Tool
logs.

...

Starting to monitor status JSON file at
/tmp/vcsaCliInstaller-2017-05-27-10-55-3JkjX_/monitor-firstboot-progress-_MIPZk.json
=================== [4] Install Services started at 11:06:07 ===================
Installing services...
RPM Install: Progress: 5% Setting up storage
RPM Install: Progress: 50% Installing RPMs
RPM Install: Progress: 51% Installed VMware-jmemtool-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 54% Installed rvc_1.5.0-4501438_x86_64.rpm
RPM Install: Progress: 54% Installed
VMware-unixODBC-2.3.2.vmw.2-6.5.0.x86_64.rpm
RPM Install: Progress: 55% Installed vmware-lwis-6.2.0-4446131.x86_64.rpm
RPM Install: Progress: 57% Installed
vmware-directory-6.5.0.977-4542678.x86_64.rpm
RPM Install: Progress: 59% Installed
vmware-certificate-server-6.5.0.1306-4580178.x86_64.rpm
RPM Install: Progress: 61% Installed vmware-dns-server-1.0.0-4542680.x86_64.rpm
RPM Install: Progress: 63% Installed vmware-cm-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 64% Installed VMware-cis-license-6.5.0-4528602.x86_64.rpm
RPM Install: Progress: 68% Installed
VMware-applmon-cloudvm-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 76% Installed
VMware-Postgres-client-jdbc-9.4.9.1-4536683.noarch.rpm
RPM Install: Progress: 78% Installed VMware-mbcs-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 79% Installed
VMware-vpxd-agents-eesx-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 80% Installed VMware-vpxd-vctop-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 81% Installed
VMware-cloudvm-vimtop-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 82% Installed vmware-vmrc-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 83% Installed vmware-eam-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 84% Installed
vmware-imagebuilder-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 84% Installed ipxe-1.0.0-1.4446055.vmw.i686.rpm
RPM Install: Progress: 85% Installed
vmware-autodeploy-6.5.0-0.0.4944578.noarch.rpm
RPM Install: Progress: 86% Installed VMware-sps-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 86% Installed
VMware-UpdateManager-6.5.0-4540462.x86_64.rpm
RPM Install: Progress: 87% Installed VMware-vcha-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 88% Installed vmware-cam-6.5.0.83-4513363.x86_64.rpm
RPM Install: Progress: 90% Installed vmware-vsm-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 90% Installed vsphere-client-6.5.0-4944578.noarch.rpm
RPM Install: Progress: 91% Installed VMware-perfcharts-6.5.0-4944578.x86_64.rpm
RPM Install: Progress: 95% Configuring the machine
Services installations succeeded.
============== [5] Configure vCenter Services started at 11:26:53 ==============
Configuring services for first time use...
Initial Configuration: Progress: 2% Starting VMware Authentication Framework...
Initial Configuration: Progress: 5% Starting VMware Identity Management
Service...
Initial Configuration: Progress: 11% Starting VMware Service Lifecycle
Manager...
Initial Configuration: Progress: 17% Starting VMware Component Manager...
Initial Configuration: Progress: 20% Starting VMware License Service...
Initial Configuration: Progress: 22% Starting VMware Platform Services
Controller Client...
Initial Configuration: Progress: 25% Starting VMware Service Control Agent...
Initial Configuration: Progress: 28% Starting VMware vAPI Endpoint...
Initial Configuration: Progress: 31% Starting VMware Service Lifecycle Manager
API...
Initial Configuration: Progress: 34% Starting VMware Appliance Management
Service...
Initial Configuration: Progress: 42% Starting VMware Appliance Monitoring
Service...
Initial Configuration: Progress: 45% Starting VMware Postgres...
Initial Configuration: Progress: 48% Starting dbconfig...
Initial Configuration: Progress: 51% Starting VMware vCenter-Services...
Initial Configuration: Progress: 54% Starting VMware Message Bus Configuration
Service...
Initial Configuration: Progress: 58% Starting VMware vSphere Web Client...
Initial Configuration: Progress: 59% Starting VMware vSphere Web Client...
Initial Configuration: Progress: 60% Starting VMware vSphere Client...
Initial Configuration: Progress: 61% Starting VMware vSphere Client...
Initial Configuration: Progress: 62% Starting VMware vCenter Server...
Initial Configuration: Progress: 65% Starting VMware Content Library Service...
Initial Configuration: Progress: 68% Starting VMware ESX Agent Manager...
Initial Configuration: Progress: 71% Starting VMware vSphere Auto Deploy
Waiter...
Initial Configuration: Progress: 74% Starting VMware vSphere Profile-Driven
Storage Service...
Initial Configuration: Progress: 77% Starting VMware Update Manager...
Initial Configuration: Progress: 80% Starting VMware vCenter High
Availability...
Initial Configuration: Progress: 85% Starting VMware VSAN Health Service...
Initial Configuration: Progress: 88% Starting VMware vService Manager...
Initial Configuration: Progress: 91% Starting VMware Image Builder Manager...
Initial Configuration: Progress: 97% Starting VMware Performance Charts...
First time configuration succeeded.
=================================== 11:38:45 ===================================
vCenter Server Appliance installer finished deploying "vCenter01".

...

Finished successfully.
================= [6] Result and Log Files started at 11:38:45 =================
Summarizing result and log files...
The vCenter Server Appliance installer result file is at:
/tmp/vcsaCliInstaller-2017-05-27-10-55-3JkjX_/vcsa-cli-installer.json The
vCenter Server Appliance installer log file is at:
/tmp/vcsaCliInstaller-2017-05-27-10-55-3JkjX_/vcsa-cli-installer.log The
generated template file is at:
/tmp/vcsaCliInstaller-2017-05-27-10-55-3JkjX_/generated_install.json

これで構築完了です。 だいたい40分程度かかっています。

vCenterにログインする前に

vCenterはhttpsですがブラウザに証明書がないのでブラウザから警告が表示されます。 それを改善するため証明書をブラウザへ導入します。

vCneterのトップへアクセスして右下の「信頼されたルート CA 証明書をダウンロード」をクリックします。

https://vCenterのホスト名/

すると証明書が保存されますので、中身をブラウザへインポートします。 Linux,Mac,Windowsと分かれていますので、適宜OSに合わせてインポートしてください。

なおここでLinux,Macはファイル名が以下のようになっています。

なので 「xxxxxxx.0」は「xxxxxxx.crt」 「xxxxxxx.r1」は「xxxxxxx.crl」 とファイル名をリネームしてからインポートする必要があります。 インポートが完了したらログイン画面にアクセスしてログインをします。

https://vCenterのホスト名/vsphere-client/?csp

ログインID

ログインIDはESXiとは異なり設定した<ユーザ名>@<ドメイン名>となります。