Edited at

第4回 Mirantis OpenStack と VMware との連携実現!

More than 3 years have passed since last update.


第4回 Fuel DVSプラグインの動作確認


  1. まえがき

  2. 状態確認

  3. 動作確認:ESXi上インスタンスとCompute上インスタンスの疎通確認


    1. インスタンス起動

    2. PINGとSSHで疎通確認

    3. HTTPの疎通確認




まえがき

前回はFuelによるOpenStack環境のDeployが完了するところまでご説明しました。

第1回概要:http://qiita.com/MakitaTatsuro/items/6812bbaa0d7c82654374

第2回vSphere環境構築:http://qiita.com/MakitaTatsuro/items/813c85f45f51367912c4

第3回OpenStack環境構築:http://qiita.com/MakitaTatsuro/items/aacd20869ddb4348645f

今回は、Deploy後、正常に動作することを確認していきます。

まず、Deployが終わった状態のNetworkから確認してみましょう。


状況確認

さっそくHorizonのDashbordにアクセスしてみましょう。

FuelのDeploy完了した画面からHorizonへリンクされています。

便利ですね。

WS000026hehe.png

★Horizonのアクセスはデフォルトでは、ユーザがadmin、パスワードはadmin、で設定されています。

「プロジェクト」→「ネットワーク」→「ネットワーク」

デフォルトで「admin_floating_net」と「admin_internal_net」のネットワークができています。

WS000034.png

この「admin_internal_net」のUUIDを確認しましょう。

WS000029.png

「9d66cbc5-86ae-4b13-8394-8e58b9fe386f」でした。

このネットワークが、VMware環境側の「DSwitch_compute」にアタッチされているか確認してみましょう。

vCenterにブラウザアクセスしてログインします。

「ホーム」→「ネットワーク」→「管理」タブの「トポロジ」を確認します。

WS000033.png

「DSwitch_Compute9d66cbc5-86ae-4b13-8394-8e58b9fe386f」というスイッチがアタッチされていることがわかります。

それと、Novaが各サービスを正しく認識しているか確認してみましょう。

Controllerノードにログインします。

コマンドは



. openrc

nova service-list

です。(画面キャプチャし忘れました)

WS000035.png

上記でわかるのは、nova-computeが2つあるように見えますが、Zoneがvcenter用とnova用に分かれていて、vcernter用については、ホスト名がvcenter-sn1で登録されていることがわかります。

このvcenter用のホスト上にインスタンスが起動するわけではなく、そのホスト(compute_vmware)からvCenterにAPIが飛ばされて操作されます。

なので、Hypervisor list してもVMware環境側の空き容量などは確認することはできません。

WS000036.png

それでは「admin_internal_net」をアタッチしたインスタンスを起動してみましょう。


インスタンス起動

「admin_internal_net」ネットワークにアタッチしたインスタンスを2台起動します。

1つはAvailability Zoneをnova、もう一つはAvailability Zoneをvcenterで作成します。

手順は省略するので、下記の指定のとおり作成します。

Incetance Name : osvm01

Availability Zone : nova

ブートイメージ:TestVM(デフォルトで登録されているQCOW2のイメージ)

フレーバ:m1.micro

ネットワーク:admin_internal_netのみアタッチ

→起動します。

Incetance Name : osvm02

Availability Zone : vcenter

ブートイメージ:TestVM-VMDK(デフォルトで登録されているVMDKのイメージ。VMDKでないとESXiで起動しません。)

フレーバ:m1.micro

ネットワーク:admin_internal_netのみアタッチ

→起動します。

WS000038.png

両機ともステータスが稼働中になることを確認したら、vCenter側でどう認識されているか確認してみましょう。

起動前:

WS000037.png

起動後:

WS000039.png

vcenterのZoneを指定したインスタンスが「DSwitch_Compute9d66...」のDistributed Switch にアタッチされていることがわかります。

では、noVNC接続してPINGとSSHを確認します。


PINGとSSHで疎通確認

ブラウザでHorizonにアクセスして、インスタンスのコンソール画面を開いてみましょう。

【注意】AvailavirlityZoneをvcenterで指定したインスタンスは、HorizonのDashbordのnoVNCでアクセスすることはできません。

ですので、ここでみるインスタンスは、「 osvm01 」のコンソール画面になります。

もし、「 osvm02 」のコンソールにアクセスしたい場合は、vCenterのブラウザにアクセスして、vCenter経由でコンソールを確認してください。

それではifconfigコマンドでIPアドレスが自動取得できていることを確認のうえ、PINGを飛ばします。

WS000041.png

WS000042.png

通っていますね。

sshで接続してみましょう。

pic000000.JPG

pic000001.JPG

通りました。

応答がない場合、セキュリティグループを追加しましょう。

今回は、追加方法の説明は省略します。(Horizonのブラウザから「プロジェクト」→「コンピュート」→「アクセスとセキュリティー」の画面で追加できます)

SSHと同様にHTTPについても許可しておいてください。次はHTTPで疎通を試みます。


HTTPの疎通確認

SSHが通っていれば疎通は確認できていると思いますが、

ここではHTTPでも疎通できていることを明示的に確認しておきます。

インスタンスの1つ目にて、ncコマンドで簡易HTTPサーバを起動しておきます。

ブラウザでvCenterにアクセスしてコンソールを開きます。(インスタンスのページを開いて「アクション」→「コンソールを開く」をクリック)

pic000002.JPG

下記のコマンドで80ポートでLISETENモードで常駐状態にします。

while true ; do (echo -ne "HTTP/1.0 200 OK"; echo; echo "Hello!") | sudo nc -l -p 80; done

pic000006.JPG

もう一つのブラウザで、OpenStackのHorizon(Dashbord)にアクセスします。

該当のインスタンスのコンソールを開いて、curlでHTTPリクエストを飛ばして、応答があるか確認してみましょう。

pic000007.JPG

通りますね。

以上でデータ連携が可能なことを証明しました。


所感

いかがでしたでしょうか。

4回に渡って、OpenStackベースのクラウド環境と VMwareベースのクラウド環境のネットワーク接続を、

Fule プラグインの「 VMware Fuel DVS Plugin 」を使って構築するご紹介をいたしました。

比較的簡単に VMware環境とデータ連携できる OpenStackベースのクラウド環境を構築することができました。

VMware環境とOpenStack環境間でデータ連携できるクラウド環境が容易に構築できることは、非常にメリットが高いですね。