`<< Back <../>`__ .. _6-installer-requirements: 6. Installer Requirements ========================= .. raw:: html

scope

Table of Contents ----------------- - `6.1 Introduction <#6.1>`__ - `6.2 Installer requirements <#6.2>`__ - `6.2.1 General <#6.2.1>`__ - `6.2.2 Additional <#6.2.2>`__ - `6.3 Descriptor file definition <#6.3>`__ - `6.3.1 Resource Pool information <#6.3.1>`__ - `6.3.2 Global Settings <#6.3.2>`__ - `6.3.3 Parameters for network virtualization <#6.3.3>`__ - `6.3.4 Server information <#6.3.4>`__ - `6.3.5 Network Device information <#6.3.5>`__ - `6.3.6 Port mapping information <#6.3.6>`__ - `6.3.7 Network planning information <#6.3.7>`__ - `6.3.8 TOR VLAN configuration information <#6.3.8>`__ - `6.3.9 TOR VLAN configuration information <#6.3.9>`__ - `6.3.10 Host Aggregate information <#6.3.10>`__ - `6.3.11 VIM Nodes <#6.3.11>`__ - `6.3.12 SDNC Nodes <#6.3.12>`__ - `6.3.13 Storage cluster information <#6.3.13>`__ - `6.3.14 Software integration information <#6.3.14>`__ - `6.3.15 Device Management information <#6.3.15>`__ - `6.4 Installer prerequisite <#6.4>`__ - `6.4.1 Hardware validation <#6.4.1>`__ - `6.4.2 Network configuration <#6.4.2>`__ .. _61-introduction: 6.1 Introduction ---------------- **must**: Requirements that are marked as *must* are considered mandatory and must exist in the reference implementation and implemented by installer. The same applies to *must not*. **may**: Requirements that are marked as *may* are considered optional. The same applies to *may not*. .. _62-installer-requirements: 6.2 Installer requirements -------------------------- .. _621-general: 6.2.1 General ~~~~~~~~~~~~~ The Descriptor File defines the unique configuration required by installer in a common schema. It would specialize the installer type per user's implementation requirements. It would be validated at the very beginning of the deployment. It's the installer's responsibility to translate the descriptor file to adapt with its own configuration. Thanks to the descriptor file, the NFVi infrastructure deployment could be completed in one step run. +--------------------+--------------+--------------------------------+ | Ref # | sub-category | Description | +====================+==============+================================+ | ``req.gen.ins.01`` | Installer | Installer **may** accept a | | | | descriptor file to finish | | | | deployment. | +--------------------+--------------+--------------------------------+ | ``req.gen.ins.02`` | Installer | Installer implementation | | | | **must** validate the | | | | descriptor file with schema. | +--------------------+--------------+--------------------------------+ | ``req.gen.ins.03`` | Installer | Any existing installer | | | | implementation **may** need | | | | adaption for the descriptor | | | | file. | +--------------------+--------------+--------------------------------+ | ``req.gen.ins.04`` | Installer | Installer **may** support | | | | reporting the deployment | | | | progress status. | +--------------------+--------------+--------------------------------+ | ``req.gen.des.01`` | Descriptor | Descriptor file **must** | | | | include hardware resource | | | | configuration, software | | | | configuration. | +--------------------+--------------+--------------------------------+ | ``req.gen.des.02`` | Descriptor | Descriptor file **may** | | | | include additional extending | | | | configuration. | +--------------------+--------------+--------------------------------+ .. raw:: html

Table 6-2-1: Installer requirements

.. _622-additional: 6.2.2 Additional ~~~~~~~~~~~~~~~~ Depends xxx. .. _63-descriptor-file-definition-specification: 6.3 Descriptor file definition specification -------------------------------------------- There must be a Descriptor File definition, which used by installer as input of necessary configuration. Mandatory and optional definition shall be defined, there's no restrictions on how to use it, there could be multiple ways to implement PDF, the implementation will be in next section. .. _631-resource-pool-information: 6.3.1 Resource Pool information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This table is the description of the resource pool, it contains only 2 parameters: name and type of the resource pool. A resource pool maps to only one instance of below parameters. +---------------+--------+-----------+------------------------------+ | Field # | type | mandatory | Instruction | +===============+========+===========+==============================+ | RES_POOL_NAME | String | Yes | This is the unique name of | | | | | the resource pool, could be | | | | | refered by other parameters | +---------------+--------+-----------+------------------------------+ | RES_POOL_TYPE | String | No | User defined value to | | | | | identify different hardware | | | | | or software configuration | | | | | requirements. | +---------------+--------+-----------+------------------------------+ .. raw:: html

Table 6-3-1: Resource Pool Information.

.. _632-global-settings: 6.3.2 Global Settings ~~~~~~~~~~~~~~~~~~~~~ The Global settings are provided by the user, contains data like like IP_Type, VLAN_Type, etc. A resource pool maps to only one instance of below parameters. +----------------------+--------+-----------+----------------------+ | Field # | type | mandatory | Instruction | +======================+========+===========+======================+ | IP_TYPE | String | Yes | IPV4 or IPV6 | +----------------------+--------+-----------+----------------------+ | NETWORK_TYPE | String | Yes | VLAN or VXLAN | +----------------------+--------+-----------+----------------------+ | TIMEZONE | String | Yes | The timezone where | | | | | VIM deployed, like | | | | | UTC+8 | +----------------------+--------+-----------+----------------------+ | STORAGE_TYPE | String | Yes | The Storage type, | | | | | for example "ceph" | +----------------------+--------+-----------+----------------------+ | HUGEPAGE_ENABLE | String | Yes | TRUE or FALSE | +----------------------+--------+-----------+----------------------+ | HUGEPAGE_SIZE | String | Yes | The storage size | | | | | that hypervisor set | | | | | for VM, for example | | | | | "1GB" | +----------------------+--------+-----------+----------------------+ | QINQ_ENABLE | String | Yes | TRUE or FALSE | +----------------------+--------+-----------+----------------------+ | HYPERVISOR_CORES | String | Yes | number of vCPU (CPU | | | | | cores or hardware | | | | | threads) assigned to | | | | | the Hypervisor | +----------------------+--------+-----------+----------------------+ | EX | List | Yes | IP list of NTP | | TERNAL_NTP_SERVER_IP | | | server, seperated by | | | | | comma, for example: | | | | | p | | | | | rimariy_IP;second_IP | +----------------------+--------+-----------+----------------------+ .. raw:: html

Table 6-3-2: Global Settings

.. _633-parameters-for-network-virtualization: 6.3.3 Parameters for network virtualization ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ MTU(Maximum Transmission Unit) configuration in switch is different depends on the which network plane it belongs to, this is usually standard value that defined by user. 3 instances of the parameters are expected(Manage Storage and Service), they may have different MTU requirement. +-------------+--------+-----------+--------------------------------+ | Field # | type | mandatory | Instruction | +=============+========+===========+================================+ | SWITCH_TYPE | String | Yes | There should be 3 type of | | | | | switch based on the network | | | | | plane: Manage, Storage, and | | | | | User Services | +-------------+--------+-----------+--------------------------------+ | MTU | String | Yes | Maximum transmission unit | +-------------+--------+-----------+--------------------------------+ .. raw:: html

Table 6-3-3: Network Virtualization parameter .

.. _634-server-information: 6.3.4 server information ~~~~~~~~~~~~~~~~~~~~~~~~ Server information should be provided for installer, including full detail info. for each server, NIC mapping etc. .. _6341-server-information: 6.3.4.1 server information ^^^^^^^^^^^^^^^^^^^^^^^^^^ A table describing information for each server in the resource pool shall be provided Multiple instances are expected, one instance of all the parameters for each server. +--------------------+--------+-----------+----------------------+ | Field # | type | mandatory | Instruction | +====================+========+===========+======================+ | NAME | String | Yes | Server name should | | | | | be aligned with | | | | | naming rule, this is | | | | | the unique ID for | | | | | each device to be | | | | | referred for | | | | | identify device | +--------------------+--------+-----------+----------------------+ | VENDOR | String | No | Vendor of device | +--------------------+--------+-----------+----------------------+ | SKU | String | Yes | The SKU of device, | | | | | can be referred by | | | | | other table NIC | | | | | connection table, to | | | | | identify slot-port | | | | | mapping for device | +--------------------+--------+-----------+----------------------+ | MODEL | String | Yes | This is the model | | | | | for different | | | | | service type, this | | | | | value is defined | | | | | from design document | | | | | of resource pool, | | | | | example NC1, NC1-S | +--------------------+--------+-----------+----------------------+ | SN | String | Yes | Serial Number, each | | | | | server has a unique | | | | | SN | +--------------------+--------+-----------+----------------------+ | RES_POOL | String | Yes | Resource pool name | +--------------------+--------+-----------+----------------------+ | RACK | String | Yes | rack name where | | | | | device located | +--------------------+--------+-----------+----------------------+ | POS | String | Yes | the position of | | | | | device in rack, like | | | | | 2-3U,4-5U | +--------------------+--------+-----------+----------------------+ | BMC_IP | String | Yes | | +--------------------+--------+-----------+----------------------+ | BMC_GATEWAY | String | Yes | | +--------------------+--------+-----------+----------------------+ | BMC_MASK | String | Yes | | +--------------------+--------+-----------+----------------------+ | BMC_SUBNET | String | Yes | | +--------------------+--------+-----------+----------------------+ | BMC_USR | String | Yes | BMC user | +--------------------+--------+-----------+----------------------+ | BMC_PWD | String | Yes | BMC password, | | | | | Instead of | | | | | clear-text password, | | | | | password encryption | | | | | is recommended for | | | | | security | | | | | consideration | +--------------------+--------+-----------+----------------------+ | INTERNAL_IP | String | Yes | It is an internal IP | | | | | configured and used | | | | | by hardware | | | | | integration tools, | | | | | it will be removed | | | | | after hardware | | | | | integration | | | | | verification | +--------------------+--------+-----------+----------------------+ | INTERNAL_GATEWAY | String | Yes | | +--------------------+--------+-----------+----------------------+ | INTERNAL_MASK | String | Yes | | +--------------------+--------+-----------+----------------------+ | GROUP_NAME | String | Yes | Usage of server, | | | | | Manage or Storage or | | | | | Service | +--------------------+--------+-----------+----------------------+ | BMC_PRE_CONFIGURED | String | Yes | YES or NO | +--------------------+--------+-----------+----------------------+ | HW_REGION | String | No | Hardware region | | | | | divided by room or | | | | | area, this is need | | | | | when pod needs to | | | | | build on more than | | | | | one lab, For | | | | | example: Lab01 or | | | | | Lab02 | +--------------------+--------+-----------+----------------------+ | MODULE_NAME | String | Yes | hardware model that | | | | | divided within each | | | | | region, Like "Model | | | | | 3 in Region A", | | | | | usually contains | | | | | certain number of | | | | | racks | +--------------------+--------+-----------+----------------------+ .. raw:: html

Table 6-3-4-1: Server Information.

.. _6342-server-nic-information: 6.3.4.2 server NIC information ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This table is describing the slot and port mapping for NICs in each type of server. Port BDF(`Bus:Device.Function (BDF) Notation `__) information is also needed for each port, it will be used to identify the logical port name after OS is installed. Multiple entries per server type are expected for describing all NIC slots, 1 entry for each port. Information for all server types in pool should be included. +---------------+--------+-----------+------------------------------+ | Field # | type | mandatory | Instruction | +===============+========+===========+==============================+ | VENDOR | String | Yes | Vendor of server | +---------------+--------+-----------+------------------------------+ | SKU | String | Yes | SKU of server | +---------------+--------+-----------+------------------------------+ | SERVICE MODEL | String | Yes | server service type defined | | | | | by provider/user, same | | | | | definition as in above | | | | | table, example: NC1 or NC2 | +---------------+--------+-----------+------------------------------+ | SLOT | String | Yes | Slot number in server for | | | | | each NIC, for example, | | | | | PCIeSlot2 | +---------------+--------+-----------+------------------------------+ | NETWORK_PLANE | String | Yes | Network plane for each nic, | | | | | Manage or Storage or Service | +---------------+--------+-----------+------------------------------+ | PORT | List | Yes | Ports number for the above | | | | | NIC, for example: 1_1 or | | | | | 1_2, 2 ports for one NIC, so | | | | | 2 entries are needed for | | | | | same slot | +---------------+--------+-----------+------------------------------+ | PORT_BDF | String | Yes | Port BDF value for above | | | | | port | +---------------+--------+-----------+------------------------------+ .. raw:: html

Table 6-3-4-2: Server NIC Information.

.. _635-network-device-information: 6.3.5 Network Device information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This table describes each network device, it can be used for network configuration and verification. Multiple instances are expected, one instance for each network device. +-------------+--------+-----------+--------------------------------+ | Field # | type | mandatory | Instruction | +=============+========+===========+================================+ | NAME | String | Yes | Name of network device | +-------------+--------+-----------+--------------------------------+ | VENDOR | String | Yes | Vendor name for network device | +-------------+--------+-----------+--------------------------------+ | SKU | String | Yes | SKU | +-------------+--------+-----------+--------------------------------+ | MODEL | String | Yes | Type of switch, like Access | | | | | Switch or Aggregation Switch | +-------------+--------+-----------+--------------------------------+ | SN | String | Yes | Serial number | +-------------+--------+-----------+--------------------------------+ | HW_RES_POOL | String | Yes | Resource pool name for | | | | | hardware | +-------------+--------+-----------+--------------------------------+ | RACK | String | Yes | rack number where switch is | | | | | placed | +-------------+--------+-----------+--------------------------------+ | POS | String | Yes | position in rack | +-------------+--------+-----------+--------------------------------+ | BMC_IP | String | Yes | | +-------------+--------+-----------+--------------------------------+ | BMC_GATEWAY | String | Yes | | +-------------+--------+-----------+--------------------------------+ | BMC_MASK | String | Yes | | +-------------+--------+-----------+--------------------------------+ | BMC_USR | String | Yes | BMC login user | +-------------+--------+-----------+--------------------------------+ | BMC_PWD | String | Yes | password for BMC login user. | | | | | Instead of clear-text | | | | | password, password encryption | | | | | is recommended for security | | | | | consideration | +-------------+--------+-----------+--------------------------------+ | ENABLE_PWD | String | Yes | Enable password. Instead of | | | | | clear-text password, password | | | | | encryption is recommended for | | | | | security consideration | +-------------+--------+-----------+--------------------------------+ | GROUP_NAME | String | Yes | Manage or storage or service | +-------------+--------+-----------+--------------------------------+ | HW_REGION | String | Yes | Hardware region | +-------------+--------+-----------+--------------------------------+ | MODULE_NAME | String | Yes | Hardware module which is | | | | | devided by location, like area | | | | | A module 1 | +-------------+--------+-----------+--------------------------------+ .. raw:: html

Table 6-3-5: Network device information.

.. _636-port-mapping-information: 6.3.6 Port mapping information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Wiremap defines the port mapping between server/switch and switch for each line, we will need this information to trace the connected server and port, so we can extrapolate the required network configuration for the port. Multiple instances are expected, one instance for each physical cable. +-------------+--------+-----------+--------------------------------+ | Field # | type | mandatory | Instruction | +=============+========+===========+================================+ | NAME | String | Yes | Name of network device | +-------------+--------+-----------+--------------------------------+ | LOCAL_RACK | String | Yes | the rack info for local device | +-------------+--------+-----------+--------------------------------+ | LOCAL_NAME | String | Yes | local device name, LOCAL_NAME | | | | | must reference either "Network | | | | | Device Name" from table 6.3.5 | +-------------+--------+-----------+--------------------------------+ | LOCAL_TYPE | String | Yes | Local device type, switch or | | | | | server | +-------------+--------+-----------+--------------------------------+ | LOCAL_PORT | String | Yes | connected port in local device | +-------------+--------+-----------+--------------------------------+ | REMOTE_RACK | String | Yes | | +-------------+--------+-----------+--------------------------------+ | REMOTE_NAME | String | Yes | connected remote device name, | | | | | REMOTE_NAME must reference | | | | | either "Network Device Name" | | | | | from table 6.3.5 or "Server | | | | | Name" from table 6.3.4.1 | +-------------+--------+-----------+--------------------------------+ | REMOTE_TYPE | String | Yes | remote device type, it can be | | | | | switch or server | +-------------+--------+-----------+--------------------------------+ | REMOTE_PORT | String | Yes | connected port in remote | | | | | device. When describing port | | | | | for remote servers, we use | | | | | port number like 1_1, or 1_2, | | | | | instead of PCIeslot number, | | | | | because the server NIC mapping | | | | | is already defined in 6.3.4.2 | +-------------+--------+-----------+--------------------------------+ | LINE_TYPE | String | Yes | Line type to describe local | | | | | device type and remote device | | | | | type, how each line is | | | | | connected. For example | | | | | "S-SRV-C_S-TOR" means this | | | | | line is connecting a service | | | | | server in compute module to | | | | | service TOR, and another | | | | | example "ST-SRV-S_M-TOR" means | | | | | storage server connecting to a | | | | | manage TOR in storage module. | | | | | The line type can be | | | | | customized defined, as long as | | | | | it's unified in end user. | +-------------+--------+-----------+--------------------------------+ .. raw:: html

Table 6-3-6: Port mapping information.

.. _637-network-planning-information: 6.3.7 Network planning information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Network planning information for the resource pool of each node needs to be defined which should include VLAN ID an allocated IP range. Multiple instances are expected, one instance for each network plane. +----------------------+--------+-----------+----------------------+ | Field # | type | mandatory | Instruction | +======================+========+===========+======================+ | APPLICATION_LAYER | String | Yes | VIM or storage | +----------------------+--------+-----------+----------------------+ | DOMAIN | String | Yes | name of VIM/storage | | | | | software product | +----------------------+--------+-----------+----------------------+ | VENDOR_NETWORK_PLANE | String | Yes | network plane | | | | | designed/needed by | | | | | software product | +----------------------+--------+-----------+----------------------+ | NETWORK_PLANE | String | Yes | corresponding | | | | | network plane in | | | | | user view, like | | | | | Manage, Storage, | | | | | service | +----------------------+--------+-----------+----------------------+ | VENDOR | String | Yes | vendor of software | | | | | product | +----------------------+--------+-----------+----------------------+ | VLAN_ID | List | Yes | designed VLAN id or | | | | | id list for each | | | | | network plane | +----------------------+--------+-----------+----------------------+ | IP_SEGMENT | String | Yes | assigned IP segments | +----------------------+--------+-----------+----------------------+ | GATEWAY | String | Yes | gateway IP for each | | | | | IP range | +----------------------+--------+-----------+----------------------+ | SWITCH_CONFIG_TYPE | String | Yes | | +----------------------+--------+-----------+----------------------+ .. raw:: html

Table 6-3-7: Network planning information.

.. _638-toraccess-switch-vlan-configuration-information: 6.3.8 TOR(Access switch) VLAN configuration information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Multiple instances are expected, one instance for each TOR. +-----------------+--------+-----------+----------------------+ | Field # | type | mandatory | Instruction | +=================+========+===========+======================+ | DEVICE_NAME | String | Yes | | +-----------------+--------+-----------+----------------------+ | VENDOR | String | Yes | | +-----------------+--------+-----------+----------------------+ | DEVICE_MODEL | String | Yes | | +-----------------+--------+-----------+----------------------+ | DEVICE_SN | String | Yes | | +-----------------+--------+-----------+----------------------+ | BMC_IP | String | Yes | | +-----------------+--------+-----------+----------------------+ | SSH_USER | String | Yes | | +-----------------+--------+-----------+----------------------+ | SSH_PASSWORD | String | Yes | Instead of | | | | | clear-text password, | | | | | password encryption | | | | | is recommended for | | | | | security | | | | | consideration | +-----------------+--------+-----------+----------------------+ | ENABLE_PASSWORD | String | Yes | Instead of | | | | | clear-text password, | | | | | password encryption | | | | | is recommended for | | | | | security | | | | | consideration | +-----------------+--------+-----------+----------------------+ | PORT | List | Yes | group multiple ports | | | | | with same VLAN | | | | | configuration, and | | | | | separate different | | | | | port group with ";" | +-----------------+--------+-----------+----------------------+ | VLAN_TYPE | List | Yes | tag or untag | +-----------------+--------+-----------+----------------------+ | VLAN_ID | List | Yes | group multiple VLAN | | | | | with same | | | | | configuration | | | | | requirements, and | | | | | separate different | | | | | VLAN group with ";" | +-----------------+--------+-----------+----------------------+ | PORT_TYPE | List | Yes | trunk or access or | | | | | hybrid | +-----------------+--------+-----------+----------------------+ .. raw:: html

Table 6-3-8: TOR VLAN information.

.. _639-vlan-configuration-for-aggregation-switch: 6.3.9 VLAN configuration for Aggregation Switch ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Multiple instances are expected, one instance for each Aggregation Switch. +-----------------+--------+-----------+----------------------+ | Field # | type | mandatory | Instruction | +=================+========+===========+======================+ | DEVICE_NAME | String | Yes | | +-----------------+--------+-----------+----------------------+ | VENDOR | String | Yes | | +-----------------+--------+-----------+----------------------+ | DEVICE_MODEL | String | Yes | | +-----------------+--------+-----------+----------------------+ | DEVICE_SN | String | Yes | | +-----------------+--------+-----------+----------------------+ | BMC_IP | String | Yes | | +-----------------+--------+-----------+----------------------+ | SSH_USER | String | Yes | | +-----------------+--------+-----------+----------------------+ | SSH_PASSWORD | String | Yes | Instead of | | | | | clear-text password, | | | | | password encryption | | | | | is recommended for | | | | | security | | | | | consideration | +-----------------+--------+-----------+----------------------+ | ENABLE_PASSWORD | String | Yes | Instead of | | | | | clear-text password, | | | | | password encryption | | | | | is recommended for | | | | | security | | | | | consideration | +-----------------+--------+-----------+----------------------+ | PORT | List | Yes | group a list of | | | | | ports with same VLAN | | | | | configuration, and | | | | | separate different | | | | | port group with ";" | +-----------------+--------+-----------+----------------------+ | VLAN_ID | List | Yes | group multiple VLAN | | | | | with same | | | | | configuration | | | | | requirements, and | | | | | separate different | | | | | VLAN group with ";" | +-----------------+--------+-----------+----------------------+ | VLANIF_ADDRESS | List | Yes | Vlanif addresses | | | | | that need to be | | | | | configured on | | | | | Aggregation Switch | +-----------------+--------+-----------+----------------------+ | NETWORK_MASK | List | Yes | | +-----------------+--------+-----------+----------------------+ .. raw:: html

Table 6-3-9: Aggregation Switch VLAN information.

.. _6310-host-aggregate-information: 6.3.10 Host Aggregate information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Servers in the resource pool are usually divided to multiple groups, will use HA(Host Aggregation) to represent host group. One HA could belong to multiple AZ(Availability Zone) It is the definition of each HA in the resource pool. it should contain the server list for each HA, and also the HA meta data. .. _63101-host-ha-mapping: 6.3.10.1 Host HA Mapping ^^^^^^^^^^^^^^^^^^^^^^^^ Multiple instances are expected, defines all servers in HA \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| HA_NAME \| String \| Yes \| HA name, which will following naming rules. \| \| DEVICE_NAME \| String \| Yes \| server name in current HA \| .. raw:: html

Table 6-3-10-1: Host HA Information.

.. _63102-ha-metadata: 6.3.10.2 HA metadata ^^^^^^^^^^^^^^^^^^^^ Multiple instances are expected, service, management and DMZ. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| HA_NAME \| String \| Yes \| \| \| HA_METADATA \| String \| Yes \| properties for each HA, for example: type=TrustPlane,ovs=C-plane,sriov=false \| \| AZ_NAME \| String \| Yes \| AZ name that HA belongs to \| .. raw:: html

Table 6-3-10-2: HA meta Information.

.. _6311-vim-nodes: 6.3.11 VIM Nodes ~~~~~~~~~~~~~~~~ There's a list of servers that was defined as control/management nodes according to resource pool plan Multiple instances are expected, defines all management servers. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| DEVICE_NAME \| String \| Yes \| The server name \| .. raw:: html

Table 6-3-11: VIM Nodes Information.

.. _6312-sdnc-nodes: 6.3.12 SDNC Nodes ~~~~~~~~~~~~~~~~~ Multiple instances are expected, defines all SDN controllers \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| DEVICE_NAME \| String \| Yes \| The server name \| .. raw:: html

Table 6-3-12: SDNC Nodes Information.

.. _6313-storage-cluster-information: 6.3.13 Storage cluster information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Definition of storage cluster and storage pool, .. _63131-storage-pool-plan: 6.3.13.1 Storage pool plan ^^^^^^^^^^^^^^^^^^^^^^^^^^ Storage pool name in each storage cluster, and nodes in Storage pool should be defined, so the storage installer will know which nodes are installing. Multiple instances are expected, each instance defines one storage node \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| STORAGE_CLUSTER_NAME \| String \| Yes \| Storage cluster name, which needs to follow naming rules. \| \| STORAGE_POOL_NAME \| String \| Yes \| Storage pool name, which needs to follow naming rules. \| \| DEVICE_NAME \| String \| Yes \| Storage servers in each storage pool \| .. raw:: html

Table 6-3-13-1: Storage Pool Plan

.. _63132-distribution-storage-pool-info: 6.3.13.2 Distribution storage pool info ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Storage pool information, defines the management account and network information Multiple instances are expected, each instance defines one storage pool \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| STORAGE_CLUSTER_NAME \| String \| Yes \| \| \| NODE_POOL \| String \| No \| \| \| DISK_POOL_NAME \| String \| No \| \| \| STORAGE_POOL_NAME \| String \| Yes \| \| \| HA_NAME_LIST \| List\| Yes \| The corresponding HA lists for current storage pool \| \| AZ_NAME \| String \| Yes \| The corresponding AZ for current storage pool \| \| STORAGE_POOL_NODE_CCOUNT \| String \| Yes \| How many nodes for current storage pool \| \| MAX_QUOTA_CAPACITY \| String \| Yes \| \| \| STORAGE_POOL_MANAGEMENT_IP \| String \| Yes \| Designed virtural IP for storage pool management \| \| NETWORK_MASK \| String \| Yes \| \| \| GATEWAY \| String \| Yes \| \| \| VIM_USER \| String \| Yes \| VIM credential \| \| VIM_PASSWORD \| String \| Yes \| Instead of clear-text password, password encryption is recommended for security consideration \| \| PIM_USER \| String \| Yes \| PIM credential \| \| PIM_PASSWORD \| String \| Yes \| Instead of clear-text password, password encryption is recommended for security consideration \| \| STORAGE_CLUSTER_SERVICE_IP \| String \| Yes \| \| \| STORAGE_CLUSTER_SERVICE_GW \| String \| Yes \| \| \| STORAGE_CLUSTER_BACKEND_IP \| String \| Yes \| \| \| STORAGE_CLUSTER_BACKEND_GW \| String \| Yes \| \| \| BACKUP_POLICY \| String \| Yes \| \| .. raw:: html

Table 6-3-13-2: Distribution storage pool info.

.. _6314-software-integration-information: 6.3.14 Software integration information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ After VIM and Storage software installation finished, parameters willl be needed in integration process of VIM and Storage, the parameters should be defined in advance. .. _63141-vim-context: 6.3.14.1 VIM Context ^^^^^^^^^^^^^^^^^^^^ Parameters from VIM vendor for integration. Only one entry is expected. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| VENDOR \| String \| Yes \| \| \| AUTHORIZATION \| String \| Yes \| One-way or Two-way authentication \| \| VIM_CERTIFICATES_PATH \| String \| Yes \| Full path for certificates that used for integration \| .. raw:: html

Table 6-3-14-1: VIM context Information.

.. _63142-storage-context: 6.3.14.2 Storage Context ^^^^^^^^^^^^^^^^^^^^^^^^ Parameters from storage vendor for integration. Only one entry is expected. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| VENDOR \| String \| Yes \| \| \| AUTHORIZATION \| String \| Yes \| One-way or Two-way authentication \| \| JOINT_WAY \| String \| Yes \| by ISCSI or client \| \| DRIVER_FULL_NAME \| String \| Yes \| Full path for storage driver \| \| CEPH_CONFIG_PATH \| String \| Yes \| Full path for ceph.conf storage \| \| IS_PIM_JOINT \| String \| Yes \| whether integrate with PIM, usaually "YES" for this value \| \| STORAGE_SOFTWARE_VERSION \| String \| Yes \| \| .. raw:: html

Table 6-3-14-2: Storage context Information.

.. _63143-storage-client-context: 6.3.14.3 Storage Client context ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This table defines the parameters for integration with storage client Multiple entries are expected, one entry for each authorization user. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| JOINT_WAY \| String \| Yes \| integration method for storage client, for example, RBD \| \| COMPONENT_TYPE \| String \| Yes \| for example: cinder, glance or nova \| \| AUTHORIZATION_USER \| String \| Yes \| match with the component type \| \| KEYRING_FILENAME \| String \| Yes \| Full path for keyring file, this should match the authentication user, \| .. raw:: html

Table 6-3-14-3: Storage client context.

.. _6315-device-management-information: 6.3.15 Device Management information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. _63151-server-pimphysical-infrastructure-manager-account: 6.3.15.1 SERVER PIM(Physical Infrastructure Manager) ACCOUNT ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This table is not mandatory because not all installer require redfish. It is only requried when servers managed by PIM through redfish, credentials should be the same for same type of device. Multiple entries are expected, one entry for each server model. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| VENDOR \| String \| No \| \| \| SERVER_MODEL \| String \| No \| MODEL for each type of server \| \| REDFISH_USER \| String \| No \| \| \| REDFISH_PASSWD \| String \| No \| Instead of clear-text password, password encryption is recommended for security consideration \| .. raw:: html

Table 6-3-15-1: SERVER PIM ACCOUNT Information.

.. _63152-switch-pim-account: 6.3.15.2 Switch PIM Account ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Servers are managed by SNMP, credentials should be the same for same type of device Multiple entries are expected, one entry for each device model. \| Field # \| type \| mandatory \| Instruction \| \|----|--------------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------\| \| VENDOR \| String \| Yes \| \| \| DEVICE_MODEL \| String \| Yes \| MODEL for each type of switch \| \| SNMP_VERSION \| String \| Yes \| v3 by default \| \| SNMP_USER \| String \| Yes \| \| \| AUTHENTICATION_METHOD \| String \| Yes \| for example: MD5 or SHA1 \| \| VERIFICATION_CODE \| String \| Yes \| \| \| ENCRYPTION_METHOD \| String \| Yes \| \| \| ENCRYPTION_KEY \| String \| Yes \| \| .. raw:: html

Table 6-3-15-2: Switch PIM Account.

.. _64-installer-prerequisite: 6.4 Installer prerequisite -------------------------- .. _641-hardware-validation: 6.4.1 Hardware validation ~~~~~~~~~~~~~~~~~~~~~~~~~ Before the installation, the user has to check if each server meets the deployment requirements: - BIOS settings: RAID configuration, PXE boot order and boot mode, disk capacity, CPU, and memory settings, - remote management accessibility (for example, IPMI, iLO, BMC), - NIC quantity and configuration. .. _642-network-configuration: 6.4.2 Network configuration ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The necessary prerequisite settings must be ready before the deployment, for example: - the VLAN must be configured on the switch, - the IP address ranges to be used must be allocated. .. _65-pdf-implementation: 6.5 PDF implementation ---------------------- When we use PDF for installer or verification tools, all the required data described in 6.3 should be included. There's no limitation on how to implement PDF, like the file type of PDF could be csv or json, and also you can adjust the file structure, whichever is more readable to the tools. Taking servers information for example, you can use flat version to include all parameters in 6.3.4 for each device, or you can group servers with same properties like same Vendor, same model, or same usage. You can refer anuket PDF pages for details about how to implement: `https://wiki.anuket.io/pages/viewpage.action?pageId=4406598 `__