Bootstrap parameters are provided to the VM when the VM is created. They are used by the bootstrap process to configure various settings in the VM’s operating system.
On VMware vSphere, the bootstrap parameters are provided as vApp parameters. On OpenStack, the bootstrap parameters are provided as userdata in YAML format.
Configuration of bootstrap parameters is handled automatically by the SIMPL VM. This page is only relevant if you are deploying VMs manually or using an orchestrator other than the SIMPL VM, in consultation with your Metaswitch Customer Care Representative.
List of bootstrap parameters
Property | Description | Format and Example |
---|---|---|
|
Required. The hostname of the server. |
A string consisting of letters A-Z, a-z, digits 0-9, and hyphens (-). Maximum length is 27 characters. Example: |
|
Required. List of DNS servers. |
For VMware vSphere, a comma-separated list of IPv4 addresses. For OpenStack, a list of IPv4 addresses. Example: |
|
Required. List of NTP servers. |
For VMware vSphere, a comma-separated list of IPv4 addresses or FQDNs. For OpenStack, a list of IPv4 addresses or FQDNs. Example: |
|
Optional. The system time zone in POSIX format. Defaults to UTC. |
Example: |
|
Required. The list of signaling addresses of Config Data Store (CDS) servers which will provide configuration for the cluster. CDS is provided by the TSN nodes. Refer to the Configuration section of the documentation for more information. |
For VMware vSphere, a comma-separated list of IPv4 addresses. For OpenStack, a list of IPv4 addresses. Example: |
|
Required. This is only for TSN VMs. The IP address of the leader node of the CDS cluster. This should only be set in the "node heal" case, not when doing the initial deployment of a cluster. |
A single IPv4 address. Example: |
|
Required. The username for Cassandra authentication for CDS and the Ramdisk Cassandra on TSN nodes. This should only be set if Cassandra authentication is desired. |
a string. Example: |
|
Required. The password for Cassandra authentication for CDS and the Ramdisk Cassandra on TSN nodes. This should only be set if Cassandra authentication is desired. |
a string that’s at least 8 characters long. Example: |
|
Required. The password for the nodetool CLI, which is used for managing a Cassandra cluster. |
a string that’s at least 8 characters long. Example: |
|
Required. An identifier for this deployment. A deployment consists of one or more sites, each of which consists of several clusters of nodes. |
A string consisting of letters A-Z, a-z, digits 0-9, and hyphens (-). Maximum length is 15 characters. Example: |
|
Required. A unique identifier (within the deployment) for this site. |
A string of the form |
|
Required only when there are multiple clusters of the same type in the same site. A suffix to distinguish between clusters of the same node type within a particular site. For example, when deploying the MaX product, a second TSN cluster may be required. |
A string consisting of letters A-Z, a-z, and digits 0-9. Maximum length is 8 characters. Example: |
|
Optional. A list of SSH public keys. Machines configured with the corresponding private key will be allowed to access the node over SSH as the |
For VMware vSphere, a comma-separated list of SSH public key strings, including the For OpenStack, a list of SSH public key strings. Example: |
|
Optional. A list of SSH public keys. Machines configured with the corresponding private key will be allowed to access the node over SSH as the low-privilege user. Supply only the public keys, never the private keys. |
For VMware vSphere, a comma-separated list of SSH public key strings, including the For OpenStack, a list of SSH public key strings. Example: |
|
Optional. An identifier for the VM to use when communicating with MDM, provided by the orchestrator. Required if this is an MDM-managed deployment. We strongly recommend using the same format as SIMPL VM, namely |
Free form string Example: |
|
Optional. The list of management addresses of Metaswitch Deployment Manager(MDM) servers which will manage this cluster. Supply this only for an MDM-managed deployment. |
For VMware vSphere, a comma-separated list of IPv4 addresses. For OpenStack, a list of IPv4 addresses. Example: |
|
Optional. The static certificate for connecting to MDM. Supply this only for an MDM-managed deployment. |
The static certificate as a string. Newlines should be represented as "\n", i.e. a literal backslash followed by the letter "n". Example: |
|
Optional. The CA certificate for connecting to MDM. Supply this only for an MDM-managed deployment. |
The CA certificate as a string. Newlines should be represented as "\n", i.e. a literal backslash followed by the letter "n". Example: |
|
Optional. The private key for connecting to MDM. Supply this only for an MDM-managed deployment. |
The private key as a string Newlines should be represented as "\n", i.e. a literal backslash followed by the letter "n". Example: |
|
Required. The private Fernet key used to encrypt and decrypt secrets used by this deployment. A Fernet key may be generated for the deployment using the |
The private key as a string Example: |
|
Required. The primary user’s password. The primary user is the |
The password as a string. Minimum length is 8 characters. Be sure to quote it if it contains special characters. Example: |
|
Required. The IP address information for the VM. |
An encoded string. Example: |
The ip_info
parameter
For all network interfaces on a VM,
the assigned traffic types, MAC address (OpenStack only), IP address, subnet mask,
default gateway address, and optional IPv6 parameters (access
traffic type only)
are encoded in a single parameter called ip_info
.
Refer to Traffic types and traffic schemes for a list of traffic types found on each VM
and how to assign them to network interfaces.
The names of the traffic types as used in the ip_info
parameter are:
Traffic type | Name used in ip_info |
---|---|
Management |
management |
Cluster |
cluster |
Access |
access |
Diameter signaling |
diameter |
SIP signaling |
sip |
SS7 signaling |
ss7 |
Internal signaling |
internal |
Diameter Multihoming |
diameter_multihoming |
SS7 Multihoming |
ss7_multihoming |
Constructing the ip_info
parameter
-
Choose a traffic scheme.
-
For each interface in the traffic scheme which has traffic types relevant to your VM, note down the values of the parameters for that interface: traffic types, MAC address, IP address, subnet mask, and default gateway address. If the interface is dual-stack, also note down the values of the IPv6 parameters for that interface: IPv6 address, IPv6 subnet mask, and IPv6 default gateway address.
-
Construct a string for each parameter using these prefixes:
Parameter Prefix Format Traffic types
t=
A comma-separated list (without spaces) of the names given above.
Example:t=diameter,sip,internal
MAC address
m=
Six pairs of hexadecimal digits, separated by colons. Case is unimportant.
Example:m=01:23:45:67:89:AB
IP address
i=
IPv4 address in dotted-decimal notation.
Example:i=172.16.0.11
Subnet mask
s=
CIDR notation.
Example:s=172.16.0.0/24
Default gateway address
g=
IPv4 address in dotted-decimal notation.
Example:g=172.16.0.1
IPv6 address
i6=
IPv6 address in colon-separated hexadecimal notation.
Example:i6=12ab:10cd:4000:ef80::1b
IPv6 subnet mask
s6=
CIDR notation.
Example:s6=12ab:10cd:4000:ef80::/64
Default IPv6 gateway address
g6=
IPv6 address in colon-separated hexadecimal notation.
Example:g6=12ab:10cd:4000:ef80::1
-
Join all the parameter strings together with an ampersand (
&
) between each.
Example:t=diameter,sip,internal&m=01:23:45:67:89:AB&i=172.16.0.11&s=172.16.0.0/24&g=172.16.0.1
-
Repeat for every other network interface.
-
Finally, join the resulting strings for each interface together with a semicolon (
;
) between each.
For example, a full ip_info
string that defines four network interfaces
might look like this (newlines added for clarity):
t=management&m=01:23:45:67:89:AB&i=172.14.0.11&s=172.14.0.0/24&g=172.14.0.1;
t=cluster&m=01:23:45:67:89:BC&i=172.15.0.11&s=172.15.0.0/24&g=172.15.0.1;
t=diameter,sip,internal&m=01:23:45:67:89:CD&i=172.16.0.11&s=172.16.0.0/24&g=172.16.0.1;
t=access&m=01:23:45:67:89:DE&&i=172.17.0.11&s=172.17.0.0/24&g=172.17.0.1&i6=12ab:10cd:4000:ef80::1b&s6=12ab:10cd:4000:ef80::/64&g6=12ab:10cd:4000:ef80::1
The individual strings for each network interface must not contain a trailing When including the string in a YAML userdata document, be sure to quote the string, e.g.
Do not include details of any interfaces which haven’t been assigned any traffic types. |