Installing On-Premise

<< Click to Display Table of Contents >>

RayManageSoft Unified Endpoint Manager > 3.1 > Installation Guide > Installation 

Installing On-Premise

Hardware Requirements

The following requirements need to be met in order to host the RayManageSoft Unified Endpoint Manager container image. The minimum requirements are:

4 CPUs

8 GB RAM

50 GB disk space

 

1. Create an SQL Server

Set-up a new MS SQL Server or use an existing MS SQL Server which is accessible from the hosting environment.

 

2. Install Container Images

The installation on an on-premises environment is straightforward with the usage of the compose file, which requires only minimal adjustment.

 

docker-compose.yml

The file has the following content:

version: "3.7"

services:

 

  frontend:

      image: raynetgmbh/raymanagesoft-uem-frontend:2.4-stable-linux

      hostname: "rmsc_frontend"

      ports:

        - "80:80"

      restart: always

      networks:
        - app-tier

      env_file:

        - env.list

 

  backend:

      imageraynetgmbh/raymanagesoft-uem-backend:2.4-stable-linux

      hostname: "rmsc_backend"

      depends_on:

        - frontend

      ports:

        - "8080:80"

      restart: always

      networks:

        - app-tier

      env_file:

        - env.list

 

Additionally, one file called env.list which contains environment variables is needed:

 

env.list

The file has the following content:

ConnectionStrings__System="server=myServer;database=myRMSUEMDb;
   uid=myUser;password=myPass;"

ConnectionStrings__ResultDatabase="server=myServer;database=master;
   uid=myUser;password=myPass;"

 

BackendConfig__Endpoint="yourBackendDnsName"

BackendConfig__Port="8080"

BackendConfig__Protocol="http"

BackendConfig__Authentication="false"

 

Integration__PackageStore__Endpoint="http://packages
   .packagestore.com/RayPackageService"

Integration__PackageStore__Url="https://packaging.packagestore.com"

Integration__PackageStore__ParallelProcessing=3

 

Integration__Catalog__Url="https://rayventorycatalog.raynet.de"

Integration__Catalog__ConfidenceRange = 90

Integration__Catalog__Timeout = 200000

Integration__Catalog__MaxAttempts = 3

Integration__Catalog__DevicesBatchSize = 10

Integration__Catalog__FingerprintBatchSize = 100

Integration__Catalog__TotalNumberOfDevices = 0

 

Integration__Azure__AzureApiUrl="https://graph.microsoft.com/"

Integration__Azure__AzureInstance="https://login.microsoftonline.com/
   {0}"

 

DbMaintenanceConfig__FileStorageCleanupJob = "0 0 3 1/1 * ?"

DbMaintenanceConfig__SystemLogCleanupJob = "0 0 4 1/1 * ?"

DbMaintenanceConfig__ActivityLogCleanupJob = "0 0 5 1/1 * ?"

DbMaintenanceConfig__DeviceInventoryCleanupJob = "0 0 6 1/1 * ?"

DbMaintenanceConfig__UpdateInstallStatesJob = "0 0 0/4 ? * * *"

 

finger1

Be aware:

The BackendConfig_Authentication variable should be set to false at the start. After all managed devices have been upgraded and user/password for download and upload have been configured the value can be set to true.

 

Depending on the storage hoster, one of the following set of parameters needs to be added to the env.list file:

 

Azure:

StorageConfig__Default:Azure

StorageConfig__Azure__Endpoint:yourStorageEndpoint
This is the connection string property of Azure Storage. It can be found in the Azure Portal > Storage Accounts > Security + Networking > Access Keys > Connection String (key1 or key2).

StorageConfig__Azure__EndpointUrl:yourStorageEndpointUrl
This is the primary endpoint property of your Azure Storage. It can be found in the Azure Portal > Storage Accounts > Settings > Endpoints > Blob Service.

StorageConfig__Azure__TokenTimeout:60

 

AWS:

StorageConfig__Default:AWS

StorageConfig__AWS__AccessKey=yourAWSAccessKey
This is the access key received during the setup of the AWS IAM user.

StorageConfig__AWS__SecretKey=yourAWSSecretKey
This is the secret key received during the setup of the AWS IAM user.

StorageConfig__AWS__Region=eu-central-1
This is the region which should be used to host the storage.
A full list of the regions can be found here: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html.

 

MinIO:

StorageConfig__Default:MinIO

StorageConfig__MinIO__Endpoint=yourMinIOEndpoint (e.g. play.min.io:80)
The endpoint of the used MinIO instance (ip:port) or (fqdn:port)

StorageConfig__MinIO__AccessKey=yourMinIOAccessKey
The access key/user that has been configured during the MinIO setup.

StorageConfig__MinIO__SecretKey=yourMinIOSecretKey
The secret key/password that has been configured during the MinIO setup.

StorageConfig__MinIO__SSL=true
A boolean value indictating whether the MinIO server requires/uses an https connection or not (the usage of an https connection is recommended).

 

Save all files in the same folder, so that the folder contains the following files:

docker-compose.yml

env.list

 

Adjust the values accordingly, paying attention to connection strings and storage credentials.

 

finger1

Refer to Appendix A: Environment variables to find out more about these values.

 

Once both files are ready, open a PowerShell window or a terminal of your choice, navigate to the folder where both files exist and execute the following command:

 

Ensure that no container is running:

 docker-compose down

 

Ensure that the newest version of the image is used:

 docker-compose pull

 

Start all required containers and let them run in the background (deamon):

 docker-compose up -d

 

These steps can be repeated in the future to perform an update of the instances with a minimal downtime.