Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

9.4. Deploy a Stack Using Orchestration Templates

The Orchestration engine service uses templates (defined as .template files) to launch instances, IPs, volumes, or other types of stacks. The heat utility is a command-line interface that allows you to create, configure, and launch stacks.


The openstack-heat-templates package provides sample templates that you can use to test core Orchestration features. It also contains template-related scripts and conversion tools. To install this package, run the following command:
# yum install -y openstack-heat-templates
Some Orchestration templates launch instances that require access to the openstack-heat-api-cfn service. Such instances must be able to communicate with the openstack-heat-api-cloudwatch service and the openstack-heat-api-cfn service. The IPs and ports used by these services are the values set in the /etc/heat/heat.conf file as heat_metadata_server_url and heat_watch_server_url.
To allow access to these services, you must open the ports used by openstack-heat-api-cloudwatch (8003), openstack-heat-api-cfn (8000), and openstack-api (8004).

Procedure 9.8. Deploying a Stack Using Orchestration Templates

  1. Open the /etc/sysconfig/iptables file in a text editor.
  2. Add the following INPUT rules to allow TCP traffic on ports 8003, 8000, and 8004:
    -A INPUT -i BR -p tcp --dport 8003 -j ACCEPT
    -A INPUT -i BR -p tcp --dport 8000 -j ACCEPT
    -A INPUT -p tcp -m multiport --dports 8004 -j ACCEPT
    Replace BR with the interface of the bridge used by the instances launched from Orchestration templates. Do not include the -i BR parameter in the INPUT rules if you are not using nova-network, or if the Orchestration service and nova-compute are not hosted on the same server.
  3. Save the changes to the /etc/sysconfig/iptables file.
  4. Restart the iptables service for the firewall changes to take effect:
    # systemctl restart iptables.service
  5. Launch an application:
    # heat stack-create STACKNAME \
       --template-file=PATH_TEMPLATE \
    Replace the following values:
    • Replace STACKNAME with the name to assign to the stack. This name will appear when you run the heat stack-list command.
    • Replace PATH_TEMPLATE with the path to your .template file.
    • Replace PARAMETERS with a semicolon-delimited list of stack creation parameters to use. Supported parameters are defined in the template file itself.