vSphere Integrated Containers Engine (VIC Engine) の vSphere Web Client Plug-In をインストールしてみました。
Flash 版の Web Client から、VIC Engine による Docker 環境の情報がわかるようになります。
VIC Engine については、こちらもどうぞ。
vSphere Integrated Containers (VIC) 1.0 をためしてみる。
今回の環境は下記です。
- VMware vCenter Server Appliance 6.0 Update 2
- vSphere Integrated Containers 1.0 (vSphere Integrated Containers Engine 0.8)
1. ソフトウェア のダウンロードと配置。
MyVMware サイトから、VIC Engine (vic_0.8.0-7315-c8ac999.tar.gz) をダウンロードして、
vCenter Server Appliance (VCSA) に転送しておきます。
※VCSA は、事前に SSH & bash でアクセスできるようにしておきます。
※Plug-In ファイルを配置する Web サーバは用意せず、VCSA のローカルからファイルをインストールします。
2. VCSA でのインストール。
今回の VCSA の名前は、(IP アドレスは 192.168.1.82) にしてあります。
VCSA に SSH でログインして、転送しておいた tar.gz ファイルを展開します。
vc01:~ # tar zxf vic_0.8.0-7315-c8ac999.tar.gz
vc01:~ # cd vic/ ui/VCSA/
vc01:~/vic/ui/VCSA # ls
configs install.sh uninstall.sh upgrade.sh
config ファイルを vi などで編集して、VCENTER_IP に VCSA のアドレスを指定します。
今回は下記のようにしました。
vc01:~/vic/ui/VCSA # cat configs | head -n 2
# Enter the IP of the server running VCSA
VCENTER_IP="192.168.1.82"
インストールスクリプトを実行します。
途中で、VCSA の管理者ユーザ / パスワード、VCSA の root ユーザ / パスワード を入力します。
vc01:~/vic/ui/VCSA # ./install.sh
Enter your vCenter Administrator Username: administrator@vsphere.local
Enter your vCenter Administrator Password: ★パスワード入力
----------------------------------------
Checking if VCSA has Bash shell enabled...
Please enter the root password
----------------------------------------
The authenticity of host '192.168.1.82 (192.168.1.82)' can't be established.
ECDSA key fingerprint is 28:a4:8b:6a:c3:fd:8d:ef:b9:54:df:b2:f2:b6:6c:fb [MD5].
Are you sure you want to continue connecting (yes/no)? yes
root@192.168.1.82's password: ★パスワード入力
Reading plugin-package.xml...
----------------------------------------
Registering vCenter Server Extension...
----------------------------------------
INFO[2017-01-05T15:05:42Z] ### Installing UI Plugin ####
INFO[2017-01-05T15:05:42Z] Installing plugin
INFO[2017-01-05T15:05:51Z] Installed UI plugin
-------------------------------------------------------------
Copying plugin contents to the vSphere Web Client...
Please enter the root password
-------------------------------------------------------------
root@192.168.1.82's password: ★パスワード入力
--------------------------------------------------------------
Updating ownership of the plugin folders...
Please enter the root password
--------------------------------------------------------------
VMware vCenter Server Appliance 6.0.0.20000
Type: vCenter Server with an external Platform Services Controller
root@192.168.1.82's password: ★パスワード入力
Connection to 192.168.1.82 closed.
--------------------------------------------------------------
VIC UI registration was successful
インストールが成功しました。Plug-In のファイルが配置されています。
vc01:~ # ls -d /etc/vmware/vsphere-client/vc-packages/vsphere-client-serenity/*vic*
/etc/vmware/vsphere-client/vc-packages/vsphere-client-serenity/com.vmware.vicui.Vicui-0.8.0
Web Client のサービスを再起動しておきます。
vc01:~ # service vsphere-client restart
3. vSphere Web Client での確認。
vSphere Web Client にログインすると、
ホーム → 管理 → ソリューション → クライアント プラグイン
を開くと、VicUI がインストールされて、有効になっていることがわかります。
Virtual Container Host (VCH) Endpoint VM のサマリ画面を開くと、
「Virtual Container Host」 に Docker Engine にアクセスするためのアドレスが表示されるようになります。
Plug-In で表示されている「DOCKER_HOST=tcp://192.168.1.4:2376」に、
VIC とは関係ない Linux にインストールされている docker コマンドからアクセスしてみます。
[gowatana@client01 ~]$ rpm -qf `which docker`
docker-engine-1.12.2-1.0.1.el7.x86_64
環境変数を設定してから、docker run で nginx のコンテナを起動してみます。
[gowatana@client01 ~]$ export DOCKER_HOST=tcp://192.168.1.4:2376
[gowatana@client01 ~]$ export DOCKER_API_VERSION=1.23
[gowatana@client01 ~]$ docker --tls run -itd -p 80:80 nginx
Unable to find image 'nginx:latest' locally
Pulling from library/nginx
75a822cd7888: Pull complete
a3ed95caeb02: Pull complete
0aefb9dc4a57: Pull complete
046e44ee6057: Pull complete
Digest: sha256:2b942f7dd01a57ceeb5985a0472a2f92735eb81a910dec70c2183c61fc54298c
Status: Downloaded newer image for library/nginx:latest
33990261c1bd5b182962a621903dc66799577a25cdd284057518f9a2d029167e
[gowatana@client01 ~]$ docker --tls ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
33990261c1bd nginx "nginx -g daemon off;" 2 minutes ago Up 2 minutes 192.168.1.4:80->80/tcp prickly_northcutt
vSphere Web Client から見ると、先ほどの VCH に、Container VM が作成されていて、
nginx のコンテナ イメージから起動されたことがわかるようになりました。
80 番ポートを公開したことも表示されます。
Plug-In をインストールすることで、vSphere Web Client から
vSphere の管理者が VIC Engine の Docker に関わる情報を確認しやすくなります。
ただし、Web Client からコンテナの操作をできるわけではなく、
Docker コンテナは API や他のツールから利用することになります。
以上、VIC の Web Client Plug-In をインストールしてみる話でした。