Translate

2012年3月28日水曜日

Ubuntu ServerへCloudStack(3.0)をインストールする

前にCloudStack2.1をインストールしたので
CloudStack3.0も簡単かなと思い
試してみた..のだけど
変な所で引っかかって
やっとこさうまくいった。

※4.0はこちら


使ったUbuntu Serverは10.04LTS。

構成は以下の図の通り。




プロクシ環境下で頑張ったのだけど
テンプレート取得のところあたりや
セカンダリストレージができあがったところで
テンプレート取得時のエラーが厄介だったので
Buffalo製家庭用ルータを使用して
プロクシ経由でインターネット接続しない環境で行った。

WZR-HP-G450Hは
WAN側はDHCPで受けてくれるので
インタネットリーチャブルなセグメントへ
つないでおけばよいし、
LAN側は192.168.11.0/24セグメントの
192.168.11.2~65までをDHCP提供しているので
固定IPアドレスとして
192.168.11.100を管理サーバへ
192.168.11.101をホスト(Computing Node)へ割り当て
ポッドIP範囲を192.168.11.100~120、
プライベートネットワーク範囲を192.168.11.121~250として
インストールを行った。


なお管理サーバは
管理コンソール操作用PC上のVMware Playerで
NICを物理ネットワークへ接続するブリッジで
仮想マシンを作って対応した。

以下、ほぼ一挙手一投足を1行にして
記述した操作手順である。

操作用PC上には
VMwarePlayerとUbuntu ServerのISOイメージが
予め用意されているとする。
#DVDにも焼いておく

VMware PlayerがインストールされているPCは
予め
CloudStack-3.0.0-1-ubuntu10.04.tar.gz
をダウンロードして
Apacheをインストールして、HTTP経由で上記ファイルを取得できるように
しておくこと。
以下説明内では http://*****/CloudStack-3.0.0-1-ubuntu10.04.tar.gz と
表現しているので、適当に修正して下さい


1. Management Server インストール
1.1 VMware Player 仮想マシン構築
※管理コンソール操作用PCにて作業
  • VMware Player起動
  • 新規仮想マシンの作成
  • 後でOSをインストール
  • Linux
  • Ubuntu 64ビット
  • Cloud Stack 3.0 Management Server
  • 場所は適当
  • 次へ
  • 20.0GB
  • 仮想ディスクを複数のファイルに分割
  • 次へ
  • ハードウェアをカスタマイズ
  • 新規CD/DVD(IDE)
  • ISOイメージファイルを使用する
  • ファイルパスを指定
  • ネットワークアダプタ
  • ブリッジ:物理ネットワークに直接接続
  • 閉じる
  • 仮想マシンの再生

1.2 OSインストール
  • 日本語
  • ~Ubuntu Serverをインストール
  • IBM ThinkPad R60/T60/R61/T61
  • Japan
  • Japan - Kana
  • Alt + Shift
  • 戻る
  • ネットワークを手動で設定
  • 192.168.11.100
  • 255.255.255.0
  • 192.168.11.1
  • 8.8.8.8
  • tomoko
  • 空欄で次へ
  • ガイド - ディスク全体を使い LVM をセットアップする
  • SCSI (0,0,0) (sda) - 21.5 GB VMware, VMware Virtual S
  • はい
  • 21.2 GB
  • はい
  • Cloud Administrator
  • cloud
  • password
  • password
  • はい
  • いいえ
  • 空欄で次へ
  • 自動的にセキュリティアップデートを更新する
  • 続ける
  • はい
※VMware Playerのメニュー操作
  • 仮想マシン>仮想マシンの設定
  • CD/DVD(IDE)
  • 物理ドライブを使用する
  • OK
※仮想マシン上に戻る
  • 続ける
  • cloud
  • password
  • sudo -s
  • export LANG=C
  • aptitude update && aptitude -y upgrade
  • aptitude -y install gcc binutils cpp make psmisc
  • cd /tmp
  • ツールのインストール(VMware Player下の方にボタンが表示されている)
  • mount /dev/cdrom /mnt
  • tar xvfz /mnt/VMwareTools-8.8.2-590212.tar.gz
  • cd vmare-tools-distrib
  • ./vmare-install.pl
  • Enterキー×13
  • no
  • Enterキー×8
※VMware Player下段のツール導入メッセージが消える
  • cd
  • vi /etc/sysctl.conf
(最終行に1行追加)
net.ipv6.conf.all.disable_ipv6 = 1
  • sysctl -p
  • aptitude -y install sysv-rc-conf nfs-common ssh
  • vi /etc/hosts
(以下の1行を追加)
160.14.101.101 fortuneteller

1.3 CloudStack管理サーバインストール
  • cd
  • wget http://*****/CloudStack-3.0.0-1-ubuntu10.04.tar.gz
  • tar xvfz CloudStack-3.0.0-1-ubuntu10.04.tar.gz
  • cd CloudStack-3.0.0-1-ubuntu10.04
  • ./install.sh
  • M
  • Y
  • Yes
  • ./install.sh
  • D ← Install the database server
  • Y
  • password
  • password
  • cloud-setup-databases cloud:password@localhost --deploy-as=root:password
  • cloud-setup-management
※まだ管理サーバインストール完了していないが
セカンダリストレージが出来るまで一旦ここまでで保留する


2. ホストのインストール
2.1 OSインストール
※ホスト用PCにDVDを差し起動
  • 日本語
  • ~Ubuntu Serverをインストール
  • Happy Hacking Keynboard
  • Japan
  • Japan - Kana
  • Alt + Shift
  • 戻る
  • ネットワークを手動で設定
  • 192.168.11.101
  • 255.255.255.0
  • 192.168.11.1
  • 8.8.8.8
  • fortuneteller
  • 空欄で次へ
  • ガイド - ディスク全体を使い LVM をセットアップする
  • SCSI (0,0,0) (sda) - 500.1 GB ATA Hitachi HDS72105
  • はい ←前にOSが入っていた場合
  • はい
  • 499.8 GB
  • はい
  • Host Administrator
  • host
  • password
  • password
  • はい
  • いいえ
  • 空欄で次へ
  • 自動的にセキュリティアップデートを更新する
  • 続ける
  • はい
※DVD取り出し
  • 続ける
  • host
  • password
  • sudo -s
  • export LANG=C
  • aptitude update && aptitude -y upgrade
  • aptitude -y install ssh sysv-rc-conf nfs-kernel-server
  • vi /etc/sysctl.conf
(最終行に1行追加)
net.ipv6.conf.all.disable_ipv6 = 1
  • sysctl -p
  • mkdir -p /export/primary
  • mkdir -p /export/secondary
  • vi /etc/exports
(以下の1行を追加)
/export *(rw,async,no_root_squash,no_subtree_check)
  • exportfs -a
  • service nfs-kernel-server restart
  • vi /etc/hosts
(以下の1行を追加)
192.168.11.100 tomoko
  • vi /etc/modprobe.d/nfs_lockd.conf
(新規作成以下の1行追加)
options lockd nlm_udpport=32769 nlm_tcpport=32803
  • vi /etc/default/nfs-kernel-server
(修正前)
RPCMOUNTDOPTS=--manage-gids
(修正後)
RCPMOUNTDOPTS="--port 892"
  • vi /etc/default/nfs-common
(修正前)
STATDOPTS=
(修正後)
STATDOPTS="--port 662 --outgoing-port 2020"
  • reboot
※再起動
  • host
  • password
  • sudo su -
  • password
  • export LANG=C
  • rpcinfo -p
※portmap,status,nfsのport番号をメモ
  • ufw allow 111 ←portmapのポート番号
  • ufw allow 662 ←statusのポート番号
  • ufw allow 32769/udp
  • ufw allow 32803/tcp
  • ufw allow 2049/tcp ←nfsのポート番号
  • ufw allow 892
  • aptitude -y install kvm qemu-kvm libvirt-bin virtinst bridge-utils
  • vi /etc/libvirt/qemu.conf
(修正前)
# vnc_listen = "0.0.0.0"
(修正後)
vnc_listen = "0.0.0.0"
  • reboot
※再起動
  • cloud
  • password
  • sudo -s
  • export LANG=C
  • passwd root
※rootにパスワードを設定する
  • password
  • password
  • cd
  • wget http://*******/CloudStack-3.0.0-1-ubuntu10.04.tar.gz
  • tar xvfz CloudStack-3.0.0-1-ubuntu10.04.tar.gz
※CloudStackエージェントのインストールの前に先にセカンダリストレージ上
にテンプレートを落とす作業を行う。


3. Management Server インストール(続き)
3.1 テンプレートのダウンロード
  • mount 192.168.11.101:/export/secondary /mnt
  • /usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmpl -m /mnt -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -F
※プロクシ環境下の場合wget同様環境変数http_proxyを設定する
  • umount /mnt
  • service cloud-management restart
  • tail -f /var/log/cloud/management/management-server.log
※上記は必須ではないが、以降のインストール中のエラーを目視チェックするため

3.2 管理コンソールのセットアップ
※管理コンソール操作用PCでブラウザ起動
  • http://192.168.11.100:8080/client を開く
  • admin
  • password
  • ドメインは空欄
  • Log On
  • 基本インストールを続行する
  • password
  • password
  • 保存して続行
  • OK
  • test_zone
  • 8.8.8.8
  • 8.8.4.4
  • 8.8.8.8
  • 8.8.4.4
  • 続行
  • OK
  • test_pod
  • 192.168.11.1
  • 255.255.255.0
  • 192.168.11.100 - 192.168.11.120
  • 続行
  • 160.14.101.254
  • 255.255.255.0
  • 192.168.11.121 - 192.168.11.250
  • 続行
  • OK
  • KVM
  • test_cluster
  • 続行
  • OK
  • 192.168.11.101
  • root
  • password
  • 続行
  • OK
  • test_prime
  • NFS
  • 192.168.11.101
  • /export/primary
  • 続行
  • OK
  • 192.168.11.101
  • /export/secondary
  • 続行

3.3 ホストへAgentをインストールする
※ホストをインストールするPCへもどる(rootでログオンした状態)
  • cd
  • cd CloudStack-3.0.0-1-ubuntu10.04
  • ./install.sh
※インストーラのプロンプト表示
  • A ← Install the Agent
  • Y
  • Yes

3.4 管理コンソールのセットアップ(続き)
※管理コンソール操作用PCのブラウザへ戻る
  • 起動
※「クラウドを構築しています..」が表示される

3.5 ホストへAgentをインストールする(続き)
※ホストをインストールするPCへもどる(rootでログオンした状態)
cloud-setup-agentを管理コンソールで
「ゲストトラフィックを構成しています」が作業中までに完了させる
  • cloud-setup-agent
  • tomoko
  • 1
  • 1
  • 1
  • Enterキー
※ここまで「ゲストトラフィックを構成しています」が作業中までに完了させる
  • service cloud-agent status
※なぜかかならず落ちるが、管理コンソール上で「ホストを追加しています」が
作業中の間に起動していないといけない
このため以下のコマンドを「プライマリストレージを作成しています」が
作業開始になるまで連投する
  • service cloud-agent start (2回目以降は上ボタン→Enterキーで連投)
※「プライマリストレージを作成しています」と出たらやめる
※私同様VMware Player上にManagement Serverを構築している人で、
(例えばテンプレートのダウンロードなどで)処理がなかなか先に進まない場合
もしかしたらアンチウィルスのせいかもしれません。
私はSymantec Endpoint Protectionのネットワーク脅威防止機能
ルータの通信が怪しいと判断し、LAN側IPアドレスからの通信を10分がっつり
止めているためセットアッププロセスが10分後解除されても継続されず先に
進まないままになってしまいました(右下にバルーンでメッセージがちょこっとでて
すぐ消えてしまうので、気づくのが遅かった...)。
セットアップの最後の「起動」ボタンを押す前にネットワーク脅威防止を一時的に
 オフにしたらすんなりセットアップが完了しました。
もし同じ問題にあたった方で私と同じ方法を試そうという方は、
なにぶんセキュリティ機能の停止なので、くれぐれも各自の責任のもとおこなってください。
  • service cloud-agent status
※runningを確認

3.6 管理コンソールのセットアップ(続き2)
※管理コンソール操作用PCのブラウザへ戻る
※成功すると「クラウドがセットアップされました」と表示
  • 起動
※本当の管理コンソール画面にかわる

3.7 テンプレートのダウンロード
※ホスト上にもどる
  • reboot
※管理サーバ上に戻る
  • reboot
※両方起動したら管理コンソール操作用PCに戻り
  • 表示中の管理コンソールタブを閉じる
  • http://192.168.11.100:8080/clientを開く(開き直す)
  • admin
  • password
  • ドメインは空欄
  • 日本語
  • LogOn
※管理コンソール画面が表示される
  • テンプレート
  • 名前欄のCent OS5.5(64-bit) no GUI(KVM)をクリック
  • 状態欄が「Download Complete」になるまで更新ボタンを押す
※結構かかる


4. 動作テスト(インスタンス作成)
  • インスタンス
  • +インスタンスの追加
  • test_zone
  • テンプレート
  • 次へ
  • おすすめ「CentOS 5.5(64-bit) no GUI (KVM)」
  • 次へ
  • Small Instance
  • 次へ
  • Small
  • 次へ
  • 次へ
  • 名前(オプション):test_inst
  • グループへの追加(オプション)空欄
  • VMの起動
※しばらくすると画面上部の通知の数字が上がる
クリックしてCleated VMしていることを確認
  • インスタンス
  • 表示名test_instをクリック
  • 詳細の「_>」ボタンを押す
※コンソールが表示されることを確認する


以上


結局cloud-agentインスタンスが
管理コンソールのセットアップ中に動いていないと
失敗してしまうようなので
うまくタイミングを合わせて起動させておく必要があるようだ。


ひょっとして上記方法でなくもっとスマートな方法があれば
ぜひコメント欄にて教えて下さい。


参考リンク:
CloudStack3.0.0QuickInstallGuide(日本語)
cloud.comが提供している英語版ガイドの日本語訳。
まず最初にこれを読んでください。
RHEL中心でUbuntuの記述がない、
こまかいところが色々省略されているなどで
初心者はこれだけでは理解出来ないかも。

CloudStack3.0.0AdminGuide(日本語)
こちらはインストール後に
ゾーン、ポッドや難解なネットワークオファリングなど
の概要説明があります。
ネットワークあたりは難しい。
パブリックネットワークとかゲストネットワークとか
迷彩がかっていてインフラ素人にはわかりにくい部分もあります。
ただゾーン、ポッド、クラスタの考え方と
基本、拡張ネットワークの違いくらいはこれを
読んで知っておくべきとおもいます。
LDAP連携の話も"簡単に"書かれてますね。
まだ試してないけど..

 cloud.comのガイドでは不足だったので、
以下のブログやWikiを参考にしました。

yamasaki0's diaryCloudStack 3.0 のインストール その1
ここをベースにセットアップしました。
技術力がないので、
途中から端折られているのでそこを埋めるのが大変だった


CloudStack/インストール方法
ここは2.1をインストールする場合に役立つページ。

2 件のコメント:

Unknown さんのコメント...

「yamasaki0's diaryCloudStack 3.0 のインストール その1」の者です。
説明不足ですみませんでした。 端折られていて困った場所などを教えて頂けますと助かります。
前回のCloudStack2.1の投稿を参考にさせてもらいました。とても参考になる情報ありがとうございました。

ton さんのコメント...

これは参考にさせていただいた方から..恐縮です。
EucalyptusやOpenStackかなにかで
経験しておけばよかったのですが
なにぶん不勉強で申し訳ありません。

不明点などがありましたら
コメントにて質問させて頂きます。
ありがとうございました。

o1-previewにナップサック問題を解かせてみた

Azure環境上にあるo1-previewを使って、以下のナップサック問題を解かせてみました。   ナップサック問題とは、ナップサックにものを入れるときどれを何個入れればいいかを計算する問題です。数学では数理最適化手法を使う際の例でよく出てきます。 Azure OpenAI Se...