* ベース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: |