Add clients
This page describes how to add clients to a bare-metal cluster.
About client hosts
Client hosts are used to running applications that need to access the Weka filesystems. They do not contribute CPUs or drives to the cluster and only connect to the cluster to use its filesystems.
Add stateless clients
To use the Weka filesystems from a client host, all that is needed is to call the mount command. The mount command automatically installs the software version, and there is no need to join the client to the cluster.
To mount a filesystem in this manner, first, install the Weka agent from one of the backend instances and then mount the filesystem. For example:
For the first mount, this will install the Weka software and automatically configure the client. For more information on mount and configuration options, refer to Mounting Filesystems Using the Stateless Clients Feature.
It is possible to configure the client OS to automatically mount the filesystem at boot time. For more information refer to Mounting Filesystems Using fstab or Mounting Filesystems Using autofs.
Note: Clients can be deployed on diskless-servers. They can use RAM for Weka client software and NFS mount for the traces. For more information, contact the Weka Support Team.
Note: The different clients must have a unique IP and FQDN.
Add stateful clients which are always part of the cluster
Note: It is possible to add instances that do not contribute resources to the cluster but are used for mounting filesystems. It is recommended to use the previously described method for adding client instances for mounting purposes. However, in some cases it could be useful to permanently add them to the cluster, e.g., to use these instances as NFS/SMB servers which are always expected to be up.
Stage 1: Install the Weka software
Verify that the Weka software is installed on the client host according to the installation instructions. For further information, see Obtaining the Weka Install File and Stage 1 in Weka System Installation Process.
Note: All hosts (clients and backends) in a Weka system cluster must use the same software version. If attempts are made to mix multiple versions, the new hosts will fail to join the cluster.
Stage 2: Join the cluster
Command: weka cluster host add
Once the client host is in the stem mode (this is the mode defined immediately after running the install.sh
command), use the following command line on the client host to add it to the cluster:
weka -H <backend-hostname> cluster host add <client-hostname>
Parameters in command line
Name
Type
Value
Limitations
Mandatory
Default
backend-hostname
String
IP/hostname of one of the existing backend instances in the cluster
Existing backend IP/FQDN
Yes
client-hostname
String
IP/hostname of the client currently being added
Unique IP/FQDN
Yes
Note: On completion of this stage, the host-ID of the newly added host will be received. Make a note of it for the next steps.
Stage 3: Configure the host as a client
Command: weka cluster host cores
To configure the new host as a client, run the following command:
weka cluster host cores <host-id> <cores> --frontend-dedicated-cores=<frontend-dedicated-cores>
Parameters in command line
Name
Type
Value
Limitations
Mandatory
Default
host-id
String
Identifier of the host to be added to the cluster
Must be a valid host identifier
Yes
cores
Number
Number of physical cores to be allocated to the Weka client
Maximum 19 cores
Yes
frontend-dedicated-cores
Number
Number of physical cores to be dedicated to FrontEnd processes
For clients, the number of total cores and frontend-dedicated-cores must be equal
Yes, in order to configure a host as a client
Stage 4: Configure client networking
Command: weka cluster host net add
Note: If the new client is to communicate with the Weka system cluster over the kernel UDP stack, it is not necessary to run this command.
If a high-performance client is required and the appropriate network NIC is available, use the following command to configure the networking interface used by the client to communicate with the Weka system cluster hosts:
weka cluster host net add <host-id> <device> --ips=<ips> --netmask=<netmask> --gateway=<gateway>
Parameters in command line
Name
Type
Value
Limitations
Mandatory
Default
host-id
String
Identifier of the host to be added to the cluster
Must be a valid host identifier
Yes
device
String
Network interface device name e.g., eth1
Must be a valid network device name
Yes
ips
IP address
The IP address of the new interface
Must be a valid IP address
Yes
gateway
IP address
The IP address of the default routing gateway
The gateway must reside within the same IP network of ips
(as described by netmask
).
Not relevant for IB / L2 non-routable networks.
No
netmask
Number
Number of bits in the netmask, e.g., the netmask of 255.255.0.0
has 16
netmask bits
Describes the number of bits that identify a network ID (also known as CIDR).
No
Note: When configuring an InfiniBand client, do not pass the --ips
, --netmask
and --gateway
parameters.
Note: InfiniBand/Ethernet clients can only join a cluster with the same network technology connectivity. It is possible to mix InfiniBand and Ethernet clients in the same cluster as long as the cluster backends are connected to both network technologies.
Stage 5: Apply the host configuration
Command: weka cluster host apply
After successfully configuring the host and its network device, run the following command to finalize the configuration by activating the host:
weka cluster host apply <host-id> [--force]
Parameters in command line
Name
Type
Value
Limitations
Mandatory
Default
host-id
Comma-separated string
Identifier of the host to be added to the cluster
Must be a valid host identifier
Yes
force
Boolean
Do not prompt for confirmation
No
Off
Last updated