vOneCloudを使ってVMwareのマルチテナント動作を確認してみた

VMwareのvCenterは標準でマルチテナント機能が無いためマルチテナント化をしようとするとかなり面倒です。
マルチテナントのような事をしようとすると、ロールを作ってフォルダとかに仮想マシンを分けて作ったユーザーにロールを割り当ててと色々設定が必要です。
且つvCenterのロールは数が多く理解しながら設定していくのは、なかなか大変です。
そもそも、オンプレちっくに設計されているためクラウドのような使い方をしようとすると vRA などの製品が別途必要になってきます。
そこでここでは、OSSである vOneCloud を使ってVMware環境でクラウドのようなマルチテナントポータル構成が可能か簡易的な動作確認をしてみました。

vOneCloudについて

vOneCloudは、vCenterの代替を目指すディストリビューションプロジェクトです。
代替 と書くとvCenterが不要な感じに捉えてしまうかもしれませんがvOneCloudはvCenterのAPI経由から情報を取得したり仮想マシンを操作します。
そのため、vCenterは必須です。

vOneCloudはCentOSのovaで提供されています。

vOneCloudを使うの必要な環境

  • vCenter Server(Appliance)
    • vCenterのAPI経由でやりとりするので必要です
  • Clusterが構築されていること
    • リソース登録はClusterで登録するため必要です
  • 共用ストレージ(NFS)がESXiにマウントされ仮想マシンが保存されていること
    • vOneCloudが認識出来る必要があります

検証について

バージョン情報

項目 バージョン
vCenter Server Appliance 6.5.0 7119157
ESXi 6.5.0 4887370
OpenNebula 5.4.3

検証環境

今回の環境は以下のようになっています。

ESXiをネストしているのでesxi-08.localが仮想マシンとして見えています

確認すること

  • vOneCloudにvCenterを登録して必要な情報が取得できること
  • 仮想マシンの操作ができること
  • ユーザー毎に仮想マシンの表示・操作がコントロールできること

vOneCloud環境構築

前提条件

VMwareの環境は既に構築済みを前提とします。

ダウンロード

(1) vOneCloud バージョン をクリックします。

(2) 必要な情報を入力して Subscribe to list をクリックします。

(3) 入力したEmailアドレスにダウンロードできるリンクが届くのでクリックしてovaをダウンロードします。

デプロイ

(1) デプロイから基本設定は以下のドキュメントに詳しく書かれているので参照ください。

vOneCloud設定

(1) デプロイとIPなど初期設定が終わったら以下のアドレスへブラウザからアクセスします。

http://設定したIP:8000

(2) oneadmin でログインします。

(3) OpenNebula StateStart をクリックします。

(4) 問題なく起動できたら表示されているアドレスへアクセスします。

(5) CloudAdmin でログインします。初期パスワードはアカウント名と同じです。

言語設定

(1) 日本語に変更できるので必要であれば画面左上にで出ているアカウント名をクリックして Settings をクリックします。

(2) LanguageJapanese へ変更します。

VMwareホストの登録

(1) クラスタを登録します。インフラストラクチャーホスト をクリックして + をクリックします。

(2) vCenterの情報を入力して vCenter クラスタを取得 をクリックします。

(3) 表示されたクラスタを選択して インポート をクリックします。

データストア登録

(1) ESXi上のVM情報を取り込めるようデータストアを登録します。Straogeデータストア へ移動して インポート をクリックします。

(2) ここでもvCenter情報を入力して Get Datastores をクリックします。

(3) インポートするデータストアを選択して インポート をクリックします。

VM情報の取り込み

(1) OpenNebulaにVM情報を認識させます。ホスト へ移動して登録したホストを選択します。

(2) Wilds を開いて情報を取り込みたいVMを選択し Import Wilds をクリックします。

一気に取り込めない場合は、一つずつ同じ操作で取り込んでください

(3) インスタンスVM に取り込んだVMが表示されます。

これで仮想マシンの電源操作やスナップショット作成などが管理画面上からできるようになりました。

マルチテナント設定

グループ作成

(1) システムの グループ へ移動し + をクリックします。

(2) 全般 タブの 名前 を入力します。

(3) 管理 タブの 管理者ユーザーを作成 にチェックを入れて必要情報を入力ます。

(4) 権限 タブの VM にチェックを入れて 作成 をクリックします。

テナントにVMの紐付け

(1) 作成したグループにVMを紐付けます。VM に移動して紐づけるVMを選択し グループの変更 をクリックします。

(2) グループを選択してOK をクリックします。

マルチテナント動作確認

(1) 作成したテナント管理者でログインして割り当てられたVMのみ表示されていることを確認します。

(2) VMをクリックしてVNCで接続できたり電源操作ができることを確認します。

(3) テナント管理者でテナント内に一般ユーザーを作成して一般ユーザーログインすると最低限の操作しかできません。

まとめ

vOneCloudを使えば電源操作やコンソール接続(VNC)がマルチテナントで出来ました。
プライベートクラウドでマルチテナントを実装したポータルが必要で且つVMの操作程度でいいのであれば、vOneCloudで十分な気がします。
OpenNebulaはAPIも実装されているようなので、VM作成から登録・ポータルへの割り振りは自動化できそうです。

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)