7. Cluster Inventory File Specification

Specification Version: v2.0

TODO: Short description of inventory.yml and how it should be used.

Each section represents a top level dictionary key:

7.1. version:

Element Example(s) Description Required
version:
version: v2.0

Inventory file version.

Release Branch Supported Inventory File Version

release-2.x version: v2.0

release-1.x version: 1.0

release-0.9 version: 1.0

yes

7.4. nodes:

nodes:
    - label:
      hostname:
      rack_id:
      rack_eia:
      ipmi:
          switches:
          ports:
          userid:
          password:
          ipaddrs:
          macs:
      pxe:
          switches:
          ports:
          devices:
          ipaddrs:
          macs:
          rename:
      data:
          switches:
          ports:
          devices:
          macs:
          rename:
      os:
      interfaces:
Element Example(s) Description Required
nodes:
    label:
    ...
label: ubuntu-servers
Type. yes
nodes:
    hostname:
    ...
hostname: server-1
Hostname. yes
nodes:
    rack_id:
    ...
rack_id: rack_1
Rack ID. no
nodes:
    rack_eia:
    ...
rack_eia: U10
Rack EIA. no
nodes:
    ipmi:
        switches:
        ports:
        ipaddr:
        mac:
        userid:
        password:
    ...
nodes:
    ipmi:
        switches:
        - mgmt_1
        - mgmt_2
        ports:
        - 1
        - 11
        ipaddrs:
        - 10.0.0.1
        - 10.0.0.2
        macs:
        - 01:23:45:67:89:AB
        - 01:23:45:67:89:AC
        userid: user
        password: passw0rd

IPMI related parameters.

Required keys:
switches - Management switches.
ports - Management ports.
ipaddrs - IPMI interface ipaddrs.
macs - IPMI interface MAC addresses.
userid - IPMI userid.
password - IPMI password.

List items are correlated by index.

yes
nodes:
    pxe:
        switches:
        ports:
        devices:
        ipaddrs:
        macs:
        rename:
    ...
nodes:
    pxe:
        switches:
        - mgmt_1
        - mgmt_2
        ports:
        - 2
        - 12
        devices:
        - eth16
        - eth17
        ipaddrs:
        - 10.0.1.1
        - 10.0.1.2
        macs:
        - 01:23:45:67:89:AD
        - 01:23:45:67:89:AE
        rename:
        - true
        - true

PXE related parameters.

Required keys:
switches - Management switches.
ports - Management ports.
devices - Network devices.
ipaddrs - Interface ipaddrs.
macs - Interface MAC addresses.
rename - Interface rename flags.

List items are correlated by index.

yes
nodes:
    data:
        switches:
        ports:
        devices:
        macs:
        rename:
    ...
nodes:
    data:
        switches:
        - data_1
        - data_2
        ports:
        - 1
        - 2
        devices:
        - eth26
        - eth27
        macs:
        - 01:23:45:67:89:AF
        - 01:23:45:67:89:BA
        rename:
        - true
        - true

Data related parameters.

Required keys:
switches - Data switches.
ports - Data ports.
devices - Network devices.
macs - Interface MAC addresses.
rename - Interface rename flags.

List items are correlated by index.

yes
nodes:
    os:
    ...
 

Operating system configuration.

See Config Specification - Node Templates under
the ‘os:’ section.

yes
nodes:
    interfaces:
    ...
 

Interface definitions.

Interfaces assigned to a node in Config Specification - Node Templates under ‘interfaces:’ or ‘networks:’ are
included in this list. Interfaces are copied from Config Specification - Interfaces section and modified
in the following ways:

* address_list and address_start keys are replaced with address and each value is replaced with a
single unique IP address.

* IPADDR_list and IPADDR_start keys are replaced with IPADDR and each value is replaced with a
single unique IP address.

* If ‘rename: false’ is set in Config Specification - Node Templates under the
physical_interfaces: section, then iface, DEVICE, and any interface value referencing them will be modified to
match the given interface name. See Config Specification - interfaces: And look in the ‘description’ column for
‘Ubuntu formatted OS interface configuration’ or ‘Red Hat formatted OS interface configuration’ for details.
yes