Resource Template Service/HEAT (RTS)
Cloud resources are made available using a console or automatically via an API, but their use is generally a task reserved for IT experts. This is where a Heat orchestration service like the Resource Template Service (RTS) comes in – it simplifies the provision of cloud resources as well as the design and roll out of cloud landscapes. The main goal is to avoid repetitive configuration steps from scratch for identical deployments like test, production or development, and to have the advantage of having one centralized place to make changes/modifications. For example, RTS templates can be checked in a version control tool of your choice when changes happen.
Heat is the main project in the OpenStack orchestration program. It implements an orchestration engine to launch multiple composite cloud applications/infrastructure resources based on templates in the JSON or YAML format that can be treated like code. You can compile a template file and define a collection of cloud computing resources, dependencies between resources, and resource configurations based on RTS template specifications. The Resource Template Service is free to use, but the used resources may generate costs.



Cloud Trace Service (CTS) can be used to support RTS auditing. It allows you to collect, store, and query cloud resource operation records and use these records for security analysis, compliance auditing, resource tracking, and fault locating.


A stack is a cloud application based on a template. Stack management allows you to create, update, and delete stacks and manage resources, events, and templates in the stack.
Three methods for using RTS
Method | Description |
Management Console | The management console is a web-based, visualized user interface, which is helpful for beginners looking to learn. |
Heat Client | The Heat Client is a subproject of OpenStack Client, functioning as a command line client targeted for Heat. You can use this client to access cloud services by running commands. |
API | The API (Application Programming Interface) management mode is based on HTTPS requests. If you need to integrate RTS into a third-party system for secondary development, use APIs to access the RTS. |
Supported resources in RTS
Please visit the Help Center to get more detailed information about each reference listed on this table.
Resource Type | Description | RTS Support | Heat Support | Dependent Service |
OS::Cinder::Volume | Resource for providing Cinder volumes | Yes | Yes | |
OS::Cinder:: VolumeAttachment | Resource for associating volumes with instances | Yes | Yes | |
OS::Heat:: | Auto Scaling (AS) group that can scale any resources | Yes | Yes | RTS |
OS::Heat:: | Configuration resource for representing cloud-init cloud-config | Yes | Yes | RTS |
OS::Heat:: | Resource that assembles a collection of software configurations as a multi-part mime | Yes | Yes | RTS |
OS::Heat:: | Resource for generating a random string | Yes | Yes | RTS |
OS::Heat:: | Creating one or more identically configured nested resources | Yes | Yes | RTS |
OS::Heat:: | Resource for creating OS::Heat::AutoScalingGroup | Yes | Yes | RTS |
OS::Heat:: | Resource for describing and storing a software component | Yes | Yes | RTS |
OS::Heat:: | Resource for describing and storing a software configuration | Yes | Yes | RTS |
OS::Heat:: SoftwareDeployment | Resource for describing and storing a software deployment | Yes | Yes | RTS |
OS::Heat:: | Resource that has the same logic with OS::Heat::SoftwareConfig | Yes | Yes | RTS |
OS::Heat:: | Resource for handling signals received by WaitConditionHandle | Yes | Yes | RTS |
OS::Heat:: WaitConditionHandle | Resource for creating instance signals | Yes | Yes | RTS |
OS::Neutron:: | Resource for creating a floating IP address for Neutron | Yes | Yes | |
OS::Neutron:: FloatingIPAssociation | Resource for associating floating IP addresses and ports | Yes | Yes | |
OS::Neutron::Net | Resource for creating Neutron networks | Yes | Yes | |
OS::Neutron::Port | Resource for creating Neutron network ports | Yes | Yes | |
OS::Neutron::Router | Resource for implementing Neutron routers | Yes | Yes | |
OS::Neutron:: RouterInterface | Resource for creating Neutron router interfaces | Yes | Yes | |
OS::Neutron:: | Resource for creating Neutron security groups | Yes | Yes | |
OS::Neutron::Subnet | Resource for creating Neutron subnets | Yes | Yes | |
OS::Nova:: | Resource for creating Nova key pairs | Yes | Yes | |
OS::Nova::Server | Resource for creating Nova instances | Yes | Yes | |
OS::Nova:: | Resource for creating a Nova server group | Yes | Yes | |
OSE::AS:: | Resource for creating an AS configuration | Yes | No | |
OSE::AS:: | Resource for creating an AS group | Yes | No | |
OSE::AS:: | Resource for creating an AS policy | Yes | No | |
OSE::CES::Alarm | Resource for creating a Cloud Eye alarm | Yes | No | |
OSE::ELB:: | Resource for creating load balancers | Yes | No | |
OSE::ELB:: | Resource for creating classic load balancer listeners | Yes | No | |
OSE::ELB:: | Resource for creating health checks for classic load balancers | Yes | No | |
OSE::ELB::Member | Resource for creating backend servers for classic load balancers | Yes | No | |
OSE::ELB::Certificate | Resource for creating certificates for classic load balancers | Yes | No | |
OS::Neutron::LBaaS:: HealthMonitor | Resource for handling enhanced load balancer listeners | Yes | No | |
OS::Neutron::LBaaS:: Listener | Resource for creating enhanced load balancer listeners | Yes | No | |
OS::Neutron::LBaaS:: LoadBalancer | Resource for creating enhanced load balancers | Yes | No | |
OS::Neutron::LBaaS::Pool | Resource for creating backend server groups for enhanced load balancers | Yes | No | |
OS::Neutron::LBaaS:: PoolMember | Resource for creating backend servers for enhanced load balancers | Yes | No | |
OSE::RDS::Instance | Resource for creating an RDS DB instance | Yes | No | |
OSE::VPC::Vpc | Resource for creating a VPC | Yes | No | |
OSE::VPC::Subnet | Resource for creating a VPC subnet | Yes | No | |
OSE::SFS::Share | Resource for creating a file share | Yes | No | |
OSE::SFS:: ShareAccessRule | Resource for creating rules for accessing file shares | Yes | No |

Creating an ECS and binding an EIP to the ECS
heat_template_version: 2014-10-16
description: Create an EIP and bind it to ECS.
resources:
server:
type: OS::Nova::Server
properties:
image: Image Name or ID
flavor: Flavor Name
key_name: Key Pair
networks:
- port: { get_resource: server_port }
availability_zone: AZ Name
server_port:
type: OS::Neutron::Port
properties:
network: Network Name or ID
floating_ip:
type: OS::Neutron::FloatingIP
depends_on: server
properties:
floating_network: admin_external_net
port_id: { get_resource: server_port }
outputs:
floating_ip:
description: The floating ip address of the server.
value: { get_attr: [floating_ip, floating_ip_address] }
Creating a load balancer
heat_template_version: 2014-10-16
description: Create an ELB instance.
resources:
elb_loadbalancer:
type: OSE::ELB::LoadBalancer
properties:
name: loadbalancer
vpc_id: VPC ID
type: External
bandwidth: 300
admin_state_up: true
elb_listener:
type: OSE::ELB::Listener
properties:
name: elb_listener
loadbalancer_id: { get_resource: elb_loadbalancer }
protocol: HTTP
port: 8080
backend_protocol: HTTP
backend_port: 8080
lb_algorithm: leastconn
sticky_session_type: insert
elb_healthcheck:
type: OSE::ELB::HealthCheck
properties:
listener_id: {get_resource: elb_listener}
healthcheck_protocol: HTTP
healthcheck_timeout: 2
healthcheck_threshold: 3
healthcheck_interval: 5
healthy_threshold: 3
healthcheck_connect_port: 8080
healthcheck_uri:/
elb_member:
type: OSE::ELB::Member
properties:
listener_id:{get_resource: elb_listener}
members:
- server_id:{ get_resource: nova_server1 }
address: { get_attr: [nova_server1, first_address] }
server_port:
type: OS::Neutron::Port
properties:
network: Network Name or ID
nova_server1:
type: OS::Nova::Server
properties:
name: ECS Name
image: Image Name or ID
flavor: Flavor Name
networks:
- port: { get_resource: server_port }
availability_zone: AZ Name
Creating network resources
heat_template_version: 2014-10-16
description: Create a VPC instance.
resources:
vpc_network:
type: OS::Neutron::Net
properties:
name: network
vpc_subnet:
type: OS::Neutron::Subnet
depends_on: vpc_router
properties:
name: subnet
network_id: { get_resource: vpc_network }
cidr: CIDR
dns_nameservers:
- DNS server
vpc_router:
type: OS::Neutron::Router
properties:
name: router
external_gateway_info:
network: Fip_pool
vpc_router-interface:
type: OS::Neutron::RouterInterface
properties:
router_id: { get_resource: vpc_router }
subnet: { get_resource: vpc_subnet }

Pricing overview

Documentation


Profiteer van ons adviesaanbod!
* Voucher is inwisselbaar tot 31.12.2023. Neem contact met ons op voor het bedrag van de voucher bij de boeking. Het kortingsvolume is alleen geldig voor klanten met een factuuradres in Duitsland en vervalt 2 maanden na het afsluiten van het contract. Het tegoed wordt verrekend met de geldige catalogusprijzen volgens de servicebeschrijving. Een uitbetaling is uitgesloten.