読者です 読者をやめる 読者になる 読者になる

NTNX>日記

個人的な趣味による Nutanix Community Edition 日記。Japanese のみですみません。

Nutanix CE で Acropolis Container Services (ACS) 。Part.2

今回は、Docker Machine の Nutanix ドライバを使用して、AHV に Docker Host VM をデプロイします。

 前回はこちら

今回の Nutanix Cluster 環境

1 Node だけの Nutanix Cluster ですが、Nutanix Volume Plug-In のセットアップ時に指定するため、Cluster VIP を設定しておきます。

Volume Plug-in で ABS を利用するので、Data Services IP を設定しておきます。

f:id:gowatana:20161016154725p:plain

デフォルトで作成される Nutanix DSF のコンテナの名前が長いので、「cont01」というコンテナを追加作成しておきます。これも、Volume Plug-In セットアップ時に指定することになります。

f:id:gowatana:20161016155242p:plain

あと、VM 接続用に「vlan.0」というネットワークが作成済みです。

Docker Machine 用イメージのアップロード

Nutanix Prism の「Image Configuration」から、イメージ ファイルをアップロードします。

f:id:gowatana:20161016164548p:plain

「Upload Image」をクリックします。

f:id:gowatana:20161016164646p:plain

イメージ名は「container-host-image」にしました。

Image Type は「DISK」を選択します。

「Upload a file」を選択して、イメージ ファイル(~.qcow2)を指定して「Save」します。

f:id:gowatana:20161016164705p:plain

イメージ ファイルがアップロードされました。

f:id:gowatana:20161016165140p:plain

Docker Machine 環境のセットアップ

docker-machine を実行する想定のクライアントにログインします。今回は、Oracle Linux 7 を使用しています。

[gowatana@vm01 ~]$ cat /etc/oracle-release
Oracle Linux Server release 7.2

Docker Machine 関連のファイルは、コマンドのサーチパスが通ているところに配置します。

[gowatana@vm01 ~]$ echo $PATH | tr ":" "\n"
/usr/local/bin
/bin
/usr/bin
/usr/local/sbin
/usr/sbin
/home/gowatana/.local/bin
/home/gowatana/bin

今回は「/home/gowatana/bin」に配置します。

[gowatana@vm01 ~]$ mkdir bin
[gowatana@vm01 ~]$ cd bin
[gowatana@vm01 bin]$ pwd
/home/gowatana/bin

Docker Machine をインストール(ダウンロード)て、実行可能にします。
今回は Docker Machine 0.8.2 を使用します。

[gowatana@vm01 bin]$ echo docker-machine-`uname -s`-`uname -m`
docker-machine-Linux-x86_64
[gowatana@vm01 bin]$ curl -L https://github.com/docker/machine/releases/download/v0.8.2/docker-machine-`uname -s`-`uname -m` -o docker-machine
[gowatana@vm01 bin]$ chmod +x docker-machine
[gowatana@vm01 bin]$ docker-machine version
docker-machine version 0.8.2, build e18a919

Docker Machine Driver をインストール(ダウンロード)して、実行可能にします。

[gowatana@vm01 bin]$ curl -L http://download.nutanix.com/utils/docker-machine-driver-nutanix.linux -o docker-machine-driver-nutanix
[gowatana@vm01 bin]$ chmod +x docker-machine-driver-nutanix

Docker Machine による Docker Host 作成

Docker Host VM を作成します。Ravello 環境だと、40分弱くらいかかります。
docker-machine create コマンドでは、下記を指定しています。

  • -d nutanix → Nutanix ドライバを指定します。
  • --nutanix-username --nutanix-password → Prism の ユーザ / パスワードです。
  • --nutanix-endpoint 10.1.1.12:9440 → Nutanix の Cluster VIP を指定します。
  • --nutanix-vm-image container-host-image → アップロードしたイメージを指定します。
  • --nutanix-vm-network vlan.0 → Docker Host を接続するネットワークです。あらかじめ Prism から作成しておきます。
  • Docker Host に付与するホスト名は「docker-vm-01」です。
[gowatana@vm01 bin]$ docker-machine create -d nutanix --nutanix-username admin --nutanix-password <パスワード> --nutanix-endpoint 10.1.1.12:9440 --nutanix-vm-image container-host-image --nutanix-vm-network vlan.0 docker-vm-01
Running pre-create checks...
Creating machine...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with centos...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env docker-vm-01
[gowatana@vm01 bin]$

Docker Host「docker-vm-01」が作成されました。

[gowatana@vm01 bin]$ docker-machine ls
NAME           ACTIVE   DRIVER    STATE     URL                     SWARM   DOCKER    ERRORS
docker-vm-01   -        nutanix   Running   tcp://10.1.1.204:2376           v1.12.2

Prism でも、VM が作成されたことが分かります。
特にスペックを指定しなかったので、1 CPU / 1 GB RAM で作成されました。

f:id:gowatana:20161016173121p:plain

つづく