diff options
-rw-r--r-- | docs/release/installation/installation.instruction.rst | 44 | ||||
-rwxr-xr-x | mcp/config/states/virtual_control_plane | 11 |
2 files changed, 53 insertions, 2 deletions
diff --git a/docs/release/installation/installation.instruction.rst b/docs/release/installation/installation.instruction.rst index 88ca180bb..6d508bcd8 100644 --- a/docs/release/installation/installation.instruction.rst +++ b/docs/release/installation/installation.instruction.rst @@ -343,6 +343,50 @@ Examples Fuel@OPNFV ARM POD5 Network Layout +Pod Descriptor Files +==================== + +Descriptor files provide the installer with an abstraction of the target pod +with all its hardware characteristics and required parameters. This information +is split into two different files: +Pod Descriptor File (PDF) and Installer Descriptor File (IDF). + + +The Pod Descriptor File is a hardware and network description of the pod +infrastructure. The information is modeled under a yaml structure. +A reference file with the expected yaml structure is available at +*mcp/config/labs/local/pod1.yaml* + +A common network section describes all the internal and provider networks +assigned to the pod. Each network is expected to have a vlan tag, IP subnet and +attached interface on the boards. Untagged vlans shall be defined as "native". + +The hardware description is arranged into a main "jumphost" node and a "nodes" +set for all target boards. For each node the following characteristics +are defined: + +- Node parameters including CPU features and total memory. +- A list of available disks. +- Remote management parameters. +- Network interfaces list including mac address, speed and advanced features. +- IP list of fixed IPs for the node +Note: the fixed IPs are ignored by the MCP installer script and it will instead +assign based on the network ranges defined under the pod network configuration. + + +The Installer Descriptor File extends the PDF with pod related parameters +required by the installer. This information may differ per each installer type +and it is not considered part of the pod infrastructure. Fuel installer relies +on the IDF model to map the networks to the bridges on the foundation node and +to setup all node NICs by defining the expected OS device name and bus address. + + +The file follows a yaml structure and a "fuel" section is expected. Contents and +references must be aligned with the PDF file. The IDF file must be named after +the PDF with the prefix "idf-". A reference file with the expected structure +is available at *mcp/config/labs/local/idf-pod1.yaml* + + ============= Release Notes ============= diff --git a/mcp/config/states/virtual_control_plane b/mcp/config/states/virtual_control_plane index d02ea4398..43d152023 100755 --- a/mcp/config/states/virtual_control_plane +++ b/mcp/config/states/virtual_control_plane @@ -14,9 +14,16 @@ source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/lib.sh" # KVM, compute node prereqs (libvirt first), VCP deployment salt -C 'kvm* or cmp*' cmd.run 'rm -f /etc/network/interfaces.d/*.cfg' -salt -C 'kvm* or cmp*' file.line \ - /usr/lib/python2.7/dist-packages/salt/modules/debian_ip.py \ + +# patch the networking module for Debian based distros +debian_ip_source=/usr/lib/python2.7/dist-packages/salt/modules/debian_ip.py +salt -C 'kvm* or cmp*' file.line $debian_ip_source \ content='iface = iface.lower()' mode='delete' + +salt -C 'kvm* or cmp*' file.replace $debian_ip_source \ + pattern="^\s{8}__salt__\['pkg.install'\]\('vlan'\)" \ + repl="\n if not __salt__['pkg.version']('vlan'):\n __salt__['pkg.install']('vlan')" + salt -C 'kvm*' pkg.install bridge-utils salt -C 'kvm*' state.apply linux.network salt -C 'cmp*' state.apply linux.system |