Installing UFM Docker Container Mode
UFM dedicated NVIDIA Host InfiniBand Networking packages provided by DOCA-Host must be installed on the server that will run UFM Docker.
RedHat:
yum install doca-ufm doca-kernel
Ubuntu:
apt install doca-ufm doca-kernel
For UFM to work, you must have an InfiniBand port configured with an IP address and in "up" state.
NoteFor InfiniBand support, please refer to DOCA-Host documentation.
If the hosting server is equipped with XDR HCAs (ConnectX-8/ConnectX-9 SuperNICs), SMI devices for the InfiniBand interfaces intended to be used as fabric interfaces in UFM (for OpenSM) must be created if they do not already exist.
Fabric interfaces are defined in the Server section of the
gv.cfgfile.[Server] # SM Management interface fabric_interface = ib0 # disabled (default) | enabled (configure OpenSM with multiple GUIDs) | ha_enabled (configure multiport SM with high availability). multi_port_sm = disabled # When enabling multi_port_sm, specify here the additional fabric interfaces for OpenSM conf. # Example: ib1,ib2,ib5 (OpenSM will support the first 8 GUIDs where first GUID will # be extracted from the fabric_interface, and remaining GUIDs from additional_fabric_interfaces. additional_fabric_interfaces =
Prerequisites for Creating SMI Devices
Install the
mlnx-iproute2package (if it is not already installed):apt install mlnx-iproute2
Retrieve the list of active InfiniBand (IB) devices based on the defined fabric interfaces.
Use the following bash command to obtain the device names:
ibdev2netdev | grep ib0 | cut -d" " -f1For the interface name
ib0, the corresponding device name will bemlx5_0.Create SMI devices for the active IB interfaces using the following command:
/opt/mellanox/iproute2/sbin/rdma dev add [interface_name] type SMI parent [device name] for device mlx5_0 smi device name will be smi1 (should not be smi0. Just add one to device name extension (mlx5_0) Example: /opt/mellanox/iproute2/sbin/rdma dev add smi1 type SMI parent mlx5_0
Make sure to stop the following services before running UFM Docker container, as it utilizes the same default ports that they do: Pacemaker, httpd, OpenSM, and Carbon.
If firewall is running on the host, please make sure to add an allow rule for UFM used ports (listed below):
NoteIf the default ports used by UFM are changed in UFM configuration files, make sure to open the modified ports on the host firewall.
80 (TCP) and 443 (TPC) are used by WS clients (Apache Web Server)
8000 (UDP) is used by the UFM server to listen for REST API requests (redirected by Apache web server)
6306 (UDP) is used for multicast request communication with the latest UFM Agents
8005 (UDP) is used as a UFM monitoring listening port
8888 (TCP) is used by DRBD to communicate between the UFM Primary and Standby servers
2022 (TCP) is used for SSH
Supported versions for upgrade are UFM v.6.10.0 and above.
UFM files directory from previous container version mounted on the host.
To load the UFM docker image, pull the latest image from docker hub:
docker pull mellanox/ufm-enterprise:latest
You can see full usage screen for ufm-installation by running the container with -h or -help flag:
docker run --rm mellanox/ufm-enterprise-installer:latest -h
If an Internet connection is not available, perform the following:
Copy the UFM image to your machine.
Load the image from the file using this command:
docker image load -i <image-path>
Installation Command Usage
docker run -it --name=ufm_installer --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /etc/systemd/system/:/etc/systemd_files/ \
-v /opt/ufm/files/:/installation/ufm_files/ \
-v [LICENSE_DIRECTORY]:/installation/ufm_licenses/ \
mellanox/ufm-enterprise:latest \
--install [OPTIONS]
Modify the variables in the installation command as follows:
[UFM_LICENSES_DIR]: UFM license file or files location.NoteExample: If your license file or files are located under
/downloads/ufm_license_files/then you must set this volume to be-v /downloads/ufm_license_files/:/installation/ufm_licenses/[OPTIONS]: UFM installation options. For more details see the table below.
Command Options
Flag | Description | Default Value |
| Flag to indicate that UFM should perform the installation | N/A |
| IB fabric interface name. | ib0 |
| Management interface name. | eth0 |
| UFM Multisubnet Consumer mode | N/A |
| A directory on the host that contains the SSL certificate and key ( | N/A |
| Show help | N/A |
Options applicable only on Podman Unprivileged User Installation
Flag | Description | Default Value |
| Flag to indicate that the installation should be rootless. | N/A |
| Path to the plugin data created in the previous step. | N/A |
| The user that will run UFM on the host (e.g., | N/A |
| The user group that will run UFM on the host (e.g., | N/A |
UFM Enterprise installer supports several deployment modes: