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

harry’s memorandum

おれおれメモ

Xen/KVMで使えるオープンソースの管理コンソール Enomalism を使ってみた

Enomalism というの Xen/KVMで使える管理コンソールがあるそうなのでインストールしてみた。

http://sourceforge.net/project/showfiles.php?group_id=164855&package_id=186866

  • インストールガイドは本家で

http://src.enomaly.com/wiki/Documentation/InstallationGuide

インストール

CentOS5.3にインストールします。インストールしてあるpythonは2.4なので2.4のenomalismをダウンロードします。

# rpm -aq | grep ^python-2.
python-2.4.3-24.el5
]# ls enomalism2-2.2.3.noarch.PY2.4.rpm
enomalism2-2.2.3.noarch.PY2.4.rpm

インストールするにいくつか必要なアプリケーションが必要。yumで不足分をインストールします。

# rpm -ivh enomalism2-2.2.3.noarch.PY2.4.rpm
警告: enomalism2-2.2.3.noarch.PY2.4.rpm: ヘッダ V3 DSA signature: NOKEY, key ID d585bd8a
エラー: 依存性の欠如:
        autoconf は Enomalism2-2.2-r70.noarch に必要とされています
        automake は Enomalism2-2.2-r70.noarch に必要とされています
        cyrus-sasl-devel は Enomalism2-2.2-r70.noarch に必要とされています
        gnutls-devel は Enomalism2-2.2-r70.noarch に必要とされています
        libxml2-devel は Enomalism2-2.2-r70.noarch に必要とされています
        mysql は Enomalism2-2.2-r70.noarch に必要とされています
        mysql-devel は Enomalism2-2.2-r70.noarch に必要とされています
        mysql-server は Enomalism2-2.2-r70.noarch に必要とされています
        python-devel は Enomalism2-2.2-r70.noarch に必要とされています
        xen-devel は Enomalism2-2.2-r70.noarch に必要とされています
# yum install autoconf automake cyrus-sasl-devel.x86_64 gnutls-devel.x86_64 libxml2-devel.x86_64 mysql.x86_64 mysql-server.x86_64 xen-devel.x86_64 python-devel.x86_64

enomalism をインストール。すごい勢いでpythonの開発環境をそろえてくれます。

# rpm -ivh enomalism2-2.2.3.noarch.PY2.4.rpm
警告: enomalism2-2.2.3.noarch.PY2.4.rpm: ヘッダ V3 DSA signature: NOKEY, key ID d585bd8a
準備中...                ########################################### [100%]
   1:Enomalism2             ########################################### [100%]
Downloading http://pypi.python.org/packages/2.4/s/setuptools/setuptools-0.6c8-py2.4.egg
Processing setuptools-0.6c8-py2.4.egg
creating /usr/lib/python2.4/site-packages/setuptools-0.6c8-py2.4.egg
Extracting setuptools-0.6c8-py2.4.egg to /usr/lib/python2.4/site-packages
Adding setuptools 0.6c8 to easy-install.pth file
Installing easy_install script to /usr/bin
Installing easy_install-2.4 script to /usr/bin

Installed /usr/lib/python2.4/site-packages/setuptools-0.6c8-py2.4.egg
Processing dependencies for setuptools==0.6c8
Finished processing dependencies for setuptools==0.6c8
Searching for uuid
Reading http://pypi.pyt
.....
.....
Repo dir: /opt/enomalism2/repo
Storage target dir: file:///xen
Rewriting config template....
epitaph.cfg created

mysqlの起動とDatabaseの作成。当たり前だけどmysqlのrootパスワードやenomalismのユーザとパスワードはここの環境にあわせてください。

# /etc/init.d/mysqld start
# chkconfig mysqld on
# mysqladmin password <rootpassword>
# cd /opt/enomalism2
# scripts/init-db.sh
This script will create the defaul enomalism db and user/pass
Usage: init-db.sh <mysql root password> <new enomalism user> <new enomalism password>
# scripts/init-db.sh <mysql root password>  enomalism enomalism
Creating enomalism2 database...
Database created.

configファイルをコピーして必要な部分を修正。*1

# cd opt/enomalism2
# cp -p ${HOSTNAME}.cfg config/
# vim config/${HOSTNAME}.cfg
 ~~
 sqlobject.dburi="mysql://enomalism:enomalism@localhost:3306/enomalism2"

普段からXenを使っている人は既に設定済みと思いますが、いちおうVNCでアクセスできるように修正。

# grep vnc_listen /etc/libvirt/qemu.conf
vnc_listen = "0.0.0.0"
# grep vnc-listen /etc/xen/xend-config.sxp
#(vnc-listen '127.0.0.1')
(vnc-listen '0.0.0.0')

enomalism を起動

# /etc/init.d/enomalism2.sh start
Starting enomalism2
Xen networking detected. Virtual Bridge already configured, good to go!

enomalism にアクセスしてログイン。初期のユーザとパスワードは admin/password
http://server:8080
f:id:dharry:20090624093413j:image

感想

  • ケバケバしいUIはアメリカンな感じがして個人的には嫌いじゃないです。
  • 使った感じは悪くないのですが、ユーザパスワードが生で書いてあるんだけど。。。これまずいでしょ。
# mysql -uroot -p
mysql> use enomalism2;
mysql> select * from tg_user;
+----+-----------+--------------------+--------------+----------+---------------------+---------------+
| id | user_name | email_address      | display_name | password | created             | child_name    |
+----+-----------+--------------------+--------------+----------+---------------------+---------------+
|  1 | admin     | nobody@localhost   | admin        | password | 2009-06-24 08:05:09 | EnomalismUser |
+----+-----------+--------------------+--------------+----------+---------------------+---------------+
  • WebからVNCで接続するところは同じくWebInterfaceのOracleVMっぽい。
  • Domain-0のIPがXenのNATのIPが振られてしまったので、VNCがめんどくさい。面倒なので直接DBに書いてあるDomain-0のIPを変更してしまった。
mysql> select ip_addr from machine where id=1;
+---------------+
| ip_addr       |
+---------------+
| 192.168.122.1 | 
+---------------+
1 row in set (0.00 sec)

mysql> update machine set ip_addr="192.168.1.4" where id=1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select ip_addr from machine where id=1;
+-------------+
| ip_addr     |
+-------------+
| 192.168.1.4 |
+-------------+
1 row in set (0.00 sec)

*1:mysqlに接続する部分ぐらいしか修正するところはないですけどね。