さくらの専用サーバとOpenStackで作るプライベートクラウド 7ページ
Dashboardのインストール
OpenStackの操作は先に説明してきたようにコマンドラインで行えるものの、操作の際は長いID文字列などを入力する必要があることもあり、GUIでの操作を行いたいというユーザーも多いだろう。OpenStackではGUIで操作を行うためのコンポーネントとして、OpenStack Dashboard(horizon)が用意されている。horizonはWebブラウザでアクセスして使用するWebアプリケーションとなっている。以下ではこのhorizonのインストールと設定について説明していこう。
必要なコンポーネントのインストール
horizonはPythonのWebフレームワークであるDjangoを使用して作成されている。今回はHTTPサーバーとしてApache HTTP Serverを使用し、またセッションのキャッシュにmemcachedを使用することとする。まず、これらのコンポーネントをインストールしておく。
# yum install httpd # yum install memcached # service httped start # service memcached start # chkconfig httpd on # chkconfig memcached on
Apache HTTP ServerとDjangoを連携させるmod-wsgiパッケージも必要だ。
# yum install mod-wsgi
horizon自体はopenstack-dashboardパッケージに収録されている。
# yum install openstack-dashboard
horizonの設定
まず、horizonが使用するMySQLのユーザーとパスワードを作成する。horizonの場合、データベース管理ツールが用意されていないため手動での作業が必要だ。今回は「dash」という名前のデータベースと「dash」というユーザーを作成し、dashユーザーにdashデータベースにアクセスする権限を与えている。
# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. : : mysql> CREATE DATABASE dash; Query OK, 1 row affected (0.00 sec) mysql> GRANT ALL ON dash.* TO 'dash'@'%' IDENTIFIED BY '<パスワード>'; Query OK, 0 rows affected (0.00 sec) mysql> Bye
horizonの設定は、/etc/openstack-dashboard/local_settingsファイルに記述されている。このファイルを下記のように変更し、使用するキャッシュストレージとデータベースアカウントを指定しておく。
# We recommend you use memcached for development; otherwise after every reload # of the django development server, you will have to login again. To use # memcached set CACHE_BACKED to something like 'memcached://127.0.0.1:11211/' CACHE_BACKEND = 'memcached://127.0.0.1:11211/' ←キャッシュにローカルホストのmemcachedを使用するよう設定 : : DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'dash', ←先ほど作成したデータベース名を指定 'USER': 'dash', ←先ほど作成したユーザー名を指定 'PASSWORD': 'DashPassword', ←先ほど指定作成したパスワードを指定 'HOST': 'localhost', 'default-character-set': 'utf8' }, }
続いて設定をデータベースに反映させる。
# /usr/share/openstack-dashboard/manage.py syncdb Creating tables ... Creating table django_session Installing custom SQL ... Installing indexes ... No fixtures found.
最後にHTTPサーバーを再起動する。
# service httpd restart
以上でhorizonの設定は完了だ。Webブラウザで「http://<ホスト>/dashboard」というURLにアクセスすれば、ダッシュボードのログイン画面が表示される(図12)。
ここでのログインには、keystoneで作成した管理用ユーザー(adminUser)を使用する。パスワードはkeystoneの設定時に指定したものだ。ログインに成功すると、メイン画面が表示される(図13)。
なお、horizonのApache HTTP Server向け設定ファイルは、/etc/httpd/conf.d/openstack-dashboard.confとして用意されている。ダッシュボードのURLを変更したい場合はこのファイルを書き換えてHTTPサーバーを再起動すれば良い。
novncコンソールを使用する
horizonにはWebブラウザから仮想マシンのコンソールにアクセスする機能が備えられている。この機能は先に説明したnovncproxyを使って実現されている。コンソールを利用するには、まずダッシュボードで「インスタンス」画面にアクセスし、稼働中の仮想マシンインスタンス一覧を表示させる(図14)。
一覧内のインスタンス名をクリックすると、インスタンスの詳細が表示される(図15)。
ここでVNCタブをクリックすると、そのマシンのコンソールにアクセスできる(図16)。