Currently I wrote the missing resource agents in OpenStack. All the 'nova' RAs mainly re-use the structure of the resource agent written by Martin Gerhard Loschwitz from Hastexo. http://goo.gl/whLpr
Do the following actions:
$ sudo mkdir /usr/lib/ocf/resource.d/openstack
$ cd /usr/lib/ocf/resource.d/openstack
$ sudo wget https://raw.github.com/leseb/OpenStack-ra/master/nova-api
$ sudo chmod +x nova-api
And so on for every resource agent. For more information about each ra (here example for nova-scheduler):
$ sudo crm ra info ocf:openstack:nova-scheduler
The ra checks if the pid exists and also verifies if the nova-api listening ports are opened.
Usage:
primitive p_nova_api ocf:openstack:nova-api \
params config="/etc/nova/nova.conf" \
op monitor interval="5s" timeout="5s"
The ra checks if the pid exists and also verifies if the connection to the AMQP server is properly established. Thus the ra is also compatible with Zero-MQ but in this case only checks the connection to the database.
Usage:
primitive p_scheduler ocf:openstack:nova-scheduler \
params config="/etc/nova/nova.conf" amqp_server_port="5765" database_server_port="3307" \
op monitor interval="30s" timeout="30s"
If you use zero-MQ:
primitive p_scheduler ocf:openstack:nova-scheduler \
params config="/etc/nova/nova.conf" zeromq="true" \
op monitor interval="30s" timeout="30s"
Same checks as nova-scheduler
Same checks as nova-scheduler
The ra checks if the pid exists and also verifies if the vnc service is listenning on his port. The ra is also compatible with xvpvnc, simply change the listenning port with the console_port parameters.
primitive p_vnc ocf:openstack:nova-vnc \
params config="/etc/nova/nova.conf" console_port="5900" \
op monitor interval="30s" timeout="30s"