Template and sample YAML
Examples of a sample and template System_Name.yml file.
When creating or editing the yml file on your system, note that there must be only one .yml file apart from the template in the /opt/ibm/appliance/platform/apos-comms/customer_network_config/ansible directory, otherwise you might face issues when configuring the network.
Template YAML file
Versions 1.0.7.6 and later
switches section contains two mutually exclusive sections marked
#BEGIN BGP (...) #END BGP and #BEGIN L2 (...) #END L2. Only one of
these sections must be used. If you do not have the BGP feature configured, remove the BGP section
together with the enclosing comments. For more information, see Switch settings.all:
children:
control_nodes:
hosts:
node1:
custom_hostname: <VALUE>
management_network:
network1:
ip: <VALUE>
node2:
custom_hostname: <VALUE>
management_network:
network1:
ip: <VALUE>
node3:
custom_hostname: <VALUE>
management_network:
network1:
ip: <VALUE>
switches:
#BEGIN BGP
vars:
cp4d_asplain: <VALUE>
cp4d_network: <VALUE>
cp4d_network_vip: <VALUE>
hosts:
FabSw1a:
ansible_host: localhost
vrr_ip_addr: <VALUE>
cp4d_routerID: 9.0.62.1
isl_peer: 9.0.255.2
bgp_links:
link1:
swp: <VALUE>
neighbor: <VALUE>
ip_addr: <VALUE>
mtu: 9000
link_speed: 10000
FabSw1b:
ansible_host: localhost
vrr_ip_addr: <VALUE>
cp4d_routerID: 9.0.62.2
isl_peer: 9.0.255.1
bgp_links:
link1:
swp: <VALUE>
neighbor: <VALUE>
ip_addr: <VALUE>
mtu: 9000
link_speed: 10000
#END BGP
#BEGIN L2
switches:
hosts:
FabSw1a:
ansible_host: localhost
external_connection_config:
external_link1:
switch_ports: ['<VALUE>', '<VALUE>']
port_config:
mtu: 9000
link_speed: 10000
vlans: ['VALUE']
strict_vlan: <VALUE>
name: <VALUE>
lacp_link: True
lacp_rate: Fast
clag_id: 100
partner_switch: 'FabSw1b'
#END L2
vars:
app_fqdn: <VALUE>
#(pick from timedatectl list-timezones), default is EDT
timezone: "<OPTIONAL>"
#must begin with server or pool
time_servers: ["<OPTIONAL>"]
dns_servers: ["<VALUE>"]
dns_search_strings: ["<OPTIONAL>"]
smtp_servers: ["<OPTIONAL>"]
management_network:
network1:
subnet: <VALUE>
# just number, no slash
prefix: <VALUE>
gateway: <VALUE>
floating_ip: <VALUE>
mtu: <OPTIONAL>
custom_routes: <OPTIONAL>
application_network_enabled: False
application_network:
network1:
default_gateway: true
vlan: <VALUE>
# just number, no slash
prefix: <VALUE>
gateway: <VALUE>
floating_ip: <VALUE>
mtu: <OPTIONAL>
custom_routes: <OPTIONAL>
Versions 1.0.7.5 and earlier
application_network
line:application_network_enabled: True/False
application_network:If you are only using Management
connection (1G), the setting must be: application_network_enabled: False, and the
application_network section must be
blank.
If you have a standard network layout
(Management plus Application), you should set application_network_enabled to
True.
switches section. When starting with an existing
System_Name.yml file, this section must be added manually. Refer to Switch settings .all:
children:
control_nodes:
hosts:
node1:
custom_hostname: <VALUE>
management_network:
network1:
ip: <VALUE>
node2:
custom_hostname: <VALUE>
management_network:
network1:
ip: <VALUE>
node3:
custom_hostname: <VALUE>
management_network:
network1:
ip: <VALUE>
switches:
hosts:
FabSw1a:
# Run on the control rather than remotely
ansible_host: localhost
# Is there an external link here at all?
external_connection_enabled: False
# If the above is True the following section is filled in
external_connection_config:
# First link config
external_link1:
# Ports to put in this link, a list of 'number', 'number'
switch_ports: ['XX', 'YY']
# same config for all the values in switch_ports
port_config:
mtu: 9000
link_speed: 10000
# Which VLANs arriving on this port (and crossing the bridge)
vlans: ['VALUE']
# True means we only accept tagged packets from external source
# False means we only accept untagged packets from external source
strict_vlan: true
# Name of this link
name: <VALUE>
# True indicates there is multiple links in this connection
lacp_link: True
# LACP Refresh rate. (Fast or Slow)
lacp_rate: Fast
# CLAG Id for this link, 0 for no clag
clag_id: 100
# This switch should have matching cfg (and the same clag_id)
# Use False for links only on a single switch
partner_switch: 'FabSw1b'
vars:
app_fqdn: <VALUE>
#(pick from timedatectl list-timezones), default is EDT
timezone: "<OPTIONAL>"
#must begin with server or pool
time_servers: ["<OPTIONAL>"]
dns_servers: ["<VALUE>"]
dns_search_strings: ["<OPTIONAL>"]
smtp_servers: ["<OPTIONAL>"]
management_network:
network1:
subnet: <VALUE>
# just number, no slash
prefix: <VALUE>
gateway: <VALUE>
floating_ip: <VALUE>
mtu: <OPTIONAL>
custom_routes: <OPTIONAL>
application_network_enabled: True
application_network:
network1:
default_gateway: true
vlan: <VALUE>
# just number, no slash
prefix: <VALUE>
gateway: <VALUE>
floating_ip: <VALUE>
mtu: <OPTIONAL>
custom_routes: <OPTIONAL>
Fully populated sample YAML
all:
children:
control_nodes:
hosts:
node1:
custom_hostname: suyos01a.svl.ibm.com
management_network:
network1:
ip: 9.30.16.141
node2:
custom_hostname: suyos01b.svl.ibm.com
management_network:
network1:
ip: 9.30.16.142
node3:
custom_hostname: suyos01c.svl.ibm.com
management_network:
network1:
ip: 9.30.16.143
switches:
hosts:
FabSw1a:
# Run on the control rather than remotely
ansible_host: localhost
# Is there an external link here at all?
external_connection_enabled: True
# If the above is True the follow section is filled in
external_connection_config:
# First link config
external_link1:
# Ports to put in this link, a list of 'number', 'number'
switch_ports: ['48']
# same config for all the values in switch_ports
port_config:
mtu: 9000
link_speed: 10000
# Which VLANs arriving on this port (and crossing the bridge)
vlans: ['4080']
# True means we only accept tagged packets from external source
# False means we only accept untagged packets from external source
strict_vlan: False
# Name of this link
name: h0
# True indicates there is multiple links in this connection
lacp_link: false
# LACP Refresh rate. (Fast or Slow)
lacp_rate: Fast
# CLAG Id for this link, 0 for no clag
clag_id: 0
# This switch should have matching cfg (and the same clag_id)
# Use False for links only on a single switch
partner_switch: False
vars:
app_fqdn: suyos01.svl.ibm.com
#(pick from timedatectl list-timezones)
timezone: "America/Los_Angeles"
#must begin with server or pool
time_servers: ["<OPTIONAL>"]
dns_servers: ["9.30.31.32"]
management_network:
network1:
subnet: 9.30.16.128/25
# just number, no slash
prefix: 25
gateway: 9.30.16.129
floating_ip: 9.30.16.144
mtu: 1500
custom_routes:
application_network_enabled: True
application_network:
network1:
default_gateway: true
vlan: 4080
# just number, no slash
prefix: 25
gateway: 9.30.20.1
floating_ip: 9.30.20.40
mtu: 9000
custom_routes: