rcbops/chef-cookbooks — pull request #62 by rackerjoe (2012-03-22 17:52:38+00:00)
Title: abstract API access for services

DO NOT MERGE THIS PULL REQUEST YET

https://redmine.rackspace.com/issues/5168

This pull request abstracts out the IP assignment of the API endpoints and allows the services to be installed on separate machines. This does not yet use data bags or any type of search and each variable needs to be assigned in the node attributes. Moving this out to search will be done in a later request.

Available Roles:
mysql-master
keystone
nova-api
nova-scheduler
glance
nova-misc-services (volume, horizon)
single-compute

MySQL Node Attributes:
~~~~~~~~~~~~~~~~~~
:mysql => { "server_root_password" => "nova",
"bind_address" => "0.0.0.0",
"allow_remote_root" => true,
"root_network_acl" => "192.168.10.0/255.255.255.0",
:tunable => { "wait_timeout" => "6000" }
}

Entries for other nodes:
~~~~~~~~~~~~~~~~~
chef.json = {
:mysql => { "server_root_password" => "nova" },
:keystone => { "db_ipaddress" => "192.168.10.2",
"api_ipaddress" => "192.168.10.3"},
:nova => { "db_ipaddress" => "192.168.10.2",
"api_ipaddress" => "192.168.10.4",
"scheduler_host" => "192.168.10.5" },
:glance => { "db_ipaddress" => "192.168.10.2",
"api_ipaddress" => "192.168.10.6" },
:rabbit => { "rabbit_ipaddress" => "192.168.10.7" },
}