bmc
For automatic provisioning of servers and discovery, the BMC method can be used.
Pre requisites
The control plane NIC connected to remote servers (through the switch) should be configured with two IPs in a shared LOM set up. This NIC is configured by Omnia with the IP xx.yy.255.254, aa.bb.255.254 (where xx.yy are taken from
bmc_nic_subnet
and aa.bb are taken fromadmin_nic_subnet
) whendiscovery_mechanism
is set tobmc
.
IP ranges (
bmc_static_start_range
,bmc_static_start_range
) provided to Omnia for BMC discovery should be within the same subnet.
Caution
To create a meaningful range of discovery, ensure that the last two octets of
bmc_static_end_range
are equal to or greater than the last two octets of thebmc_static_start_range
. That is, for the range a.b.c.d - a.b.e.f, e and f should be greater than or equal to c and d. Ex: 172.20.0.50 - 172.20.1.101 is a valid range however, 172.20.0.101 - 172.20.1.50 is not.If you are re-provisioning your cluster (that is, re-running the
provision.yml
playbook) after a clean-up, ensure to use a differentadmin_nic_subnet
ininput/provision_config.yml
to avoid a conflict with newly assigned servers. Alternatively, disable any OS available in theBoot Option Enable/Disable
section of your BIOS settings (BIOS Settings
>Boot Settings
>UEFI Boot Settings
) on all target nodes.
All iDRACs should be reachable from the
admin_nic
.
Note
- When iDRACs are in DHCP mode*
The IP range x.y.246.1 - x.y.255.253 (where x and y are provided by the first two octets of
bmc_nic_subnet
) are reserved by Omnia.x.y.246.1 - x.y.250.253 will be the range of IPs reserved for dynamic assignment by Omnia.
During provisioning, Omnia updates servers to static mode and assigns IPs from x.y.251.1 - x.y.255.253.
Users can see the IPs (that have been assigned from x.y.251.1 - x.y.255.253) in the DB after provisioning the servers.
- For example:
If the provided
bmc_subnet
is10.3.0.0
and there are two iDRACs in DHCP mode, the IPs assigned will be10.3.251.1
and10.3.251.2
.
The following parameters need to be populated in input/provision_config.yml
to discover target nodes using BMC.
Caution
Do not remove or comment any lines in the input/provision_config.yml
file.
Parameter |
Details |
---|---|
network_interface_type
Required |
The network type used on the Omnia cluster. Choices:
|
discovery_mechanism
Required |
The mechanism through which Omnia will discover nodes for provisioning. For more information on how the mechanisms work, go to DiscoveryMechanisms. Choices:
|
provision_os
Required |
The operating system to be provisioned on target nodes in the cluster. Choices:
|
provision_os_version
Required |
OS version of provision_os to be installed. Choices:
|
iso_file_path
Required |
Path where user has placed the iso image that needs to be provisioned on target nodes. Accepted files are Rocky8-DVD or RHEL-8.x-DVD (full OS). iso_file_path should contain the provision_os and provision_os_version values in the filename. Default values: |
timezone
Required |
Timezone to be used during OS provisioning. Available timezones are provided here. Choices:
|
language
Required |
Language to be used during OS provisioning. Default values: |
default_lease_time
Required |
Default lease time for IPs assigned by DHCP. Range: 21600-86400 Default values: |
provision_password
Required |
|
postgresdb_password
Required |
|
node_name
Required |
Default values: |
domain_name
Required |
|
public_nic
Required |
The nic/ethernet card that is connected to the public internet. Default values: |
admin_nic
Required |
Admin NIC of Control Plane. This is the shared LOM NIC. Default values: |
admin_nic_subnet
Required |
The subnet within which all Admin IPs are assigned. Default values: |
ib_nic_subnet
Optional |
|
bmc_nic_subnet
Required |
|
bmc_username
Required |
|
bmc_password
Required |
|
bmc_static_start_range
Required |
|
bmc_static_end_range
Required |
|
update_repos
Required |
Note By default, AppSteam and BaseOS repos will be configured from the given ISO file. Choices:
|
|
Choices:
|
rhel_repo_local_path
Optional |
Default value:
|
primary_dns
Optional |
Ex: If the |
secondary_dns
Optional |
The secondary DNS host IP queried to provide Internet access to Compute Node (through DHCP routing) |
disk_partition
Optional |
Default values: |
mlnx_ofed_path
Optional |
Absolute path to a local copy of the .iso file containing Mellanox OFED packages. The image can be downloaded from https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/. Sample value: /root/MLNX_OFED_LINUX-5.8-1.1.2.1-rhel8.6-x86_64.iso |
cuda_toolkit_path
Optional |
Absolute path to local copy of .rpm file containing CUDA packages. The cuda rpm can be downloaded from https://developer.nvidia.com/cuda-downloads. CUDA will be installed post provisioning without any user intervention. Eg: cuda_toolkit_path: “/root/cuda-repo-rhel8-12-0-local-12.0.0_525.60.13-1.x86_64.rpm” |
Note
- The
input/provision_config.yml
file is encrypted on the first run of the provision tool: To view the encrypted parameters:
ansible-vault view provision_config.yml --vault-password-file .provision_vault_key
To edit the encrypted parameters:
ansible-vault edit provision_config.yml --vault-password-file .provision_vault_key
Caution
The IP address 192.168.25.x is used for PowerVault Storage communications. Therefore, do not use this IP address for other configurations.
To continue to the next steps:
If you have any feedback about Omnia documentation, please reach out at omnia.readme@dell.com.