Prepare the system for WEKA software installation
This page describes the procedures required to system for the WEKA software installation.
Once the hardware and software prerequisites are met, prepare the backend servers and clients for the installation of the WEKA system.
This preparation consists of the following steps:
Enable SR-IOV (when required).
Note: Some of the examples on this page contain version-specific information. The software is updated frequently, so the package versions available to you may differ from those presented here.
Related topics
Prerequisites and compatibility
Install NIC drivers
Note: The steps describing the installation of NIC drivers are provided as a courtesy. Refer to your NIC vendor documentation for the latest information and updates.
Mellanox OFED installation
This section describes an OFED installation procedure that has proven to be successful. However, Mellanox supports a number of other installation methods, any of which can be used to install OFED. For more information about other installation procedures, refer to the Mellanox documentation.
Meeting Mellanox OFED prerequisites
The Mellanox OFED installation has a number of dependencies. The following example shows the installation of OFED dependencies in RHEL/CentOS 7.x using yum's [base] and [update] repositories, which are supported and preconfigured in RHEL and CentOS.
This example assumes that the server was provisioned using the "Minimal installation" option and that it has access to yum repositories, either locally or over the Internet. This method can trigger updates to existing packages already installed on the server.
Alternatively, it is possible to install OFED dependencies without triggering updates to already-installed packages, as shown in the following example:
Once the dependencies have been satisfied, it is possible to perform the OFED installation procedure.
Mellanox OFED installation
The Mellanox OFED installation involves decompressing the distribution archive, which you obtain from the Mellanox website, and running the installation script. Refer to the following to begin the installation:
On completion of the OFED installation, the NIC firmware may be updated to match the firmware requirements of the Mellanox OFED software. If an update was performed, reboot the server at the end of the installation for the new firmware to become effective. Otherwise, restart the driver by running the following:
This concludes the Mellanox OFED installation procedure.
Enable SR-IOV
Single Root I/O Virtualization (SR-IOV) enablement is mandatory in the following cases:
The servers are equipped with Intel NICs.
When working with client VMs where it is required to expose the virtual functions (VFs) of a physical NIC to the virtual NICs.
Related topic
Configure the networking
Ethernet configuration
The following example of ifcfg
script is provided as a reference for configuring the Ethernet interface.
MTU 9000 (jumbo frame) is recommended for the best performance. Refer to your switch vendor documentation for jumbo frame configuration.
Bring the interface up using the following command:
InfiniBand configuration
InfiniBand network configuration normally includes Subnet Manager (SM), but the procedure involved is beyond the scope of this document. However, it is important to be aware of the specifics of your SM configuration, such as partitioning and MTU, because they can affect the configuration of the endpoint ports in Linux. For best performance, MTU of 4092 is recommended.
Refer to the following ifcfg
script when the IB network only has the default partition, i.e., "no pkey
":
Bring the interface up using the following command:
Verify that the “default partition” connection is up, with all the attributes set:
Verify the network configuration
Use a large-size ICMP ping to check the basic TCP/IP connectivity between the interfaces of the servers:
The-M do
flag prohibits packet fragmentation, which allows verification of correct MTU configuration between the two endpoints.
-s 8972
is the maximum ICMP packet size that can be transferred with MTU 9000, due to the overhead of ICMP and IP protocols.
Configure the HA networking
Bonded interfaces are supported for ethernet can be added to WEKA after setting the bonded device in the server.
When there is a need to configure Dual Network (IB or ETH) without LACP, each NIC must have its own IP address and you will need to properly configure the routing of the interfaces involved.
Example using CentOS:
Add the following lines at the end of /etc/sysctl.conf
:
This can be added per interface, as described above, or to all interfaces:
Routing tables
Append the following to /etc/iproute2/rt_tables
:
Assuming the interfaces are mlnx0
and mlnx1
and assuming that the network is 10.90.0.0/16 with IPs 10.90.0.1 and 10.90.1.1 and a default gw of 10.90.2.1, set the following routing rules:
/etc/sysconfig/network-scripts/route-mlnx0
/etc/sysconfig/network-scripts/route-mlnx1
/etc/sysconfig/network-scripts/rule-mlnx0
/etc/sysconfig/network-scripts/rule-mlnx1
Related topic
Configure the clock synchronization
The synchronization of time on computers and networks is considered good practice and is vitally important for the stability of the WEKA system. Proper timestamp alignment in packets and logs is very helpful for the efficient and quick resolution of issues.
Configure the clock synchronization software on the backends and clients according to the specific vendor instructions (see your OS documentation), before installing the WEKA software.
Disable the NUMA balancing
The WEKA system autonomously manages NUMA balancing, making optimal decisions. Therefore, turning off the Linux kernel’s NUMA balancing feature is a mandatory requirement to prevent extra latencies in operations. It’s crucial that the disabled NUMA balancing remains consistent and isn’t altered by a server reboot.
To persistently disable NUMA balancing, follow these steps:
Open the file located at:
/etc/sysctl.conf
Append the following line:
kernel.numa_balancing=disable
Validate the system preparation
The wekachecker
is a tool that validates the readiness of the servers in the cluster before installing the WEKA software.
The wekachecker
performs the following validations:
Dataplane IP, jumbo frames, and routing
ssh connection to all servers
Timesync
OS release
Sufficient capacity in /opt/weka
Available RAM
Internet connection availability
NTP
DNS configuration
Firewall rules
WEKA required packages
OFED required packages
Recommended packages
HT/AMT is disabled
The kernel is supported
CPU has a supported AES, and it is enabled
Numa balancing is enabled
RAM state
XFS FS type installed
Mellanox OFED is installed
IOMMU mode for SSD drives is disabled
rpcbind utility is enabled
SquashFS is enabled
noexec mount option on /tmp
Note: The wekachecker
tool applies to all WEKA versions. From V4.0, the following validations are not relevant, although the tool displays them:
OS has SELinux disabled or in permissive mode.
Network Manager is disabled.
Procedure
Download the wekachecker tarball from https://github.com/weka/tools/blob/master/install/wekachecker and extract it.
From the install directory, run
./wekachecker <hostnames/IPs>
Where: Thehostnames/IPs
is a space-separated list of all the cluster hostnames or IP addresses connected to the high-speed networking. Example:./wekachecker 10.1.1.11 10.1.1.12 10.1.1.4 10.1.1.5 10.1.1.6 10.1.1.7 10.1.1.8
Review the output. If failures or warnings are reported, investigate them and correct them as necessary. Repeat the validation until no important issues are reported. The
wekachecker
writes any failures or warnings to the file:test_results.txt
.
Once the report has no failures or warnings that must be fixed, you can install the WEKA software.
wekachecker report example
Last updated