さくらの専用サーバとOpenStackで作るプライベートクラウド 8ページ
計算用ノードを追加する
ここまでの手順でOpenStack環境を構築すると、1台のサーバー上ですべてのOpenStack関連コンポーネントが動作している環境となる。しかし、実際にプライベートクラウド環境を構築する場合、管理用のノードと計算用のノードを分ける構成が一般的だ。そこで、続いては計算用ノードを追加する作業について紹介していこう。
計算用ノードでは、nova-computeサービスおよびnova-networkサービスが必要となる。先に説明したとおり、これらをインストールできるようEPELのインストールと、リポジトリの有効化、パッケージのインストールを行っておこう。
# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm ←epelパッケージをインストールする # vi /etc/yum.repos.d/epel.repo ←epelリポジトリの「enbale」パラメータを「1」に変更する # yum install openstack-nova-compute openstack-nova-network nova-computeおよびnova-networkパッケージをインストールする
MySQLやRabbitMQなどのOpenStackの動作に必要なサーバーについては、制御用ノードのものが使われるので計算用ノード側で用意する必要は無い。ただし、libvirtdについては有効にしておく必要がある。
# service messagebus start # service libvertd start # chkconfig messagebus on # chkconfig libvirtd on
また、sudoersファイルに「nova ALL=(ALL) NOPASSWD:ALL *g」を追加しておく。
# visudo : : ## Allow root to run any commands anywhere root ALL=(ALL) ALL nova ALL=(ALL) NOPASSWD:ALL ←この行を追加
設定ファイルについては、nova.confのみの変更が必要だ。nova.confの内容は基本的には制御用ノードで使用しているものと同じ物でOKだが、一部のみ修正する必要がある。具体的には、以下の個所だ。
# NETWORK network_manager=nova.network.manager.FlatDHCPManager force_dhcp_release=False #force_dhcp_release=True dhcpbridge_flagfile=/etc/nova/nova.conf dhcpbridge=/usr/bin/nova-dhcpbridge firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver # Change my_ip to match each host my_ip=192.168.100.23 ←ホストのIPアドレスに設定 public_interface=br100 vlan_interface=eth1 flat_network_bridge=br100 flat_interface=eth1 fixed_range=192.168.200.0/24 # NOVNC CONSOLE novncproxy_base_url=http://133.242.6.157:6080/vnc_auto.html ←制御用ノードのIPアドレスに設定 # Change vncserver_proxyclient_address and vncserver_listen to match each compute host vncserver_proxyclient_address=192.168.100.23 ←ホストのIPアドレスを指定 vncserver_listen=192.168.100.23 ←ホストのIPアドレスを指定
また、サービスが使用するロックファイル用のディレクトリも作成しておく。
# mkdir -p /var/lock/nova # chown nova:root /var/lock/nova/
以上の設定が完了したら、サービスを起動させる。
service openstack-nova-compute start service openstack-nova-network start chkconfig openstack-nova-compute on chkconfig openstack-nova-network on
制御用ノードでnova-manage service listコマンドを実行し、正しくサービスが動作しているか確認してみよう。
# nova-manage service list Binary Host Zone Status State Updated_At nova-scheduler sata nova enabled :-) 2012-09-17 12:43:52 nova-compute sata nova enabled XXX 2012-09-17 12:17:25 nova-cert sata nova enabled :-) 2012-09-17 12:43:47 nova-volume sata nova enabled :-) 2012-09-17 12:43:51 nova-network sata nova enabled :-) 2012-09-17 12:43:54 nova-consoleauth sata nova enabled :-) 2012-09-17 12:43:47 nova-console sata nova enabled :-) 2012-09-17 12:43:54 nova-compute ssd nova enabled :-) 2012-09-17 12:44:01 nova-network ssd nova enabled :-) 2012-09-17 12:43:56
2台以上の計算用ノードを追加する場合も、手順は基本的に同じだ。以上の作業をそれぞれのサーバーに対して繰り返して行けばよい。
さくらの専用サーバで作るプライベートクラウドのメリットとは
今日、サーバーを調達するに当たってはさまざまな選択肢がある。自前でデータセンターを借りてサーバーを設置する、というのはもっとも自由度が高いものの、コストや運用の手間も高い。いっぽうクラウドサービスは柔軟性はあるものの、コストの見積もりが難しく、セキュリティやコンプライアンス関連の問題が起こる可能性もある。今回紹介したような専用サーバーとプライベートクラウドの組み合わせは、柔軟な環境を少ない手間とコストで構築できるという、両者のメリットをうまく組み合わせたソリューションと言える。
さらにプライベートクラウドの大きなメリットとして、同じような構成の仮想マシンを複数立ち上げる場合、一度イメージさえ登録してしまえば簡単な操作だけですぐに仮想マシンを作成できるという点がある。また、サーバーの追加も容易だ。さくらの専用サーバには「最短10分でサーバーを追加できる」という特徴があるが、プライベートクラウド環境ではサービスをインストールして設定するだけで、すぐに追加したサーバーを利用できるようになる。これにより、「サーバーの追加依頼を行ってから1時間以内に追加されたサーバーでサービスを稼働させる」ということも不可能ではない。
近年はさまざまな事業者がクラウドサービスの提供を開始しており、さくらインターネットも「さくらのクラウド」というクラウドサービスを提供している。実際にクラウドサービスの利用を検討しているユーザーも少なくないだろう。ただ、このようなパブリッククラウドサービスだけでなく、専用サーバー+プライベートクラウドという組み合わせも選択肢として検討してみてはいかがだろうか。