Configure OpenStack Heat Template

The Oracle Communications Session Delivery Product supports Heat templates when launching virtual machines in OpenStack. Heat is OpenStack's orchestration service, and a Heat Orchestration Template (HOT) is a YAML file that defines the networks, security group, and other resources available for each virtual machine. During orchestration, Heat can simultaneously launch multiple virtual machines that work together as HA pairs.

Before editing the Heat template for the Oracle Communications Session Delivery Product:
  • Check that your OpenStack version is Newton or newer.
  • Confirm your OpenStack administrator has installed the Orchestration service Heat.
  • Install the OpenStack CLI client on a machine that can access your OpenStack services.
  • Set environmental variables using the OpenStack RC file.
  • Verify an OC-SDP image has been uploaded to OpenStack.
  • Gather the following information from your OpenStack administrator:
    Information GUI Path CLI command
    Networks From the Project tab, click Network and then Networks. openstack network list
    Images From the Project tab, click Compute and then Images. openstack image list
    Flavors From the Project tab, click Compute and then Instances. From the Launch Instance window, click Flavor. Click Cancel to close the Launch Instance window. openstack flavor list
    Security Groups From the Project tab, click Network and then Security Groups. openstack security group list

Refer to the Heat Orchestration Template specification at openstack.org.

  1. Extract the compressed Heat Orchestration Template (HOT) file bundled with your software package.
    tar xzf <filename>_HOT.tar.gz
    tar xf <filename>_HOT_newton.tar
    This creates a local directory called newton.
  2. Find the environment file.
    The HA environment file is newton/properties/sdHaParams.yaml. The standalone environment file is newton/properties/sdStandaloneParams.yaml.
  3. Configure the following required parameters:

    Note:

    Some parameters are only found in the HA environments.
    Parameter Description HA only
    primaryName Displays in the OpenStack GUI in the Instance Name column. The value gets passed in the bootparams as the Target Name. No
    secondaryName Displays in the OpenStack GUI in the Instance Name column. The value gets passed in the bootparams as the Target Name. Yes
    highAvailability Enable or disable HA for this template. Always set to true in the HA environment file and false in the standalone environment file. No
    flavor The name or ID of the OpenStack flavor. No
    image The name or ID of the previously uploaded OC-SDP image. No
    availabilityZone Specify the availability zone where the OC-SDP will be placed. No
    securityGroup Specify the security group.

    The default security group drops incoming traffic, so either change the parameters of the default security group or create a new security group that allows incoming traffic.

    No
    affinityPolicy Set the affinity policy for an HA pair.
    Affinity policy controls whether the nodes of an HA pair run on the same or separate physical hosts. Possible values are:
    • anti-affinity (default)—The nodes run on separate physical hosts.
    • affinity—The nodes run on the same physical host.
    • none—no affinity policy is applied
    Yes
    userPass The SHA1 hash of the user passphrase.
    Use the following Linux command to generate the SHA1 hash of the passphrase:
    echo -n "<passphrase>" | sha1sum
    where <passphrase> is the passphrase you want to use.
    No
    adminPass The SHA1 hash of the admin password.
    Use the following Linux command to generate the SHA1 hash of the passphrase:
    echo -n "<passphrase>" | sha1sum
    where <passphrase> is the passphrase you want to use.
    No
    networks Specify the name of the networks to attach to each network interface.

    Media networks must be previously created, but private tenant networks for wancom1 and wancom2 can be automatically created with the "auto" value. Blank entries mean the network interface is not attached to a network.

    No
    portSecurityPolicy Specify the port security policy currently in use for each network. Possible values are:
    • net-on—Ports on this network have Port Security enabled by default
    • net-off—Ports on this network have Port Security disabled by default
    • port-off—Heat requests port security be disabled when creating ports on this network
    The network's port security policy defines the NeutronPort's policy, but privileged users can override the policy for individual ports with the port-off option.
    No
    primary:fixed_ips Specify the IP addresses for the network interfaces on the primary HA pair. The wancom0 address gets passed in the bootparams as IP Address. No
    secondary:fixed_ip Specify the IP addresses for the network interfaces on the secondary HA pair. The wancom0 address gets passed in the bootparams as IP Address. Yes
    virtualIPs Specify the virtual IP addresses for HA media interfaces. Yes
    virtualMACs Specify the virtual MAC addresses for HA media interfaces. Yes

    WARNING:

    Stack creation will fail under the following circumstances:
    • The value for portSecurityPolicy is incorrect.
    • The IP address is not available on the network.
    • The user does not have permission to specify IP addresses on the network.
  4. Use the CLI to create the stack.
    In the arguments, specify:
    • the template file
    • the environment file
    • the name of the stack
    For example:
    openstack stack create -t newton/stacks/SD.yaml -e newton/properties/sdHaProperties.yaml haSBC