Install and Configure Openstack Heat on Pike Centos7

Step 1:  Create the Heat user
#             openstack user create --domain default --password service_pass heat

Step 2:Add the admin role to the heat user and service project
#             openstack role add --project service --user heat admin

Step 3:Create the heat and heat-cfn service entities:
#             openstack service create --name heat --description "Orchestration" orchestration

#             openstack service create --name heat-cfn --description "Orchestration"  cloudformation


Step 4:Create the service API endpoints

#             openstack endpoint create --region RegionOne orchestration public http://192.168.1.121:8004/v1/%\(tenant_id\)s

#             openstack endpoint create --region RegionOne orchestration internal http://10.10.100.121:8004/v1/%\(tenant_id\)s

#             openstack endpoint create --region RegionOne orchestration admin http://10.10.100.121:8004/v1/%\(tenant_id\)s

#             openstack endpoint create --region RegionOnecloudformation public http://192.168.1.121:8000/v1

#             openstack endpoint create --region RegionOnecloudformation internal http://10.10.100.121:8000/v1

#             openstack endpoint create --region RegionOnecloudformation admin http://10.10.100.121:8000/v1


Step 5: Create the heat domain that contains projects and users for stacks:
#             openstack domain create --description "Stack projects and users" heat


Step 6: Create the heat_domain_admin user to manage projects and users in the heat domain:
#             openstack user create --domain heat --password service_pass heat_domain_admin


Step 7:Add the admin role to the heat_domain_admin user
#             openstack role add --domain heat --user-domain heat --user heat_domain_admin admin 

Step 8: Create the heat_stack_owner role:
#             openstack role create heat_stack_owner

Step 9:Add the heat_stack_owner role to the demo project
#             openstack role add --project demo --user demo heat_stack_owner
Step 10:Create the heat_stack_user role:
#             openstack role create heat_stack_user

Step 11:Install Heat packages
#             yum install openstack-heat-apiopenstack-heat-api-cfnopenstack-heat-engine
Step 12:Login to database
#             mysql -u root -p

              CREATE DATABASE heat;
              GRANT ALL ON heat.* TO 'heatUser'@'%' IDENTIFIED BY 'heatPass';
              Quit;

Step 13:Edit Heat Configuration Files
#             vim/etc/heat/heat.conf

[DEFAULT]
stack_domain_admin = heat_domain_admin
stack_domain_admin_password = service_pass
stack_user_domain_name = heat
heat_metadata_server_url = http://10.10.100.121:8000
heat_waitcondition_server_url = http://10.10.100.121:8000/v1/waitcondition
transport_url = rabbit://openstack:rabbit@10.10.100.121

[database]
connection = mysql+pymysql://heatUser:heatPass@10.10.100.121/heat

[keystone_authtoken]
auth_uri = http://10.10.100.121:5000
auth_url = http://10.10.100.121:35357
memcached_servers = 10.10.100.121:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = heat
password = service_pass

[trustee]
auth_type = password
auth_url = http://10.10.100.121:35357
username = heat
password = service_pass
user_domain_name = default

[clients_keystone]

[ec2authtoken]


Step 14: Synchronize the heat database

#             su -s /bin/sh -c "heat-manage db_sync" heat

Step 15:Enable the Heat service and configure it to start when the system boots

#             systemctl enable openstack-heat-api.service \
openstack-heat-api-cfn.serviceopenstack-heat-engine.service

Step 16: Start the heat services and configure it to start when the system boots

#             systemctl start openstack-heat-api.service \
openstack-heat-api-cfn.serviceopenstack-heat-engine.service

Step 17: List service components to verify successful launch and registration of each process:
#          openstack orchestration service list