CloudStackを使ってみよう[2]
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
Chef SoloでのCloudStack 3.0.4のインストール
本項ではCloudStack 3.0.4をハイパーバイザとしてKVMを選択し、2台のCentOS 6.2 (x86_64)上にChef-Soloを用いてインストールした際の手順を記載します。基本的に Quick Install Guide に準じています。
ハードウェアの準備
本項では2台のマシンでCloudStack環境を構築します。今回は以下の構成のマシンを2台準備しました。
- CPU
- Intel Core i5-3570K
- MEM
- DDR3 SDRAM PC3-12800 4GB x4
- HDD
- 500GB 7200rpm
仮想化支援技術であるIntel VTを備えたCPU、メモリは合計して16GBと多めに搭載します。HDDは本格的にCloudStackを運用するのであれば、より多くの領域が必要となります。
OSのインストール
CentOS 6.2 (x86_64)をMinimal (最小構成)でインストールします。詳細な手順は省略します。以降、1台目を「管理サーバ」、2台目を「ホスト」と呼称します。ホストはコンピューティングノードとも呼ばれます。また、以下のように設定を行います。
| サーバ | IPアドレス | ホスト名 | rootパスワード |
|---|---|---|---|
| 管理サーバ | 192.168.25.110 | cs-manager.example.jp | csmanager1234 |
| ホスト | 192.168.25.111 | cs-host.example.jp | cshost1234 |
OSのインストールが完了したら Installing Chef Client on CentOS に従ってChef Client (Chef Solo)をインストールします。
# rpm -Uvh http://rbel.frameos.org/rbel6
# yum install ruby ruby-devel ruby-ri ruby-rdoc ruby-shadow gcc gcc-c++ automake autoconf make curl dmidecode
# curl -O http://production.cf.rubygems.org/rubygems/rubygems-1.8.10.tgz # tar xfz rubygems-1.8.10.tgz # cd rubygems-1.8.10 # ruby setup.rb --no-format-executable
# gem install chef --no-ri --no-rdoc
Chef Soloの準備
まず、gitをインストールします。
# yum install git
次に cl-lab-k/cloudstack-quickinstall からCookbooksを取得します。
# git clone --recursive -b old https://github.com/cl-lab-k/cloudstack-quickinstall.git
Chef Soloの設定ファイルを準備します。
# cat > chef-solo.rb file_cache_path "/tmp" cookbook_path [ "/root/cloudstack-quickinstall/opscode-cookbooks", "/root/cloudstack-quickinstall/cookbooks" ] #
管理サーバのインストール
cloudstack-manager.jsonファイルの編集を行います。
{
"cloudstack_manager": {
"mgmt_ipaddr": "192.168.25.110",
"mgmt_fqdn": "cs-manager.example.jp",
"mgmt_hostname": "cs-manager",
"host_ipaddr": "192.168.25.111",
"host_fqdn": "cs-host.example.jp",
"host_hostname": "cs-host",
"domainname": "example.jp",
"tarball_base_uri": "http://download.cloud.com/releases/3.0.4/",
"tarball_basename": "CloudStack-3.0.4-1-rhel6.2",
"tarball_sha256": "0b9b3d38bd33bcf607250f0103f119f9dc5eb12848d58410187ecfbbdfba22a6",
"mysql_root_name": "root",
"mysql_root_pass": "myroot1234",
"mysql_user_name": "cloud",
"mysql_user_pass": "myuser1234",
"nfs_root_dir": "/export",
"nfs_primary_dir": "primary",
"nfs_secondary_dir": "secondary",
"systemvm_base_uri": "http://download.cloud.com/templates/acton/",
"systemvm_filename": "acton-systemvm-02062012.qcow2.bz2",
"systemvm_sha256": "67dfc81297368ce605449454776a97d69f5c7bf5f90dbfe9cb49046fea3fff8a"
},
"run_list": [
"recipe[selinux::permissive]",
"recipe[cloudstack_manager]"
]
}
赤字で示した箇所を適切に設定してください。
| mgmt_ipaddr | 管理サーバのIPアドレス |
| mgmt_fqdn | 管理サーバのFQDN |
| mgmt_hostname | 管理サーバのホスト名 |
| host_ipaddr | ホストのIPアドレス |
| host_fqdn | ホストのFQDN |
| host_hostname | ホストのホスト名 |
| domainname | 管理サーバとホストのドメイン名 |
| mysql_root_pass | MySQLのrootユーザのパスワード |
| mysql_user_pass | MySQLの一般ユーザ(cloud)のパスワード |
| nfs_root_dir | NFSサーバのexportディレクトリ名 |
| nfs_primary_dir | プライマリストレージのディレクトリ名 |
| nfs_secondary_dir | セカンダリストレージのディレクトリ名 |
chef-solo.rbファイルとcloudstack-manager.jsonファイルを指定し、chef-soloを実行します。
# chef-solo -c chef-solo.rb -j cloudstack-quickinstall/cloudstack-manager.json
しばらく時間がかかりますが、問題なければ途中で何も入力をすることなく管理サーバのインストールは完了します。
ホストのインストール
cloudstack-host.jsonファイルの編集を行います。
{
"cloudstack_host": {
"mgmt_ipaddr": "192.168.25.110",
"mgmt_fqdn": "cs-manager.example.jp",
"mgmt_hostname": "cs-manager",
"host_ipaddr": "192.168.25.111",
"host_fqdn": "cs-host.example.jp",
"host_hostname": "cs-host",
"domainname": "example.jp",
"epel_release_uri": "http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/x86_64/",
"epel_release_rpm": "epel-release-6-7.noarch.rpm",
"epel_release_sha256": "d75c1eaa87b672a40e30086012d5ef19807432095fb8dc50a4d813f8fd3123fb",
"tarball_base_uri": "http://download.cloud.com/releases/3.0.4/",
"tarball_basename": "CloudStack-3.0.4-1-rhel6.2",
"tarball_sha256": "0b9b3d38bd33bcf607250f0103f119f9dc5eb12848d58410187ecfbbdfba22a6",
"mysql_root_name": "root",
"mysql_root_pass": "myroot1234",
"mysql_user_name": "cloud",
"mysql_user_pass": "myuser1234",
"nfs_root_dir": "/export",
"nfs_primary_dir": "primary",
"nfs_secondary_dir": "secondary",
"systemvm_base_uri": "http://download.cloud.com/templates/acton/",
"systemvm_filename": "acton-systemvm-02062012.qcow2.bz2",
"systemvm_sha256": "67dfc81297368ce605449454776a97d69f5c7bf5f90dbfe9cb49046fea3fff8a"
},
"run_list": [
"recipe[selinux::permissive]",
"recipe[cloudstack_host]"
]
}
赤字で示した箇所をcloudstack-manager.jsonと値が同じになるように適切に設定してください。
chef-solo.rbファイルとcloudstack-host.jsonファイルを指定し、chef-soloを実行します。
# chef-solo -c chef-solo.rb -j cloudstack-quickinstall/cloudstack-host.json
しばらく時間がかかりますが、問題なければ途中で何も入力をすることなくホストのインストールは完了します。
以降の作業
CloudStackを使ってみよう[1] と同様に作業を行ってください。
また、同梱の cloudstack-2.2-manager.json と cloudstack-2.2-host.json を用いることで、CloudStack 2.2.14 のインストールを行うこともできます。
