Description
Everything so far has been done on a single node. Here we add another (virtual) node for running VMs.
Let's assume the machine you've set up above is called 'controller' and the new machine is called 'node'.
Setup
Open the rabbitmq, MySQL and Nova API ports on controller:
$ controller> sudo lokkit -p 3306:tcp $ controller> sudo lokkit -p 5672:tcp $ controller> sudo lokkit -p 9292:tcp $ controller> sudo service libvirtd reload
Configure the network with a physical bridge interface:
$ controller> sudo nova-manage network create 'admin' 10.0.0.0/24 --bridge=br0 --bridge_interface=em1
Make sure that ntp is enabled on both machines:
$> sudo yum install -y ntp $> sudo service ntpd start $> sudo chkconfig ntpd on
We only need to install libvirt and nova on the compute node:
$ node> sudo yum install --enablerepo=updates-testing openstack-nova $ node> sudo service libvirtd start $ node> sudo chkconfig libvirtd on $ node> sudo setenforce 0 $ node> sudo sed -i 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
Configure nova so that node can find the services on controller:
$ node> echo '1.2.3.4 controller' | sudo tee -a /etc/hosts $ node> echo '--rabbit_host=controller' | sudo tee -a /etc/nova/nova.conf $ node> echo '--sql_connection=mysql://nova:nova@controller/nova' | sudo tee -a /etc/nova/nova.conf $ node> echo '--glance_api_servers=controller:9292' | sudo tee -a /etc/nova/nova.conf
Enable the compute service:
$ node> for svc in compute network; do sudo service openstack-nova-$svc start; done $ node> for svc in compute network; do sudo chkconfig openstack-nova-$svc on; done
How to test
Now when the controller launches intances (see: QA:Testcase_launch_an_instance_on_OpenStack), they're started either on the controller or node.
Expected Results
Verify where instances are running with euca-describe-instances