* ベースOS
Ubuntu 9.10 Server (X86_64)
32bit 版でも問題ないかも知れませんが、サイトを見ると成功事例がX86_64
* 構成
コントローラ・ノードを別々のPCで構築。(core2-duo)
ノードはIntel-VT対応CPUのマシンを使用。(core2-duo)
推奨は
Intel VT または AMD-V 対応のPC x 2台
# BIOSでVirtualzationが無効になっている場合があるので、有効にしておきましょう。
* 手順
1. コントローラマシンのOSクリアインストール
コントローラマシンにUbuntu 9.10 Serverをクリアインストール。
クラウドのコントローラとしてインストールし、以下のパラメータを設定。
* IPアドレス : 172.21.20.140/255.255.0.0
* コンピュータ名: front
* クラスタ名 : edps-cluster
* ノードのIP範囲: 172.21.20.250-172.21.20.252
その他は全てOSのデフォルト。
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade でパッケージを最新にする
2. ノードマシンのOSクリアインストール
同じくUbuntu 9.10 Serverをクリアインストール。
* IPアドレス : 172.21.20.249/255.255.0.0
* コンピュータ名: node
クラウドのノードとしてインストールし、パラメータは全てOSのデフォルト。
# 以下の操作は全てコントローラ上で実施。
3. ノードの登録
$ sudo euca_conf --no-rsync --discover-nodes
ノード発見のメッセージが出るので、Y を入力して登録実施。
4. credentialの登録
以下の一連のコマンドで、credentialを登録
$ mkdir ~/.euca
$ chmod 700 ~/.euca
$ cd ~/.euca
$ sudo euca_conf --get-credentials mycreds.zip
$ unzip mycreds.zip
5. 環境変数読み込み設定
~/.bashrcに次の1行を追記して再ログイン。
[ -r ~/.euca/eucarc ] && . ~/.euca/eucarc
また、
export ARCH=i386
も同時に定義しておく。
6. 仮想マシン用イメージの展開
Eucalyptus公式サイトから落としたeuca-centos-5.3-i386.tar.gz を、
~/images ディレクトリに展開する。
7. KVM版仮想マシンイメージの登録実施(32bit版)
$ euca-bundle-image -i euca-centos-5.3-i386/kvm-kernel/vmlinuz-2.6.28-11-server --kernel true
$ euca-upload-bundle -b centos-kernel-bucket -m /tmp/vmlinuz-2.6.28-11-server.manifest.xml
$ euca-register centos-kernel-bucket/vmlinuz-2.6.28-11-server.manifest.xml
出力された、EKIを登録する。
$ export EKI=eki-********
$ euca-bundle-image -i euca-centos-5.3-i386/kvm-kernel/initrd.img-2.6.28-11-server --ramdisk true
$ euca-upload-bundle -b centos-ramdisk-bucket -m /tmp/initrd.img-2.6.28-11-server.manifest.xml
$ euca-register centos-ramdisk-bucket/initrd.img-2.6.28-11-server.manifest.xml
出力された、ERIを登録する。
$ export ERI=eri-********
$ euca-bundle-image -i euca-centos-5.3-i386/centos.5-3.x86.img --kernel $EKI --ramdisk $ERI
$ euca-upload-bundle -b centos-image-bucket -m /tmp/centos.5-3.x86.img.manifest.xml
$ euca-register centos-image-bucket/centos.5-3.x86.img.manifest.xml
出力された、EMIを登録する。
$ export EMI=emi-********
※ 注記:
上記コマンド(特にEMIイメージの登録時に顕著)実施時に、時々
euca-upload-bundleが失敗し、pythonスクリプトのエラーを吐いて
終了することがあり、これが発生するとイメージは登録できても
起動できないものになってしまう模様です。
全てのコマンドを1つずつ確認し、エラーが出ていないことを確かめ
る必要がありました。
8. キーペア登録
$ euca-add-keypair mykey > mykey.priv
$ chmod 0600 mykey.priv
9. インスタンスのポート設定
以下のコマンドを実行し、エラー無く終了することを確認する。
$ euca-authorize default -P tcp -p 22 -s 0.0.0.0/0
10. インスタンス起動前確認
インスタンス起動前に、以下のコマンド群が全て正常に結果を返すことを確認
して実施すると、あるいは何か動作に変化があるかも知れません。
$ euca-describe-images
$ euca-describe-availability-zones verbose
$ euca-describe-instances
$ euca-authorize default -P tcp -p 22 -s 0.0.0.0/0
11. インスタンス起動
以下のコマンドでインスタンスを起動。
$ euca-run-instances $EMI -k mykey -t c1.medium
以上の手順で起動できることを確認しております。
起動後数分でrunning状態になり、以下のコマンドでsshログインできました。
$ ssh -i ~/.euca/mykey.priv root@$IPADDR
# $IPADDR部分は仮想マシンのIPアドレス
----------------------------------------------------------------------------------
参考画面(Node 側でkvmがロードされていることを確認)
edps@node:~$ lsmod | grep -i kvm
kvm_intel 51528 0
kvm 190552 1 kvm_intel
edps@node:~$
edps@front:~/admin$ euca-describe-images
IMAGE emi-E5B21508 centos-image-bucket/centos.5-3.x86.img.manifest.xml admin available public x86_64 machine
IMAGE eri-F80B18C2 centos-ramdisk-bucket/initrd.img-2.6.28-11-server.manifest.xml admin available public x86_64 ramdisk
IMAGE eki-912C1779 centos-kernel-bucket/vmlinuz-2.6.28-11-server.manifest.xml admin available public x86_64 kernel
edps@front:~/admin$ euca-describe-availability-zones verbose AVAILABILITYZONE edps-cluster 172.21.20.140
AVAILABILITYZONE |- vm types free / max cpu ram disk
AVAILABILITYZONE |- m1.small 0002 / 0002 1 128 2
AVAILABILITYZONE |- c1.medium 0002 / 0002 1 256 5
AVAILABILITYZONE |- m1.large 0001 / 0001 2 512 10
AVAILABILITYZONE |- m1.xlarge 0001 / 0001 2 1024 20
AVAILABILITYZONE |- c1.xlarge 0000 / 0000 4 2048 20
edps@front:~/admin$ euca-authorize default -P tcp -p 22 -s 0.0.0.0/0 edps@front:~/admin$ euca-describe-instances edps@front:~/admin$
edps@front:~/admin$ euca-describe-instances
RESERVATION r-3D6A0682 admin default
INSTANCE i-424E08C2 emi-E5B21508 172.21.20.250 172.19.1.2 running admin 0 c1.medium 2010-01-21T07:23:32.948Z edps-cluster eki-912C1779 eri-F80B18C2
edps@front:~/admin$ euca-describe-instances
RESERVATION r-3D6A0682 admin default
INSTANCE i-424E08C2 emi-E5B21508 172.21.20.250 172.19.1.2 running admin 0 c1.medium 2010-01-21T07:23:32.948Z edps-cluster eki-912C1779 eri-F80B18C2
edps@front:~/admin$ euca-describe-instances
RESERVATION r-3D6A0682 admin default
INSTANCE i-424E08C2 emi-E5B21508 172.21.20.250 172.19.1.2 running admin 0 c1.medium 2010-01-21T07:23:32.948Z edps-cluster eki-912C1779 eri-F80B18C2
edps@front:~/admin$ euca-describe-instances
RESERVATION r-3D6A0682 admin default
INSTANCE i-424E08C2 emi-E5B21508 172.21.20.250 172.19.1.2 running admin 0 c1.medium 2010-01-21T07:23:32.948Z edps-cluster eki-912C1779 eri-F80B18C2
edps@front:~/admin$
edps@front:~/admin$ ssh -i admin.priv root@172.21.20.250
-bash-3.2# uname -a
Linux localhost 2.6.28-11-server #42-Ubuntu SMP Fri Apr 17 02:48:10 UTC 2009 i686 i686 i386 GNU/Linux
-bash-3.2# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/sda1 1008888 608188 349452 64% /
-bash-3.2#
-bash-3.2# ls
bin dev home lost+found mnt proc sbin srv tmp var
boot etc lib media opt root selinux sys usr
-bash-3.2# cd /home
-bash-3.2# ls
-bash-3.2# cd /boot
-bash-3.2# ls
System.map-2.6.18-128.1.6.el5xen symvers-2.6.18-128.1.6.el5xen.gz
config-2.6.18-128.1.6.el5xen vmlinuz-2.6.18-128.1.6.el5xen
grub xen-syms-2.6.18-128.1.6.el5
initrd-2.6.18-128.1.6.el5xen.img xen.gz-2.6.18-128.1.6.el5
message
-bash-3.2#
------------------------------------------------------------------------------
異常時
kvmが動いていない状態
edps@node:~$ sudo modprobe kvm_intel
[sudo] password for edps:
FATAL: Error inserting kvm_intel (/lib/modules/2.6.31-14-server/kernel/arch/x86/kvm/kvm-intel.ko): Operation not supported
edps@node:~$
解決策
機器の変更(Intel VT または AMD-V 対応のPC)
node側が正常に動いていない状態
edps@front-node:~/admin$ euca-authorize default -P tcp -p 22 -s 0.0.0.0/0
Warning: failed to parse error message from AWS:
|
Linux+ASP関連のリンク集
ritsuo@mxy.mesh.ne.jp