Skip to content

Planning for Installation

Operating System

Altair SLC Hub software is currently only supported on RPM based RedHat family Linux distributions equivalent to RHEL version 8 or later. Support for other Linux distributions may be added in future releases. Contact Altair support if you have a requirement for alternative platforms.

Altair SLC Hub software is supported on Windows.

Reference Architectures.

The Altair SLC Hub can run in corporate networks and with cloud providers.

The following image displays the structure of a Altair SLC Hub:

Image

The Altair SLC Hub consists of a Hub Server machine and a number of Hub Worker machines. There is a PostgreSQL Database backing the Altair SLC Hub and an Object Store to preserve the results from Jobs and Pipelines. There is a Shared File System between the Hub Server and all the Hub Workers. The Altair SLC Hub connects to LDAP to syncronise its users with a network's users. The Altair SLC Hub may be connected to an E-mail Server to allow the sending of e-mails.

Examples of reference configurations in cloud providers are given below:

Azure

Amazon Web Services

Terraform and Ansible scripts to bring up a Altair SLC Hub in different cloud providers can be seen here and provide complete setup examples

Installation alongside Altair SLC Hub 4

There is no need to uninstall an installation of the previous generation of Altair SLC Hub (World Programming Hub 4) before proceeding with an installation of this generation of Altair SLC Hub.

Altair SLC

The Worker Nodes require an installation of Altair SLC. The minimum required version is 2023.1.

Host permissions

Ensure that you have Administrator (root) privileges on the host for installation.

None of the post-installation configuration steps will require Administrator privileges.

Ensure that you have local Administrator privileges on the host. Only machine level installation is supported, not user level installation.

Most of the post-installation configuration steps will also require Administrator privileges.

Web Browser

The main user interface for the Altair SLC Hub software is provided as a web application. Supported browsers are:

  • Google Chrome
  • Mozilla Firefox
  • Microsoft Edge

In all cases, the currently supported released versions of the browser are supported by Altair SLC Hub.

Ingress

Altair SLC Hub allows different network configurations in a variety of platforms.

It is important to understand the concept of the ingress address of the Altair SLC Hub, and the internal ingress address. The ingress address is the address that browsers and other client will use to access the Altair SLC Hub. The internal ingress address is the address that workers will use to access the Altair SLC Hub.

These internal and external ingress addresses may be the same, as is often the case in corporate networks. The diagram below is an example of machines in a corporate network where the Altair SLC Hub ingress address is the same as the internal ingress address, and the Altair SLC Hub is accessed directly by the hub.company.com address.

Image

In different configurations, such as cloud providers, the ingress address of the Hub may be different from the internal ingress address. The diagram below shows an example where the Altair SLC Hub ingress address is hub.external.com, but each machine within the internal network communicates with a .company.internal address.

Image

Note

It is important to understand how the machines will communicate with each other so that the addresses can be configured correctly during the installation. Different ingress addresses, or non-default internal ingress addresses will need to be configured manually as these cannot be detected automatically.

Database

Altair SLC Hub requires a database for storing data.

Out the box, Altair SLC Hub provides a database that can be used with no further configuration. It is however recommend to supply your own database.

When installing Altair SLC Hub in a cloud environment, we recommend using the cloud provider's native PostgreSQL offering. This will provide a database with maximum up time, simple backup and restore procedures and cost savings. In a production environment, you may use an external database on a separate machine as your infrastructure allows, to allow integrations with existing servers, replication etc. You may also run an external database on the Altair SLC Hub server to allow more sophisticated setups. It is possible to use the internal database out of the box, giving a simple setup. Backup procedures must be considered here, backups should be taken regularly and stored externally inline with standard best practices.

Currently only PostgreSQL database version 13 or later is supported.

The Hub requires a dedicated logon user in the database instance. The credentials for this user are supplied to Hub in the configuration files or can be stored in Hashicorp Vault (see here for more information on Hashicorp Vault integration).

The Hub database user must have full permissions on the database instance, including CREATE permission. During the installation or upgrade process the Hub bootstrap utility is run to ensure that the correct database schemas exist in the database.

Object Store

In addition to an SQL database, Altair SLC Hub requires an object store for storing data.

When in a cloud environment, we recommend using the cloud's native object store. This will provide a store with maximum up time, simple backup and restore procedures and cost savings. In a production environment, you may use an external object on a separate machine if your infrastructure allows, to allow replication etc. You may also run an external object store on the Hub server to allow more sophisticated setups. It is possible to use the internal object store out of the box, giving a simple setup. Backup procedures must be considered here, backups should be taken regularly and stored externally inline with standard best practices.

Currently Altair SLC Hub officially supports S3 compatible object stores. We have tested compatibility with:

  • Amazon S3 in AWS
  • MinIO
  • SeaweedFS

Contact Altair support if you have a requirement for an alternative object store.

The Hub requires a dedicated logon user in the object store and a dedicated bucket for its use.

Instructions on installing and configuring MinIO locally for use by Hub are available in the Altair Community Knowledge base.

Shared Filesystem

Various features of Altair SLC Hub assume that there is a common filesystem mounted into each worker node, and also into the main server node.

Altair SLC Hub allows workloads to be run on a pool of worker machines. Typically a workload will need to access some file based resources such as data files, or program source files. Since the workload can be run on any of the workers in the pool those file resources need to be accessed in a consistent way regardless of the worker that the workload is run on. This means that those file resources would need to be on a shared filesystem that was mounted into each worker node in the same way.

The Altair SLC Hub server node also need access to the same shared filesystem. The Altair SLC Hub server provides access to those shared filesystem locations through a WebDAV interface, and so those shared filesystem locations need to be available to the Altair SLC Hub server node as well. Therefore even with an Altair SLC Hub environment with just one worker node, there need to be a shared filesystem available to both the worker node and the server node.

In the case of Altair Analytics Workbench™ Workflows, different nodes of a workflow might be executed on different Altair SLC Hub worker nodes. In order to be able to share intermediate result files between nodes in the Workflow, those intermediate result files need to be stored on a location in the shared network filesystem so that they can be accessed by subsequent Workflow nodes, regardless of which Altair SLC Hub worker node those workflow nodes are run on.

Ports and Firewalls

All communication into the Hub cluster is via TCP, routed through the Hub ingress server. Therefore, the only port that needs to be available to client machines (machines outside of the Hub cluster) is the ingress port on the Hub server machine. By default this is port 9090, but can be changed if required (see Verify Ingress for details).

Within the Hub cluster, various ports need to be available.

Ports 4647, 9091 and 9093 need to be available for communication between the Hub server and Hub workers. In addition Hub will allocate dynamic ports on Hub worker machines in a range 20000-32000. This range can be changed if required (see Dynamic Port Range Configuration for details). However, the whole range of ports must to be visible to the Hub server.

When Altair SLC Hub is installed on a Windows server, the installer ensures that appropriate firewall rules are added to the operating system for the processes that need to expose ports.

Summary

Machine type Port range Visibility
Hub Server 9090 (default) Hub clients outside cluster
Hub Server 9091, 9093 Hub workers
Hub Server 4647 Hub workers
Hub Worker 4647 Hub server (not other workers)
Hub Worker 20000-32000 Hub server (not other workers)

Hardware requirements

Memory

16GB of RAM is recommended.

Installation hard drive space

The initial Altair SLC Hub software installation requires up to 1GB of hard drive space.

Operational hard drive space

Log files for the Altair SLC Hub services are captured by systemd and in a default Linux installation are stored by journald. The disk space taken up by the log files is therefore managed by journald and limits can be configured using the standard mechanisms of journald. It is recommended that 50MB of log file space be allowed for Altair SLC Hub log files.

The log files are written to a log directory. Each of the services maintains its own log file. The log files are managed using a rolling strategy, with each service maintaining a maximum of 8 files, each of which can be up to 10MB in size.

The amount of disk space used by the database and the object store will depend on use. The amount of disk space required by running jobs will depend on use. It is recommended to have at least twice the amount of fast disk space available as memory on high load clusters as some services will store snapshots of their state to disk. This is particularly applies to the [var directory]/nomad directory.

CPU

Main server

The suggested starting point for evaluation and small workloads is four virtual CPUs. In an AWS environment one m5a.xlarge (or m5.xlarge) would be appropriate.

The number of virtual CPUs can be scaled up as necessary when traffic increases.

Worker nodes

In an AWS environment a small number of larger servers is recommended to support memory intensive workloads. The use of burst CPU is not recommended.

The suggested starting point 16 virtual CPUs.

One m5ad.4xlarge would support datasets up to a maximum size of 600 GiB.

If larger datasets must be supported then an i3.4xlarge has 3.8 TB of storage.

Note

When running the Altair SLC Hub for test and demonstration purposes these requirements can be greatly reduced. A single virtual CPU and 8 GiB of storage is usually sufficient.