Add Workers (On Separate Machine)¶
Before you start¶
Goal
- Add Workers to a configured Altair SLC Hub.
Prerequisites
- The address of the worker node and the Hub server.
- A configured Hub server.
- A machine for the worker node.
- Altair SLC Hub configuration privileges for the server host and worker node.
Altair SLC Worker Node Installation¶
Some features require that worker nodes are created and registered with the Hub. The worker nodes are where the main Altair SLC workloads are executed. This ensures that those workloads do not interfere with the operation or stability of the main Altair SLC Hub services.
Worker Registration¶
By default the Altair SLC Hub secures its communications with TLS by means of a self-signed Certificate Authority. This is detailed in the Internal TLS Reference.
Some customers may prefer to secure these communications using a different Certificate Authority, for example a public Root Certificate Authority or a Subordinate Certificate Authority. If this is the case, please follow the alternative worker registration process Alternate Internal Certificate Authority
The first step involves running a command on the main Hub server. This produces a token that is valid for 5 minutes.
hubctl worker add
This will produce a command line which should be copied and executed on the worker node machine.
Warning
Once this command is executed, the worker node will become visible to the Hub server and eligible for workload execution. If the worker should not be used yet, make use of execution profiles to limit workloads to suitable worker nodes.
This is an example of what the command should look like, do not use this directly:
hubctl worker register hubhost.domain.local:9093 +FPFRu8Wk764FMhUTDX3DQ==:cqO+y8JZrTjpSqQ2s7fCFQ==
Note
The command line must be run as Administrator on Windows.
This process has to be completed within 5 minutes. The generated token can be
reused multiple to register multiple worker machines within the 5 minute period.
Run the hubctl worker add
command again once the expiry time has passed to
generate a new token if necessary.
TLS Certificate Installation (Windows only)¶
Some worker applications, such as hub package pipeline nodes, require that a TLS CA certificate is installed on the operating system.
If internal communications are secured by the Altair SLC Hub CA Service, a certificate can be installed from the command line of a worker machine as follows:
certutil -addstore Root [var directory]\ca\public\CA.cert.pem
Note
The command shell, cmd
, must be run as Administrator.
If internal communications are being secured by an external Certificate Authority the CA certificate should have already been installed in the operating system when preparing the worker node for registration.
Verify TLS Communications¶
To verify that the Hub server and the worker node can communicate with TLS, the hubctl portcheck
commands can be used.
First, ensure the Altair SLC Hub services are not active by running the following command on the worker node:
hubctl service stop
You will need to know the hostname of the worker node. On the worker node, to find this out, run:
hubctl config print internalnetwork.hostname
Next, run the following command on the worker node host:
hubctl portcheck worker
This command will start and then wait for communication. Once the test has completed successfully it will exit automatically.
Then run the following command on the hub server host:
hubctl portcheck server <worker-host-name>
Where <worker-host-name>
is the host name of the worker.
The command run on the Hub server host will perform various tests of communication between the Hub server and the worker node.
Once the test is complete, you can now start the slchub.nomad service on the worker node by running:
hubctl service start nomad
Enable Services¶
The installation process installs the software and installs systemd
unit files to the
/usr/lib/systemd/system
directory for Linux installations and service files to C:\Program Files\Altair\SLC Hub\services
for Windows installations.
However, the installation process does not start or enable any services.
The hubctl
command can be used to control services that
make up the Altair SLC Hub software.
To start the Altair SLC Hub worker node service:
hubctl service start
Check that it is running:
hubctl service status
To configure the Altair SLC Hub service so that it will be started automatically on boot:
hubctl service enable
Verification¶
The Altair SLC Hub portal contains a page that gives details of the registered workers.
Open the Hub Administration application in the portal, and from the navigation panel select Cluster Nodes. Verify that the registered worker is included in the list of known cluster nodes.