Cloud Configuration Settings (YAML)

Platform

Name

Description

Type

Default

platform.hostname

Domain name assigned to the cluster. This setting is mandatory.

string

null

platform.imageRegistry

Repository where the image of the microservices are stored.

string

rulexms.azurecr.io/rulex/ms/

platform.imageVersion

Default image version for each Rulex microservice. It can be overridden by setting the .IMG version for a specific microservice.

string

1.0.57-121

platform.frontend.enable

If true, all frontend microservices are installed.

bool

true

platform.frontend.namespace

Namespace where Rulex Platform frontend microservices are located.

string

platform_frontend

platform.backend.enable

If true, all backend microservices are installed.

bool

true

platform.backend.namespace

Namespace where platform backend microservices are located.

string

platform_backend

platform.authServer

Type of authentication server [‘null’. ‘internal’].

string

internal

platform.authServerUrl

Authentication server url. Required if the authentication server is external.

string

null

platform.environment

Type of environment [test, prod] (testing only).

string

prod

platform.commonDeployAnnotations

Add extra annotation to all the deployments. This will be merged with ms<MS_NAME>.deployAnnotations. If there is a common key the value in ms<MS_NAME>.deployAnnotations will be used.

dict

{}

platform.commonPodAnnotations

Add extra annotation to all the pods. This will be merged with ms<MS_NAME>.podAnnotations. If there is a common key the ms<MS_NAME>.podAnnotations will be used.

dict

{}

platform.test.product_key

Production key for test users (testing only).

string

null

platform.test.test_users

List of names and passwords for test users (testing only).

string

null

platform.balancing.active

Default settings for enabling or disabling balancing [‘True’, ‘False’].

string

False

platform.balancing.metricsComputation

Default settings for enabling or disabling metrics computation [‘True’, ‘False’].

string

False

platform.balancing.type

Default settings for the balancing type.

string

balanced

platform.scaling.keda.enable

Flag to enable or disable Keda autoscaling.

bool

false

platform.scaling.keda.rabbitHost

RabbitMQ host, with the following format ://:/vhost.

string

null

platform.log.loglevel

Log level [‘debug’, ‘info’, ‘warning’, ‘error’].

string

debug

platform.log.broker

Enable messaging the specific log.

bool

true

platform.log.metrics

Enable log of the metrics.

bool

false

platform.log.apiwatcher

Enable log of apiwatcher.

bool

true

platform.log.sensitive

Enable log of sensitive data.

bool

false

platform.log.parserAlive

Enable log of parser keepAlive

bool

true

platform.imageCredentials

Credentials to pull an image from a private container image registry or repository.

yaml

{}

platform.imageCredentialsSecretName

Name of the secret that stores the credentials of the container registry where images are stored.

string

null

platform.containerSecurityContext

Defines privileges and access control settings for a pod or container.

yaml

{}

platform.licmanurl

Url where the License Manager can be reached.

string

https://licensemanager.rulex.cloud/license

platform.extraEnvVars

Extra environment variables to be set for all microservices.

dict

{}

Persistent volume claim

Name

Description

Type

Default

persistentVolumeClaim.enable

If true, the persistentVolume resource is deployed.

bool

true

persistentVolumeClaim.storageSizeRequested

Storage size.

string

3000Gi

persistentVolumeClaim.volumeMode

Volume modes of persistent volumes.

string

Filesystem

persistentVolumeClaim.storageClassName

Name of the storage class.

string

null

persistentVolumeClaim.annotations

Add extra annotations to the persistentVolumeClaim.

dict

{}

Persistent volume

Name

Description

Type

Default

persistentVolume.enable

If true, creates a persistent volume and the secret with the StorageAccount credentials.

bool

false

persistentVolume.volume_name

Name of the PersistentVolume.

string

azurefile_volume

persistentVolume.storageDefinition

Storage account driver and configuration.(kubernetes documentation)

yaml

{}

persistentVolume.storageAccountSecret

Storage account of the authentication secret.

yaml

{}

persistentVolumeClaim.annotations

Add extra annotations to the persistentVolume.

dict

{}

Broker

Name

Description

Type

Default

msBroker.enable

If true, the ms_broker will be installed.

bool

true

msBroker.image.name

Docker image name of ms_broker.

string

rabbitmq

msBroker.image.version

Docker image version of ms_broker.

string

3.10.5

msBroker.image.registry

The registry where the image of the broker is stored. If not specified, use dockerHub.

string

null

ms.imageCredentialsSecretName

Name of the secret that stores the credentials of the container registry where images are stored. If not present, the platform.log.loglevel values are used.

string

registrycredentials

msBroker.replicaCount

Number of replicas indicating how many pods should be maintained.

string

1

msBroker.resources.requests.memory

Required memory for the pod.

string

2Gi

msBroker.resources.requests.cpu

Required CPU for the pod.

string

200m

msBroker.resources.limits.memory

Memory limit that the pod can use.

string

4Gi

msBroker.resources.limits.cpu

CPU limit that the pod can use.

string

2000m

platform.imageCredentials

Credentials to pull broker image from a private container image registry or repository. Required if the broker docker image is in a private registry.

yaml

{}

msBroker.imageCredentialsSecretName

Name of the secret that stores the credentials of the container registry where images are stored. Required if the broker docker image is in a private registry.

string

null

msBroker.log.connection_level

Connection lifecycle events log [debug.info, warning, critical, none].

string

debug

msBroker.log.channel_level

Channel log level.

string

debug

msBroker.log.queue_level

Queue log level.

string

debug

msBroker.log.default_level

All other log entries.

string

info

msBroker.log.console_level

Log level for the console output.

string

debug

msBroker.consumer_timeout

Timeout on consumer delivery acknowledgement.

string

1800000

msBroker.deactivated_consumer_timeout

Deactivated Delivery Acknowledgement timeout.

bool

true

Internal authentication server

(used only if platform.authServer == “internal”)

Name

Description

Type

Default

msAuth.enable

If true, the authentication server will be installed.

bool

true

msAuth.image.name

Docker image name of authentication server.

string

auth

msAuth.image.version

Docker image version of authentication server.

string

1.0.53.71

msAuth.replicaCount

Number of replicas indicating how many pods should be maintained.

string

1

msAuth.resources.requests.memory

Required memory for the pod.

string

200M

msAuth.resources.requests.cpu

Required CPU for the pod.

string

500m

msAuth.resources.limits.memory

Memory limit that the pod can use

string

1Gi

msAuth.resources.limits.cpu

CPU limit that the pod can use.

string

1

msAuth.annotations

Annotations of the statefullSet of the authentication server.

list of string

{}

msAuth.logging.output

Alternates between the “default” log output format or “json” format.

list of string

{}

msAuth.logging.level

Allowed values: “FATAL”, “ERROR”, “WARN”, “INFO”, “DEBUG”, “TRACE”, “ALL”, “OFF”.

list of string

{}

msAuth.readinessProbePath

Path of the readinessProbe.

string

/auth/health/ready

msAuth.adminUsername

Authentication server admin username.

string

null

msAuth.adminPassword

Authentication server admin password.

string

null

msAuth.credentialSecret.secretName

Name of the secret where the credentials of the authentication server are stored.

string

authserver-credentials

msAuth.credentialSecret.create

If true, it creates the secret where the credential of the authentication server are stored.

bool

true

msAuth.credentialSecret.usernameKey

Key of the secret where the username of the authServer is stored.

string

AUTH_USERNAME

msAuth.credentialSecret.PasswordKey

Key of the secret where the password of the authServer is stored.

string

AUTH_PASSWORD

msAuth.importRealm

Imports a Realm during start-up.

bool

false

msAuth.realm

Name of the authentication server realm.

string

rulex

msAuth.extraEnvVars

Extra environment variables to be set on the Keycloak container.

dict

{}

msAuth.extraVolumeMounts

Optionally specify an extra list of additional volumeMounts for authServer container(s).

list

[]

msAuth.extraVolumes

Optionally specify an extra list of additional volumes for authServer pods.

list

[]

msAuth.externalDatabase.enable

If true, the authentication server will use an external database.

bool

true

msAuth.externalDatabase.db_vendor

The database vendor [mariadb, mssql, mysql, oracle, postgres].

string

postgres

msAuth.externalDatabase.host

The hostname of the default JDBC URL of the chosen vendor.

string

null

msAuth.externalDatabase.port

The port of the default JDBC URL of the chosen vendor.

string

null

msAuth.externalDatabase.dbName

The database name of the default JDBC URL of the chosen vendor.

string

null

msAuth.externalDatabase.secretName

Secret where the database credentials are stored.

string

authServerDbCredentialsSecret

msAuth.externalDatabase.username

Username of the external DB.

string

msAuth.externalDatabase.password

Password of the external DB.

string

Init

Name

Description

Type

Default

msInit.enable

If true, init will be enabled.

bool

true

msInit.image.name

Docker image name.

string

init

msInit.image.version

Docker image version. If not present, the platform.imageVersion value is used.

string

latest

msInit.unique_name

Always creates a new job with a unique name.

bool

true

msInit.stopIstioProxy

Enable automatic stop istio-proxy when the init job terminates.

bool

false

msInit.ttlSecondsAfterFinished

Cleans up finished msInit Job automatically after a specified period. If the field is unset, this Job won’t be cleaned up.

int

null

msNotify

Name

Description

Type

Default

Watch parameters of MS_NAME.

msNotify.mail.SSL

SSL on e-mail server.

bool

null

msNotify.mail.apikey

Mail apikey.

string

null

msNotify.mail.auth

Mail auth.

string

null

msNotify.mail.port

Port mail server.

int

null

msNotify.mail.pwd

Password mail account.

string

null

msNotify.mail.sender

Sender mail.

string

null

msNotify.mail.server

Server mail URL.

string

null

msNotify.mail.subaccount

Mail subaccount.

string

null

msNotify.mail.type

Mail protocol type.

string

null

msNotify.mail.username

Username mail account.

string

null

MS_NAME

Name

Description

Type

Default

ms<MS_NAME>.enable

If true, the microservices will be installed.

bool

true

ms<MS_NAME>.image.name

Docker image name.

string

<MS_NAME>

ms<MS_NAME>.image.version

Docker image version.

string

latest

ms<MS_NAME>.image.pullPolicy

Guides the Kubelet service on how to pull the image. If not present, the platform.imagePullPolicy value is used.

string

null

ms<MS_NAME>.replicaCount

Number of replicas indicating how many pods should be maintained. For microservices with autoscaler enabled and managed by Keda (session, compute and control) this number is ignored and activeReplicaCount, backupReplicaCount are used to estimate the number of pods to be maintained (replicaCount = activeReplicaCount+backupReplicaCount).

string

1

ms<MS_NAME>.balancing.activeReplicaCount

Initial number of active replicas, for the microservices with autoscaler enabled and managed by Keda, indicating how many pods should be maintained. If not set, the default value is 1.

string

null

ms<MS_NAME>.balancing.backupReplicaCount

Number of backup replicas indicating how many Pods should be maintained. If not set, the default is 1.

string

null

ms<MS_NAME>.resources.requests.memory

Required memory for the pod.

string

` `

ms<MS_NAME>.resources.requests.cpu

Required CPU for the pod.

string

` `

ms<MS_NAME>.resources.limits.memory

Memory limit memory that the pod can use.

string

` `

ms<MS_NAME>.resources.limits.cpu

CPU limit that the pod can use.

string

` `

ms<MS_NAME>.deployAnnotations

Annotations specific for the current deploy. This will be merged with ‘platform.commonDeployAnnotations’. If there is a common key the value in ms<MS_NAME>.deployAnnotations will be used.

dict

{}

ms<MS_NAME>.podAnnotations

Annotations specific for the pods of the current microservice. This will be merged with platform.commonPodAnnotations. If there is a common key, the value in ms<MS_NAME>.podAnnotations will be used.

dict

{}

ms<MS_NAME>.affinity

Pod & node affinity/antiAffinity. By default affinity is not set.

yaml

{ }

ms<MS_NAME>.balancing.active

Default settings for enabling or disabling balancing [‘True’, ‘False’].

string

null

ms<MS_NAME>.balancing.metricsComputation

Settings for enabling or disabling metrics computation [‘True’, ‘False’]. If null, the value under platform.balancing.metricsComputation is used.

string

null

ms<MS_NAME>.balancing.type

Default settings for the balancing type. If null, the value under platform.balancing.type is used.

string

null

ms<MS_NAME>.log.loglevel

Log level configuration. If not present, the platform.log.loglevel value is used.

string

null

ms<MS_NAME>.log.broker

Enable messaging specific log. If not present, the platform.log.broker value is used.

bool

null

ms<MS_NAME>.log.metrics

Enable log of the metrics. If not present, the platform.log.metrics value is used.

bool

null

ms<MS_NAME>.log.apiwatcher

Enable log of apiwatcher. If not present, the platform.log.apiwatcher value is used.

bool

null

ms<MS_NAME>.imageCredentialsSecretName

Name of the secret that stores the container registry credentials, where images are stored. If not present, the platform.imageCredentialsSecretName value is used.

string

null

ms<MS_NAME>.containerSecurityContext

Defines privileges and access control settings for a container. If not present, the platform.containerSecurityContext value is used.

yaml

{ }

ms<MS_NAME>.extraEnvVars

Extra environment variables to be set for a specific microservice.

list

[]

Ingress

(only for Kubernetes)

Name

Description

Type

Default

ingress.enabled

If true, the ingress will be created.

bool

true

ingress.embedEnable

If true, it creates the Ingress for the embedded ms.

bool

false

ingress.ingressClassName

Specifies the ingress-controller.

string

nginx

ingress.annotations

Extra annotation of the ingress.

list

{}

ingress.tlsSecretName

Name of the secret containing TLS certificate and key.

string

tls-secret

ingress.secretProvider.enable

If true, the secretProvider will be created.

bool

true

ingress.secretProvider.name

Name of the secretProvider.

string

ingress-tls-secret-provider

ingress.secretProvider.objectName

Name of the secret stored on the keyvault containing TLS certificate and key.

string

“”

Route

(only for OpenShift)

Name

Description

Type

Default

routes.enabled

If true, the route for OpenShift will be created.

bool

false

routes.tlsSecretName

Name of the secret containing the TLS certificate and key. If None, the self-signed OpenShift certificate is used.

string

null

Istio

(if you want to add istio service mesh support - istio product should be already installed in your architecture)

Name

Description

Type

Default

istio.enable

If true, Istio is installed.

bool

false

istio.namespace

The Istio namespace.

string

istio-system

istio.ingressgateway.enable

If true, the Istio ingressGateway is installed.

bool

default

istio.ingressgateway.name

Name of the Istio ingressgateway.

type

default