Welcome to ELAM Solutions Helpcenter

All topics /
Categories /
Getting started
/
On-Premise: Installation requirements and use

On-Premise: Installation requirements and use

Published:
October 29, 2024
Updated:
October 29, 2024
From:
Waldemar

This article gives you basic information about ELAM Solutions own hosting and its system requirements.

Requirements for the server software

The ELAM Solutions software can be installed on a server that supports at least MicroK8s (a lightweight Kubernetes distribution) in version v1.28.3. Linux (Ubuntu 22.04 or higher) is required as the operating system.

Note: Windows Server is not possible due to missing components.

Server hardware requirements

Minimum hardware requirements are based on the number of stations used in ELAM Solutions.

Minimum requirements
Stations OS CPU cores RAM (GB) SSD (GB)
5 Linux 6 cores (a 2,4 GHz) 16 ~ 50
10 Linux 6 cores (2,4 GHz) 24 ~ 100
20+ Linux 12 cores (2,4 GHz) 32 ~ 100 +

Requirements for the installation & updates of ELAM Solutions

The complete installation package for ELAM Solutions is made available in an Azure repository. The installation package is loaded from the repository and installed on the server. An active internet connection on the server is required for this process.

For the installation of ELAM Solutions On-Premise software, a server certificate, a key file, and the root certificate are needed. These are essential to ensure secure (encrypted) communication between the server and the client.

In this context, the configuration and use of SSL/TLS certificates for secure communication on a server are described. Here is an explanation of the terms:

1. Server Certificate (.crt):

This is the SSL/TLS certificate specifically issued for the server. It identifies the server and is used to establish a secure connection (e.g., HTTPS). It contains information about the server, the domain name, and the public key used for encryption.

2. Key File (.key):

The .key file contains the server's private key. This key is used together with the public key (in the server certificate) to decrypt encrypted data traffic. The private key remains on the server and is not made public.

3. Root Certificate (.crt):

The root certificate is the certificate issued by a Certificate Authority (CA). This certificate is used to verify that the server certificate comes from a trusted source. The client uses the root certificate to verify the server's identity. In many cases, the root certificate can be combined with intermediate certificates to form a certificate chain.

What is a Certificate Chain?

A certificate chain is a sequence of certificates that build upon each other to establish trust in a certificate. The chain starts with the server certificate and ends with a trusted root certificate. In between, there may be intermediate certificates that transfer the trust from the root CA to the server certificate. This structure allows trust to be built step by step.

Example of a Certificate Chain:

  • Root Certificate: The topmost certificate in the hierarchy, issued by a trusted Certificate Authority (CA). It is often pre-installed on clients.
  • Intermediate Certificate: A certificate issued by the root CA that is used to issue additional certificates (e.g., for servers).
  • Server Certificate: The specific certificate for the server, ultimately issued by the intermediate CA.

2. Addresses and ports

The following addresses and ports must be enabled for installation on the server:

  • API access
    • api.snapcraft.io:443
    • dashboard.snapcraft.io:443
    • login.ubuntu.com:443
  • Download CDNs
    • *.snapcraftcontent.com:443
    • *.ubuntu.com:443
    • *.launchpad.net:443
    • *.docker.io:443
  • Azure Repository
    • armgenconreg.azurecr.io:443
    • armbrusterengineering.github.io:443

How does it work technically?

Helm charts are used for installations or updates. A Helm Chart is an installation package for Kubernetes applications. It enables the installation, management and updating of ELAM Solutions software in a Kubernetes cluster.

  1. Creating the Helm chart: A developer or administrator creates a Helm chart that contains the Kubernetes resources (such as pods, services, deployments) and the configuration parameters for the ELAM Solutions software.
  2. Installation/Update triggern:
    • With a command such as helm install (for the initial installation) or helm upgrade (for updates), the Helm chart is executed in the Kubernetes cluster.
    • Helm reads the configuration files and then creates/updates the necessary Kubernetes resources.
  3. Deployment in the Kubernetes cluster: Kubernetes then takes care of the deployment of the software based on the information in the Helm Chart. It automatically ensures that the desired version of the software is running and updated.

3. E-Mail Server

In order for e-mails to be used for user logins, parameters of an e-mail server must be provided so that the ELAM Solutions On-Premise software can send e-mails.

List and explanation of the individual parameters:

  1. Host: The address of the email server (e.g. smtp.example.com). ELAM Solutions uses this host to connect to the email server.
  2. User (optional): The user name for logging in to the email server. Some servers require this for authentication (e.g. an e-mail address or a user name). If the server does not require authentication, this parameter can be omitted.
  3. Password (optional): The password for the user to authenticate themselves on the email server. This is required if the email server requires a login. Otherwise it can be omitted.
  4. Port: The communication port used by the email server. Typically, port 25 is used for unencrypted connections or 587 for STARTTLS, and port 465 for SSL-encrypted connections.
  5. SSL: Specifies whether the email server uses an encrypted connection via SSL/TLS. Set it to true if SSL is required or to false if not.
  6. STARTTLS: A method to start an encrypted connection after the connection has been established via an unencrypted port (e.g. port 587). This should be set to true if the server supports STARTTLS.
  7. From: The email address that is displayed as the sender in the emails. This is the address from which the emails are sent.