KVMをWebから操作できるCloudminを入れてみた



[webminユーザグループ(日本語ユーザ互助サイト)][1]のトップページを見ていたところ、『Cloudmin version 7.3リリース』という情報が掲載されていた。

なんだろう？と調べてみると、XenやKVMをWeb上から操作できるツールであると。
KVMは仕事でも使っているサーバはあるが、私は触ったことがなかったので、構築とともに勉強する。

## Cloudminについて
Cloudminには、GPLライセンスのものとProがある。

詳細は、[Cloudminに関するページ][2]で確認していただきたいが、
GPL版ではXenかKVMのどちらかのみ管理する機能を提供する。
(インストールスクリプトもそれぞれ分けられている。)

一方Pro版では、有償で商用サポートあり。Xen, OpenVZ, KVM,
Vservers, EC2 and Solaris Zonesをはじめ複数のホストを管理する機能をサポートしているとのこと。

## 構築
構築環境は、Mac OSX 10.9.3 , vagrant 1.5.4 , chef/centos-6.5 を利用しようとしたが、

VirtualBoxやParallelsではKVMを立ち上げることができずに断念。
(追記：Parallels Desktop Standard Editionは不可。Enterprise Editionは可能。)

VMware fusionは可能だった為、CentOSイメージからインストールして確認しています。

---

まず[ここ][2]から`cloudmin-kvm-redhat-install.sh`をダウンロードする。

```
# wget http://cloudmin.virtualmin.com/gpl/scripts/cloudmin-kvm-redhat-install.sh
# chmod +x cloudmin-kvm-redhat-install.sh
# ./cloudmin-kvm-redhat-install.sh
*******************************************************************************
*         Welcome to the Cloudmin GPL for KVM installer, version 1.1         *
*******************************************************************************

 Operating systems supported by this installer are:

 Fedora Core 3-12 on i386 and x86_64
 CentOS and RHEL 3-6 on i386 and x86_64

 If your OS is not listed above, this script will fail (and attempting
 to run it on an unsupported OS is not recommended, or...supported).
 Continue? (y/n) y

Checking for hardware support for KVM ..
.. found OK

Checking for yum ..
.. found OK

Installing wget ..
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
```

スクリプトに実行権限を付与して、実行すると自動的にインストールが始まります。
だいぶ時間がかかりますが、最終的に入ったパッケージは以下のとおり。
(CentOSインストール時には`Basic Server`を選択しています。)

```
Package 4:perl-5.10.1-136.el6.x86_64 already installed and latest version
Package openssl-1.0.1e-16.el6_5.7.x86_64 already installed and latest version
Package cronie-1.4.4-12.el6.x86_64 already installed and latest version
Package 32:bind-utils-9.8.2-0.23.rc1.el6_5.1.x86_64 already installed and latest version
Package bridge-utils-1.2-10.el6.x86_64 already installed and latest version
Package lsof-4.82-4.el6.x86_64 already installed and latest version
Package parted-2.1-21.el6.x86_64 already installed and latest version

Installed:
  bind.x86_64 32:9.8.2-0.23.rc1.el6_5.1                                         
  perl-Net-SSLeay.x86_64 0:1.35-9.el6                                           
  qemu-img.x86_64 2:0.12.1.2-2.415.el6_5.8                                      
  qemu-kvm.x86_64 2:0.12.1.2-2.415.el6_5.8                                      
  qemu-kvm-tools.x86_64 2:0.12.1.2-2.415.el6_5.8                                

Dependency Installed:
  celt051.x86_64 0:0.5.1.3-0.el6                                                
  glusterfs-api.x86_64 0:3.4.0.57rhs-1.el6_5                                    
  glusterfs-libs.x86_64 0:3.4.0.57rhs-1.el6_5                                   
  gpxe-roms-qemu.noarch 0:0.9.7-6.10.el6                                        
  seabios.x86_64 0:0.6.1.2-28.el6                                               
  sgabios-bin.noarch 0:0-0.3.20110621svn.el6                                    
  spice-server.x86_64 0:0.12.4-6.el6_5.1                                        
  usbredir.x86_64 0:0.5.1-1.el6                                                 
  vgabios.noarch 0:0.6b-3.7.el6                                                 

Installed:
  perl-JSON.noarch 0:2.15-5.el6                                                 

Installed:
  dhcp.x86_64 12:4.1.1-38.P1.el6.centos                                         

Installed:
  ebtables.x86_64 0:2.0.9-6.el6                                                 

Installed:
  wbm-security-updates.noarch 2:4.1-1                                           
  wbm-server-manager.noarch 0:7.7.kvm-1                                         
  wbt-virtual-server-mobile.noarch 2:2.6-1                                      
  wbt-virtual-server-theme.noarch 2:8.8-1                                       
  webmin.noarch 0:1.690-1                                                       

Cloudmin GPL has been successfully installed.
```

そして、domain/IP:10000でWebアクセスします。

```
You can login to Cloudmin at :
https://localhost.localdomain:10000/
```

追記2:
Cloudminにログイン後のトップページに以下の警告が出ていた。
`No bridge interfaces like br0 were found`

この設定をしないと新しいGuestを作れないようなので、設定しておく。

[Setting up a Host System Running Webmin][3]に書いてあるとおり。

1. Webminの画面で、「ネットワーク」 -> 「ネットワークの設定」 -> 「ネットワーク インターフェイス」をクリック。

2. 「起動時にインターフェイスをアクティブ」タブで、"eth0"をクリック。
IPv4の設定を覚えておいて、これを「No address configured」に変更して保存。

3. 「Add a new bridge.」をクリックしてeth0に設定されていたIPv4のIPとネットマスクを記載して作成。

4. 「モジュール インデックス」をクリックして、ネットワーク設定のメイン画面に戻り、「ルーティングとゲートウェイ」をクリック。
「Active configuration」タブで、"Default Route"がIPv4のゲートウェイになっていることを確認。
「Boot time configuration」タブで、インターフェイスがブリッジとなっていることを確認して保存。

5. 「モジュール インデックス」をクリックして、ネットワーク設定のメイン画面に戻り、「変更を適用する」をクリックする。


## 気になったこと

早速Webで確認して思ったのは、`Root Shell`と`Auto-Scaling`。

`Root Shell`はWebからコマンドを打てるようで、
sshが繋がらないけど、Webはなんとか大丈夫そう！という時に便利かな？と。

`Auto-Scaling`は、AWSと同じものかな？...

いろいろとさらに興味を持ったので、これから確認していこうと思います。

[1]: http://jp.webmin.com/
[2]: http://www.webmin.com/cinstall-kvm.html
[3]: https://www.virtualmin.com/documentation/cloudmin/virtualization/kvm