The following is an example of a completed host_inventory file.
#######
# ServAssure Collection Platform Host Inventory
#
# All ServAssure Collection Platform Hosts below
# Listed by ServAssure Collection Platform ROLE
#
# MULTI-INTERFACE SUPPORT
# Every ServAssure Collection Platform host specification can be supplied with an alternative interface to use to bind to instead of the default.
# To specify the alternate interface per host, use the "use_eth_interface" host variable.
# To specify the alternate interface's hostname if it is set up in DNS, use the "use_custom_fqdn" host variable.
#
# Example: [rabbitmq]
# <hostname> ansible_host=<private_ip> use_eth_interface=ens224 use_custom_fqdn=rabbit1alternate.lab.domain.net
#
# These need to be configured per host in the inventory, or if all hosts use the same interface name, it can be placed in site-vars.
# The syntax for defining this information is the same across all groups (rabbitmq,docsis_manager,etc.)
#
[rabbitmq]
<hostname> ansible_host=<private ip>
#
[docsis_manager]
<hostname> ansible_host=<private ip>
#
# NOTE: The manager sends a URL down to the poller over the message bus telling the poller where to post ingest data.
# By default this ingest url is constructed from the default ip address of the manager or its short hostname.
# If the poller needs to use a name/address different from either of these,
# the INGEST_ADDRESS host variable can be set on each docsis manager in inventory with the name/address for that manager
# at which the poller can reach it
#
#
#
[docsis_poller]
<hostname> ansible_host=<private ip>
# Example: poller01 ansible_host=<poller01_ip> QUEUE_LISTENER_LIST=pnmJob
# poller02 ansible_host=<poller02_ip> QUEUE_LISTENER_LIST=lowPriority,highPriority,backgroundPriority,onDemand
# poller03 ansible_host=<poller03_ip> QUEUE_LISTENER_LIST=lowPriority,highPriority,backgroundPriority,onDemand
#
# NOTE: The interface the ServAssure TFTP Receiver listens on is configurable.
# By default (no TFTP* host inventory variables set), the interface that ServAssure TFTP Receiver binds to will
# be the configured for the default ipv4 and/or default ipv6 address for the host
# If the TFTP_IPV4 host variable is set the ServAssure TFTP Receiver will be configured to bind to the ipv4 address specified
# If the TFTP_IPV6 host variable is set the ServAssure TFTP Receiver will be configured to bind to the ipv6 address specified
# If the TFTP_IP host variable (deprecated) is set the ServAssure TFTP Receiver will be configured to bind to the address
# specified (This variable kept for backwards compatibility)
# Example: [docsis_poller]
# server-hostname-x TFTP_IPV4=10.0.0.1
# server-hostname-y TFTP_IPV4=10.0.1.1
#
# In cases where CMs must use a NAT'd address for sending PNM data to poller over TFTP the TFTP_IPV4_CM_NAT/TFTP_IPV4_CMTS_NAT
# or TFTP_IPV6_CM_NAT/TFTP_IPV6_CMTS_NAT host variable should be set to the pollers NAT'd address to be used.
# This allows for the CM and/or CMTS to use an address other than the tftp bind address of the poller for TFTP.
# Example: [docsis_poller]
# server-hostname-x TFTP_IPV4=10.0.0.1 TFTP_IPV4_CMTS_NAT=172.0.0.1 TFTP_IPV4_CM_NAT=173.0.0.1
# server-hostname-y TFTP_IPV4=10.0.1.1 TFTP_IPV4_CMTS_NAT=172.0.1.1 TFTP_IPV4_CM_NAT=173.0.1.1
#
# The ServAssure TFTP Receiver can be disabled completely by setting TFTP_IPV4 and TFTP_IPV6 to empty,
# i.e. TFTP_IPV4= TFTP_IPV6=
# NOTE: The poller can be configured to only listen to particular queues.
# It listens to all by default. Customizing this is not a typical configuration. The QUEUE_LISTENER_LIST
# host variable is used on hosts in the docsis_poller inventory group to accomplish this. This is an
# optional variable.
# QUEUE_LISTENER_LIST takes a list where list should be made up of one or more of the following values
# separated by commas (no spaces):
# lowPriority,highPriority,onDemand,backgroundPriority,pnmJob
# The pnmJob value designates a dedicated ServAssure TFTP Receiver and cannot be used with other QUEUE_LISTENER_LIST values.
# IMPORTANT: The pnmJob value should only be used if more than one poller node exists in the deployment.
#
# Example: [docsis_poller]
# server-hostname-x QUEUE_LISTENER_LIST=onDemand
#
# NOTE: Individual pollers can be configured for a specific network partition. This is an optional variable configured using
# the NETWORK_PARTITION host variable. Setting this also requires specifying a corresponding network partition using the
# ServAssure Collection Platform cmts API.
# NETWORK_PARTITION values should not contain a period ('.') character or spaces
#
# Example: [docsis_poller]
# server-hostname-x NETWORK_PARTITION=east
#
# NOTE: In the case that multiple variables need to be specified on a docsis_poller, this is done by specifying multiple
# varname=val pairs separated by spaces. i.e.
# Example: [docsis_poller]
# server-hostname-x QUEUE_LISTENER_LIST=onDemand NETWORK_PARTITION=east TFTP_IPV4=10.0.0.1
#
#
[metrics]
<hostname> alias=metrics1
# The legacy metrics server group. No longer needed if a new metricsv2 VM has been allocated and metrics are
# publishing to a new server. Can be retained as long as the VM still exists.
#
[metricsv2]
<hostname> ansible_host=<private IP>
#
[logger]
<hostname> ansible_host=<private IP
#
#[docker_hosts:children]
#docsis_l2tp_receiver
# Groups in this host_inventory file where Docker must be insalled to support ServAssure L2TP Receiver.
# Values are required only if deployment includes ServAssure L2TP Receiver
#
# [docsis_l2tp_receiver]
# <hostname> IP=<private IP> ansible_host=<privae IP>
# NETWORK_PARTITION=<partition name> ansible_user=<user name>
# L2TP_NAT=<private IP>
# L2TP_IP=<private IP>
#
#NOTE: Host details for hosts where ServAssure L2TP Receiver is installed. Required if [docker_hosts:children] is enabled.
# Includes for each host:
# Hostname for the hosting server
# IP for the hosting server
# Name of the NETWORK_PARTITION (optional)
# IP address for the Ansible Management Server
# User name for the Ansible Management Server
# IP that the ServAssure L2TP Receiver binds to (IPv4 or IPv6)
# IP that remote devices connect to (IPv4 or IPv6)
#
# Example:
# my.server.hostname.1 IP=192.0.2.0 ansible_host=192.0.2.1
# NETWORK_PARTITION=partition ansible_user=arris
# L2TP_NAT=2001:db8:ffff:ffff:ffff:ffff:ffff:0001
# L2TP_IP=2001:db8:ffff:ffff:ffff:ffff:ffff:0002
#
[all:vars]
# envars - Full path and filename of the site specific variables file
envars=<path to site vars file>
