defined by OpenStack at
https://docs.openstack.org/developer/heat/template_guide/hot_spec.html.
-.. code-block:: python
+.. code-block:: yaml
heat_template_version: <date>
availability\_zone. See `Property: availability\_zone`_. for more details on
availability\_zone.
-.. code-block:: python
+.. code-block:: yaml
parameters:
<param name>:
Each resource is defined as a separate block in the resources section
with the following syntax.
-.. code-block:: python
+.. code-block:: yaml
resources:
<resource ID>:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{vm-type}_image_name:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{vm-type}_flavor_name:
*Example: Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{vm-type}_names:
In this example, the {vm-type} has been defined as “lb” for load
balancer.
-.. code-block:: python
+.. code-block:: yaml
parameters:
lb_names:
In this example, the {vm-type} has been defined as “lb” for load
balancer.
-.. code-block:: python
+.. code-block:: yaml
parameters:
lb_name_0:
parameter associated with the property name is a comma\_delimited\_list
for dns and a string for oam.
-.. code-block:: python
+.. code-block:: yaml
parameters:
dns_image_name:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vnf_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vnf_module_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vnf_name:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vf_module_name:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vm_role:
In this example, the {vm-role} is hard coded in the Heat Orchestration
Template.
-.. code-block:: python
+.. code-block:: yaml
resources:
dns_servers:
In this example, the {vm-role} is enumerated in the environment file.
-.. code-block:: python
+.. code-block:: yaml
resources:
dns_servers:
uses the five of the OS::Nova::Server metadata parameter discussed in
this section. The {vm-type} has been defined as lb for load balancer.
-.. code-block:: python
+.. code-block:: yaml
parameters:
lb_name_0
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{network-role}_net_id:
balancer. The Cloud Assigned IP Address uses the OpenStack DHCP service
to assign IP addresses.
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
int_{network-role}_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{network-role}_subnet_id:
balancer. The Cloud Assigned IP Address uses the OpenStack DHCP service
to assign IP addresses.
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
an oam network and the {vm-type} has been defined as lb for load
balancer.
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
int_{network-role}_subnet_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
In this example, the {network-role} has been defined as oam to represent
an oam network and the {vm-type} has been defined as db for database.
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{vm-type}_{network-role}_ip_{index}:
represent an oam network and the {vm-type} has been defined as “db” for
database.
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{network-role} of oam. The {vm-type} has been defined as db for
database.
-.. code-block:: python
+.. code-block:: yaml
parameters:
int_oam_int_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{network-role} of oam. The {vm-type} has been defined as db for
database.
-.. code-block:: python
+.. code-block:: yaml
parameters:
int_oam_int_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
In this example, the {network-role} has been defined as oam to represent
an oam network and the {vm-type} has been defined as db for database.
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
Pair 2: Resources admin\_2\_port\_0 and admin\_3\_port\_0 share a unique
VIP, [admin\_oam\_ips,5]
-.. code-block:: python
+.. code-block:: yaml
parameters:
oam_net_id:
VIPs. The {network-role} has been defined as oam to represent an oam
network and the {vm-type} has been defined as lb for a load balancer VM.
-.. code-block:: python
+.. code-block:: yaml
resources:
lb_0_port_0:
*Example: Property* name *for resource* OS::Neutron::SecurityGroup
-.. code-block:: python
+.. code-block:: yaml
resources:
DNS_SECURITY_GROUP:
*Example: Property name for resource* OS::Cinder::Volume
-.. code-block:: python
+.. code-block:: yaml
resources:
DNS_Cinder_Volume:
*Example: SDN-C Assigned IP Address echoed as*
oam\_management\_v4\_address
-.. code-block:: python
+.. code-block:: yaml
parameters:
admin_oam_ip_0:
*Example: Cloud Assigned IP Address output as*
oam\_management\_v4\_address
-.. code-block:: python
+.. code-block:: yaml
parameters:
. . .
*Example: Parameter declaration*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{network-role}_net_fqdn:
The Contrail resource OS::ContrailV2::VirtualMachineInterface property
virtual\_network\_refs references a contrail network FQDN.
-.. code-block:: python
+.. code-block:: yaml
FW_OAM_VMI:
type: OS::ContrailV2::VirtualMachineInterface
*Example Parameter Definition*
-.. code-block:: python
+.. code-block:: yaml
parameters:
{vm-type}_{network-role}_route_prefixes:
*Example:*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vnf_name:
represent an oam protected network and the {vm-type} has been defined as
fw for firewall.
-.. code-block:: python
+.. code-block:: yaml
CMD_FW_OAM_PROTECTED_RII:
type: OS::ContrailV2::InstanceIp
represent an oam protected network and the {vm-type} has been defined as
“fw” for firewall.
-.. code-block:: python
+.. code-block:: yaml
CMD_FW_SGI_PROTECTED_RII:
type: OS::ContrailV2::InstanceIp
incremental\_volume.yaml
-.. code-block:: python
+.. code-block:: yaml
parameters:
vnf_name:
incremental.yaml
-.. code-block:: python
+.. code-block:: yaml
parameters:
lb_name_0:
incremental.yaml
-.. code-block:: python
+.. code-block:: yaml
Resources:
dns_server_0:
nested.yaml
-.. code-block:: python
+.. code-block:: yaml
dns_oam_0_port:
type: OS::Neutron::Port
For instance, the following is **not** valid Heat for ResourceGroup:
-.. code-block:: python
+.. code-block:: yaml
type: OS::Heat::ResourceGroup
resource_def:
Below is an example of an **acceptable** Heat Syntax for a
ResourceGroup:
-.. code-block:: python
+.. code-block:: yaml
type: OS::Heat::ResourceGroup
resource_def:
environment file. This is required for ONAP to build the TOSCA model for
the VNF.
-.. code-block:: python
+.. code-block:: yaml
type: OS::Heat::ResourceGroup
properties:
resource type: OS::Heat::ResourceGroup, create a comma\_delimited\_list
availability\_zones by using the intrinsic function list\_join.
-.. code-block:: python
+.. code-block:: yaml
<resource name>:
type: OS::Heat::ResourceGroup
In the nested heat
-.. code-block:: python
+.. code-block:: yaml
parameters:
avaialability_zones:
*Example (create keypair with an existing ssh public-key for {vm-type}
of lb (for load balancer)):*
-.. code-block:: python
+.. code-block:: yaml
parameters:
vnf_name:
an oam network and the {vm-type} have been defined as lb for load
balancer and db for database.
-.. code-block:: python
+.. code-block:: yaml
resources:
db_server_group:
an oam network and the {vm-type} has been defined as oam to represent an
oam server.
-.. code-block:: python
+.. code-block:: yaml
resources:
oam_server_01: