OpenNebula?において、実際にゲストOSを動作させるためのノードです。
クラスタノードとして動作させるためには、仮想化技術に対応している必要になります。
仮想化技術としてはKVM,xen,VMWareが使用可能です。
また、sshdが動作している必要があります。
Ubuntuでは、クラスタノード用のパッケージが提供されています。
# sudo apt-get install opennebula-node
インストールすると、OpenNebula?用のアカウントなどが設定されます。
ゲストOSをネットワークに接続させるため、ブリッジの設定を行う必要があります。 Ubuntuの場合は/etc/network/interfacesを編集します。 以下は、設定例です。
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet manual auto br0 iface br0 inet dhcp bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off
クラスタノードとして使用するためには、フロントエンドノードへ登録する必要があります。
KVMを使用するクラスタノードを登録する場合は、フロントエンドノードで下記のコマンドを実行します。
node0の部分には、クラスタノードのホスト名を指定します。
この名前を元に通信を行うので、フロントエンドノードが解決できる名前を指定する必要があります。
# onehost add node0 im_kvm vmm_kvm tm_ssh Success! Note: 'oneadmin' on this host needs to be able to ssh to oneadmin@node0, so on this host, run: sudo -u oneadmin ssh node0 and verify the host's authenticity. On node0, run this: sudo apt-get install opennebula-node sudo tee /var/lib/one/.ssh/authorized_keys << EOT ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAu3TnQR5nmQNZLWjKCBIH2VcwkopsqknN3mET6PeeWJMcGFEj4QEq 8PHlmZgebEq99O5U2QwZxELTHb5PANaDU3sh7tIrvDWOKQADnBmonlPY+gkQcca+fqnqpASeMzkHY2Xp sihKwRTgWYdOMhyb7GUCDJGSpAwXL+r2LZLyb2IvsxfgLZmpHnXSJrlx7tjFeclhXHQ06KHNsOmuJ5Es us/rEJ+fTuMuAvlvDy14B7FimffVwhI9GKIHlP8gNd77skTFrSBQ9VJSWrcW/lgcr08eLGP4k6VEQrAA zO2UWegT/CtCahtu8zJRITCdO2RhbJessve3AKDNiSlomBswIQ== oneadmin@frontend EOT
登録後に出力されたコマンドは、後で順に実行する必要があるのでコピーしておきます。
まずはフロントエンドノードからクラスタノードへsshでログインします。 oneadminユーザとしてログインするのがポイントです。
# sudo -u oneadmin ssh node0 The authenticity of host 'node0 (x.x.x.x)' can't be established. RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx. Are you sure you want to continue connecting (yes/no)?
sshでは、初めて接続するホストに対しては上記のようなメッセージが出てきます。 ここではyesと入力して登録します。
ログインしたクラスタノード上で、出力の後半部分のteeコマンドを貼りつけます。
# sudo tee /var/lib/one/.ssh/authorized_keys << EOT ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAu3TnQR5nmQNZLWjKCBIH2VcwkopsqknN3mET6PeeWJMcGFEj4QEq 8PHlmZgebEq99O5U2QwZxELTHb5PANaDU3sh7tIrvDWOKQADnBmonlPY+gkQcca+fqnqpASeMzkHY2Xp sihKwRTgWYdOMhyb7GUCDJGSpAwXL+r2LZLyb2IvsxfgLZmpHnXSJrlx7tjFeclhXHQ06KHNsOmuJ5Es us/rEJ+fTuMuAvlvDy14B7FimffVwhI9GKIHlP8gNd77skTFrSBQ9VJSWrcW/lgcr08eLGP4k6VEQrAA zO2UWegT/CtCahtu8zJRITCdO2RhbJessve3AKDNiSlomBswIQ== oneadmin@frontend EOT
これで、oneadminユーザ用の公開鍵が登録されました。 一度ログアウトし、再度ログインします。
# exit # sudo -u oneadmin ssh node0
パスワードやパスフレーズなしでログインできることが確認できれば完了です。