====== CloudStack4.0のインストール ======
Apacheから提供されているオープンソースのIaaS運用基盤ソフトウェアのCloudStackのインストール。
===== 必要なものとか =====
* **物理マシン2台**:とりあえず2台。できればCore iシリーズとかで1P4Cくらいあると良い。\\ CPUは仮想化支援機能付きを。\\ HDDは250GB以上。
* **物理マシン1**:とりあえず、CentOS6.3の64bit版でも入れとけって事で。\\ 64bit版だからね。32bit版入れたらダメだからね。←これで数時間ハマった
* **物理マシン2**:仮想ハイパーバイザーを入れとく。Hyper-VとかESXとかKVMとか。\\ CloudStackの出自の問題からか、XenServerとの相性が良いですよ。\\ XenServerは無償版(Express)もあるので、それでも使ってみたらって事で。\\ 今回はXenServer使ってます。
==== 補足 ====
CloudStackは大きく分けると3つの構成要素からなります。\\
* **管理サーバ**:CloudStackが動作するIaaS管理サーバ。
* **仮想ホスト**:ハイパーバイザーが動作するホスト。仮想インスタンスを実行する。
* **ストレージ**:仮想ホストが実行する仮想インスタンスの実体やその他ISOデータなどを置いたりする。\\
NFSかiSCSIで接続する。
「必要なもの」のうち、物理マシン1は管理サーバとストレージを兼ねる事にするので、主にHDDに余力のある物を使う。\\
物理マシン2は仮想インスタンスを実行するので、CPUやRAMに余力のある物を使う。\\
同スペックなら、どっちゃでも。
===== 下準備 =====
==== 物理マシン1 ====
CentOS6.3の64bit版をインストールしておく。\\
間違っても32bit版をインストールしないこと。\\
インストール自体は最小構成で良い。\\
IPは固定IPとし、ホスト名は**hostname**コマンドでFQDNが取得できるようにしておく必要があるとかないとか。\\
細かい事はggrksって事で。
==== 物理マシン2 ====
XenServerをインストールする。\\
とりあえず、XenServer6.0だとCloudStack4.0で接続できました。6.0入れといてください。\\
[[http://www.citrix.co.jp|Citrixのサイト(http://www.citrix.co.jp)]]でXenServer探してください。\\
インストールは[[http://support.citrix.com/proddocs/?locale=ja|CitrixのeDocs(http://support.citrix.com/proddocs/?locale=ja)]]辺りで探してください。\\
\\
……ものぐさでサーセン......
===== 管理サーバとストレージの設定 =====
ではでは。\\
物理マシン1に導入されているであろう最小構成のCentOS6.3を設定していきます。\\
全部**root**でやってね!
==== ホスト名とかIP固定とか ====
ホスト名とIPの固定を行う。\\
特に難しくは無いと思うけど。\\
ホスト名は**/etc/sysconfig/network**を編集し、**HOSTNAME=**の部分にFQDN書いときましょう。\\
→[[CentOS6.x-ホスト名の確認と変更]]\\
IPの固定は**/etc/sysconfig/network-scripts/ifcfg-eth0**を編集する
TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.10.10
PREFIX=24
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DNS1=192.168.10.1
ONBOOT=yes
この辺りが書かれていればOK。各パラメータは環境に合わせて変更してください。\\
また、必要に応じて**/etc/hosts**に他の要素(今回の場合は仮想ホストに当たるXenServerのホスト情報)について記述しておくと良い。\\
あ、自分自身については記述しといてね!
# vi /etc/hosts
127.0.0.1 [管理サーバー名] localhost.localdomain~~~
こんな感じで。
==== SELinuxの無効化とiptablesの停止 ====
SELinuxは何かとお邪魔してくるので、無効化します。\\
ファイル**/etc/selinux/config**の**SELINUX=**パラメータを**disabled**にしちゃいましょう。
# vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
この後、再起動すると無効化されます。\\
Permissiveでも良いんだろうけど、嫌いなので無効化します(ぇ\\
iptablesはサービスの停止と、次回以降の起動時の自動起動設定を切ります。
# /etc/rc.d/init.d/iptables stop
# /etc/rc.d/init.d/ip6tables stop
# chkconfig iptables off
# chkconfig ip6tables off
==== とりあえず、最新に ====
CentOSのパッケージを最新化しとく。
# yum -y update
インストールしてるパッケージが多いと時間かかるかも。\\
コーヒーでも飲んで待ちましょう。
===== CloudStackのインストール =====
では実際にインストールをはじめます。
==== リポジトリの有効化 ====
CloudStackはyum用のリポジトリが用意されているので、設定を行なってyumでインストールできるようにします。
# vi /etc/yum.repo.d/CloudStack.repo
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/rhel/4.0/
enabled=1
gpgcheck=0
==== パッケージのインストール ====
リポジトリを追加したら、yumを使ってパッケージを導入します。\\
導入するパッケージはCloudStackとデータベースをホストするMySQLです。
# yum -y install cloud-client
# yum -y install mysql-server
今回はストレージサーバとしてNFSサーバも兼務するので、もしNFSのパッケージが入っていない場合はそれも入れておく。\\
→[[CentOS-NFSサーバ設定]]\\
この時、**/etc/exports**にはプライマリストレージとセカンダリストレージに当たる分の設定を記述しておく。\\
**プライマリストレージ**は生成されるVMの実体等を配備する領域、**セカンダリストレージ**はVM生成元となるテンプレートや各種ISOファイル等を配備する場所として利用される領域です。
# vi /etc/exports
/export/primary1 *(rw,no_root_squash,async)
/export/secondry1 *(rw,no_root_squash,async)
こんな感じで。
==== NTPのインストール ====
なんかね、必要らしいよ。NTP。\\
入れなくても動いたけどね、NTP。\\
クラウド内のサーバー達の時刻同期に必要だとか云々…
# yum install ntp
==== MySQLデータベースの設定 ====
テスト環境なので、簡単に。\\
まずは設定ファイル**/etc/my.cnf**を編集。[mysqld]セクションに下記を追記。
# vi /etc/my.cnf
[中略]
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
ほいでもって、サービスを起動。もう動いてるなら再起動。
# service mysqld stop
# service mysqld start
で、MySQLのコンソールへ。\\
MySQLのrootユーザーのパスワードを設定します
# mysql -u root
mysql> SET PASSWORD = PASSWORD('password');
mysql> exit
CloudStack側も設定
# cloud-setup-databases cloud:password@localhost --deploy-as=root:password
==== 管理サーバの設定を実行 ====
MySQLの設定が終わったので、管理サーバの設定を行う。\\
専用コマンドを実行。
# cloud-setup-management
次に、システムテンプレート?なる物のダウンロードを行うらしい。\\
仮想ホストの種別に合わせてダウンロードする。\\
* **XenServerの場合**:
# /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondry1
-u http://download.cloud.com/templates/acton/acton-systemvm-02062012.vhd.bz2 -h xenserver -F
* **vSphereの場合**:
# /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondry1
-u http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova -h vmware -F
* **KVMの場合**:
# /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondry1
-u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -F
※1行で書いてね!!><\\
NFSサーバが別サーバに構築されている場合は、あらかじめ**mount**コマンドで任意の場所にマウントしておき、上のコマンド中の**-m**オプションの指定をマウントポイントに書き換えて実行する。\\
===== Webコンソールにアクセスしてみる =====
ここまででWebコンソールの表示に必要な設定が終わったはず。。。はず。\\
なので、実際にアクセスしてみる。\\
ブラウザでアクセスしてみよう。
http://管理サーバIPアドレス:8080/client
初期設定ではIDとパスワードが**admin**と**password**。\\
ログイン後、「基本インストールを続行する」ボタンをクリックして、画面指示に従って設定してみましょう。\\
やればできる!( ー`дー´)キリッ\\
適当ですまん…すまん…\\
作業やったのが一週間くらい前で、まともなメモが残ってないのであーる。\\
仕方が無い。。。よね?(;´Д`)