Highly available OpenStack Image APIOpenStack Image Service offers a service for discovering, registering, and retrieving virtual machine images.
To make the OpenStack Image API service highly available in active / passive mode, you must:
Configure OpenStack Image to listen on the VIP address.
Manage OpenStack Image API daemon with the Pacemaker cluster manager.
Configure OpenStack services to use this IP address.
Here is the documentation for installing OpenStack Image API service.Add OpenStack Image API resource to PacemakerFirst of all, you need to download the resource agent to your system:cd /usr/lib/ocf/resource.d/openstack
wget https://raw.github.com/madkiss/openstack-resource-agents/master/ocf/glance-api
chmod a+rx *You can now add the Pacemaker configuration for
OpenStack Image API resource. Connect to the Pacemaker cluster with crm
configure, and add the following cluster resources:primitive p_glance-api ocf:openstack:glance-api \
params config="/etc/glance/glance-api.conf" os_password="secrete" os_username="admin" os_tenant_name="admin" os_auth_url="http://192.168.42.103:5000/v2.0/" \
op monitor interval="30s" timeout="30s"This configuration createsp_glance-api, a resource for manage OpenStack Image API service
crm configure supports batch input, so you may copy and paste the
above into your live pacemaker configuration, and then make changes as
required. For example, you may enter edit p_ip_glance-api from the
crm configure menu and edit the resource to match your preferred
virtual IP address.Once completed, commit your configuration changes by entering commit
from the crm configure menu. Pacemaker will then start the OpenStack Image API
service, and its dependent resources, on one of your nodes.Configure OpenStack Image Service APIEdit /etc/glance/glance-api.conf:# We have to use MySQL connection to store data:
sql_connection=mysql://glance:password@192.168.42.101/glance
# We bind OpenStack Image API to the VIP:
bind_host = 192.168.42.103
# Connect to OpenStack Image Registry service:
registry_host = 192.168.42.103
# We send notifications to High Available RabbitMQ:
notifier_strategy = rabbit
rabbit_host = 192.168.42.102Configure OpenStack services to use high available OpenStack Image APIYour OpenStack services must now point their OpenStack Image API configuration to
the highly available, virtual cluster IP address — rather than an
OpenStack Image API server’s physical IP address as you normally would.For OpenStack Compute, for example, if your OpenStack Image API service IP address is
192.168.42.104 as in the configuration explained here, you would use
the following line in your nova.conf file:glance_api_servers = 192.168.42.103You must also create the OpenStack Image API endpoint with this IP.If you are using both private and public IP addresses, you should create two Virtual IP addresses and define your endpoint like this:keystone endpoint-create --region $KEYSTONE_REGION --service-id $service-id --publicurl 'http://PUBLIC_VIP:9292' --adminurl 'http://192.168.42.103:9292' --internalurl 'http://192.168.42.103:9292'