DevCloud ででででで! CloudStack4.3 でで でで @tadashimishima 2014 で 6 で 12 で
DevCloudではじめる!CloudStack4.3
三島 匡史@tadashimishima2014 年 6 月 12 日
CloudStack4.3
• 2014年 4月 1日にリリースされたバージョン•主な変更• 64bitシステム VM• Hyper-V対応• バーチャルルーターの改善とモニタリングツールの提供• カスタムコンピュートオファリング• サイト間 VPN
•以前の DevCloudでの環境構築のやり方がうまく動かなくなった。。。 ⇒ DevCloud上に環境を手動でセットアップする
DevCloud
•一台の PC上で CloudStack環境を容易に作るための仮想環境• VirtualBoxで利用
•メモリを最低2 GB割り当て• PCのスペック上最低4 GBのメモリは必要• メモリが少ないと仮想マシンが起動中に失敗したり、
CloudStackが起動できない
DevCloudのダウンロード• DevCloudの設定について
https://cwiki.apache.org/confluence/display/CLOUDSTACK/DevCloud
• 4.3向けアプライアンスhttp://people.apache.org/~sebgoa/devcloud2.ova
4.3はこちらを使う
VirtualBoxの起動• VirtualBoxを起動し、仮想アプライアンスのインポートをします
仮想アプライアンスのインポート•ダウンロードした仮想アプライアンスを選択し、インポートする
「アプライアンスを開く」をクリックし、インポートするイメージを選択する 「インポート」をクリックします
Apacheライセンスの確認•ライセンスの確認は「同意する」をクリック
インポートの完了•インポート後、仮想アプライアンスの設定を確認します
仮想マシンが追加されます
ネットワークをクリックアダプタ1はホストオンリーアダプター ※最初のアダプターを指定するアダプタ2は NAT
メモリが少ないとメッセージが表示されますが、2 GB割り当てられれば大丈夫です
仮想マシンへのアクセス•仮想アプライアンスを指定し、「起動」をクリック
•仮想アプライアンスの画面
起動をクリック 起動が表示に変わるのでクリックしてサーバーへアクセスする
○ログイン ユーザー名: root パスワード: password
※Altキー+ F1~ F6までシェル の切り替え可能
ネットワークの確認• PCのネットワークを ipconfigで確認
•仮想マシンのネットワークを ifconfigで確認
Host-Only Networkがある
ipアドレスは 192.168.56.1
ipアドレスは 192.168.56.10
パッケージのインストール• CloudStackのインストールに必要なパッケージをインストールします
# apt-get update# apt-get install sudo
CloudStackをビルドする• gitからレポジトリをクローン(手元に持ってくる )
•タグ (インストールするもの )を選択し、チェックアウト ()する
• CloudStackをビルドする
root@devcloud:~# pwd/rootroot@devcloud:~# git clone https://git-wip-us.apache.org/repos/asf/cloudstack.git
root@devcloud:~# cd cloudstackroot@devcloud:~# git tag -l|lessroot@devcloud:~# git checkout -b version4.3.0 refs/tags/4.3.0
root@devcloud:~# mvn -P developer.systemvm clean install
CloudStackを起動する•データベースをデプロイする
• Javaが利用するメモリの環境変数を設定する
• CloudStackを起動する
root@devcloud:~# export MAVEN_OPTS="-XX:PermSize=256M -XX:MaxPermSize=512M -Xms512m -Xmx1024m" 1行で記述します
root@devcloud:~# mvn -P developer -pl developer,tools/devcloud -Ddeploydb
root@devcloud:~# mvn -pl :cloud-client-ui jetty:run
DevCloudを設定する• devcloud-advanced_internal-mgt.cfgを読み解き設定する
{ "zones": [ { "localstorageenabled": "true", "name": "testzone", "guestcidraddress": "10.1.1.0/24", "dns1": "8.8.8.8", "physical_networks": [ { "broadcastdomainrange": "Zone", "vlan": "3900-4000", "name": "eth0", "traffictypes": [ { "xen": "Pool-wide network associated with eth0", "typ": "Management" },
json形式で書かれた設定ファイルの冒頭
インストール後の最初の画面
ベーシックインストール
初期状態の CloudStackにアクセス
何も無い初期の Cloudstack
何も無いインフラストラクチャ• Zoneを追加するために『 View all』をクリック
ゾーンの追加•『 Add Zone』をクリック
ゾーンのタイプの選択•ゾーンは『 Advanced』を選択し、『 Next』をクリック
Advancedのチェックボックス
ゾーンの設定•ゾーンに関する部分を確認し設定する
"zones": [ { "localstorageenabled": "true", "name": "testzone", "guestcidraddress": "10.1.1.0/24", "dns1": "8.8.8.8",
・・・・・
"internaldns1": "192.168.56.10", ちょっと下に記載
ゾーンの設定•設定ファイルの値を入力します
testzone
8.8.8.8
192.168.56.10
下にスクロール
ゾーンの設定•設定ファイルの値を入力します
(自動で入ります )XenServer
10.1.1.0/24
ネットワークの設定•そのまま「 Next」
ネットワークの設定•ネットワークに関する部分を確認し設定する
"ipranges": [ { "startip": "10.0.3.100", "endip": "10.0.3.199", "netmask": "255.255.255.0", "vlan": "untagged", "gateway": "10.0.3.2" }
ネットワークの設定•設定ファイルの値を入力
10.0.3.2
255.255.255.0
untagged
10.0.3.100 10.0.3.199
ネットワークの設定•入力が反映されてから「 Next」をクリック
Podの設定• Podに関連する部分を確認し、設定する
"pods": [ { "endip": "192.168.56.249", "name": "testpod", "startip": "192.168.56.200", "netmask": "255.255.255.0",
・・・・・
"gateway": "192.168.56.1" ちょっと下に記載
Podの設定•設定ファイルの値を入力します
testpod
192.168.56.1
192.168.56.249
255.255.255.0
192.168.56.200
Podの設定•そのまま「 Next」をクリック
クラスターの設定•クラスターに関する部分を確認し、設定する
"clusters": [ { "clustername": "testcluster", "hypervisor": "XenServer",
Clusterの設定•設定ファイルの値を入力します
testcluster
ホストの設定•ホストに関する部分を確認し、設定する
"hosts": [ { "username": "root", "url": "http://192.168.56.10/", "password": "password" } ],
ホストの設定•設定ファイルの値を入力します
192.168.56.10
root
password
プライマリストレージの確認• NFSのセカンダリストレージしかない
•プライマリストレージの設定を追加
root@devcloud:~# exportfs/opt/storage/secondary <world>root@devcloud:~# cat /etc/exports/opt/storage/secondary *(rw,no_subtree_check,no_root_squash,fsid=0)
root@devcloud:~# vi /etc/exports/opt/storage/secondary *(rw,no_subtree_check,no_root_squash,fsid=0)/opt/storage/primary *(rw,no_subtree_check,no_root_squash,fsid=0)
NFSサーバーの再起動• NFSサービスの再起動
• NFSの確認
root@devcloud:~# /etc/init.d/nfs-kernel-server restart[ ok ] Stopping NFS kernel daemon: mountd nfsd.[ ok ] Unexporting directories for NFS kernel daemon....[ ok ] Exporting directories for NFS kernel daemon....[ ok ] Starting NFS kernel daemon: nfsd mountd^P.
root@devcloud:~# exportfs/opt/storage/secondary <world>/opt/storage/primary <world>
プライマリストレージの設定•設定ファイルには書かれていないので、自力で設定
testprimary
nfs
192.168.56.10
/opt/storage/primary
セカンダリストレージ•セカンダリストレージに関する部分を確認し、設定します
"secondaryStorages": [ { "url": "nfs://192.168.56.10:/opt/storage/secondary" } ]
セカンダリストレージの設定•設定ファイルの値を入力します
NFS
192.168.56.10
/opt/storage/secondary
設定入力の終了•「 Launch Zone」をクリックするとゾーンの作成が始まる
ゾーンの作成の完了•作成完了。エラーがある場合は表示されます。
ダッシュボードの確認•ダッシュボードにリソースメーターが追加
リソースの状態
インフラの確認•ゾーンからホストまで作成されています
本格的に勉強するには•お勧め書籍は「 CloudStack実践ガイド」です
DevCloud で試してみたら、次は実践しましょう♪