This cookbook installs the OpenStack Heat service Heat as part of an OpenStack reference deployment Chef for OpenStack.
Chef 11 or higher required (for Chef environment use).
The following cookbooks are dependencies:
- openstack-common
- openstack-identity
- Configure and start heat-api service
- Configure and start heat-api-cfn service
- Configure and start heat-api-cloudwatch service
- Install the heat client packages
- Installs the heat packages and setup configuration for Heat.
- Setup the heat database and start heat-engine service
- Registers the Heat API endpoint, heat service and user
Attributes for the Heat service are in the ['openstack']['orchestration'] namespace.
openstack['orchestration']['verbose']
- Enables/disables verbose output for heat services.openstack['orchestration']['debug']
- Enables/disables debug output for heat services.openstack['orchestration']['identity_service_chef_role']
- The name of the Chef role that installs the Keystone Service APIopenstack['orchestration']['rabbit_server_chef_role']
- The name of the Chef role that knows about the message queue serveropenstack['orchestration']['user']
- User heat runs asopenstack['orchestration']['group']
- Group heat runs asopenstack['orchestration']['db']['username']
- Username for heat database accessopenstack['orchestration']['api']['adminURL']
- Used when registering heat endpoint with keystoneopenstack['orchestration']['api']['internalURL']
- Used when registering heat endpoint with keystoneopenstack['orchestration']['api']['publicURL']
- Used when registering heat endpoint with keystoneopenstack['orchestration']['service_tenant_name']
- Tenant name used by heat when interacting with keystone - used in the API and registry paste.ini filesopenstack['orchestration']['service_user']
- User name used by heat when interacting with keystone - used in the API and registry paste.ini filesopenstack['orchestration']['service_role']
- User role used by heat when interacting with keystone - used in the API and registry paste.ini filesopenstack['orchestration']['api']['auth']['cache_dir']
- Defaults to/var/cache/heat
. Directory whereauth_token
middleware writes certificates for heatopenstack['orchestration']['syslog']['use']
- Should heat log to syslog?openstack['orchestration']['syslog']['facility']
- Which facility heat should use when logging in python style (for example,LOG_LOCAL1
)openstack['orchestration']['syslog']['config_facility']
- Which facility heat should use when logging in rsyslog style (for example, local1)openstack['orchestration']['rpc_thread_pool_size']
- size of RPC thread poolopenstack['orchestration']['rpc_conn_pool_size']
- size of RPC connection poolopenstack['orchestration']['rpc_response_timeout']
- seconds to wait for a response from call or multicallopenstack['orchestration']['platform']
- hash of platform specific package/service names and optionsopenstack['orchestration']['api']['auth']['version']
- Select v2.0 or v3.0. Default v2.0. The auth API version used to interact with identity service.
openstack['orchestration']['notification_driver']
- driveropenstack['orchestration']['default_notification_level']
- levelopenstack['orchestration']['default_publisher_id']
- publisher idopenstack['orchestration']['list_notifier_drivers']
- list of driversopenstack['orchestration']['notification_topics']
- notifications topics
-
openstack["orchestration"]["mq"]["service_type"]
- Select qpid or rabbitmq. default rabbitmq TODO: move rabbit parameters under openstack["orchestration"]["mq"] -
openstack["orchestration"]["rabbit"]["username"]
- Username for nova rabbit access -
openstack["orchestration"]["rabbit"]["vhost"]
- The rabbit vhost to use -
openstack["orchestration"]["rabbit"]["port"]
- The rabbit port to use -
openstack["orchestration"]["rabbit"]["host"]
- The rabbit host to use (must set whenopenstack["orchestration"]["rabbit"]["ha"]
false). -
openstack["orchestration"]["rabbit"]["ha"]
- Whether or not to use rabbit ha -
openstack["orchestration"]["mq"]["qpid"]["host"]
- The qpid host to use -
openstack["orchestration"]["mq"]["qpid"]["port"]
- The qpid port to use -
openstack["orchestration"]["mq"]["qpid"]["qpid_hosts"]
- Qpid hosts. TODO. use only when ha is specified. -
openstack["orchestration"]["mq"]["qpid"]["username"]
- Username for qpid connection -
openstack["orchestration"]["mq"]["qpid"]["password"]
- Password for qpid connection -
openstack["orchestration"]["mq"]["qpid"]["sasl_mechanisms"]
- Space separated list of SASL mechanisms to use for auth -
openstack["orchestration"]["mq"]["qpid"]["reconnect_timeout"]
- The number of seconds to wait before deciding that a reconnect attempt has failed. -
openstack["orchestration"]["mq"]["qpid"]["reconnect_limit"]
- The limit for the number of times to reconnect before considering the connection to be failed. -
openstack["orchestration"]["mq"]["qpid"]["reconnect_interval_min"]
- Minimum number of seconds between connection attempts. -
openstack["orchestration"]["mq"]["qpid"]["reconnect_interval_max"]
- Maximum number of seconds between connection attempts. -
openstack["orchestration"]["mq"]["qpid"]["reconnect_interval"]
- Equivalent to setting qpid_reconnect_interval_min and qpid_reconnect_interval_max to the same value. -
openstack["orchestration"]["mq"]["qpid"]["heartbeat"]
- Seconds between heartbeat messages sent to ensure that the connection is still alive. -
openstack["orchestration"]["mq"]["qpid"]["protocol"]
- Protocol to use. Default tcp. -
openstack["orchestration"]["mq"]["qpid"]["tcp_nodelay"]
- Disable the Nagle algorithm. default disabled.
The following attributes are defined in attributes/default.rb of the common cookbook, but are documented here due to their relevance:
-
openstack['endpoints']['orchestration-api-bind']['host']
- The IP address to bind the service to -
openstack['endpoints']['orchestration-api-bind']['port']
- The port to bind the service to -
openstack['endpoints']['orchestration-api-bind']['bind_interface']
- The interface name to bind the service to -
openstack['endpoints']['orchestration-api-cfn-bind']['host']
- The IP address to bind the service to -
openstack['endpoints']['orchestration-api-cfn-bind']['port']
- The port to bind the service to -
openstack['endpoints']['orchestration-api-cfn-bind']['bind_interface']
- The interface name to bind the-cfn service to -
openstack['endpoints']['orchestration-api-cloudwatch-bind']['host']
- The IP address to bind the service to -
openstack['endpoints']['orchestration-api-cloudwatch-bind']['port']
- The port to bind the service to -
openstack['endpoints']['orchestration-api-cloudwatch-bind']['bind_interface']
- The interface name to bind the-cloudwatch service to
If the value of the 'bind_interface' attribute is non-nil, then the service will be bound to the first IP address on that interface. If the value of the 'bind_interface' attribute is nil, then the service will be bound to the IP address specifie>
Please refer to the TESTING.md for instructions for testing the cookbook.
Author | Zhao Fang Han ([email protected]) |
Author | Chen Zhiwei ([email protected]) |
Author | Ionut Artarisi ([email protected]) |
Copyright | Copyright (c) 2013-2014, IBM Corp. |
Copyright | Copyright (c) 2014, SUSE Linux, GmbH. |
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.