From f98217845703a8f687bc474bd11871fe8253514e Mon Sep 17 00:00:00 2001 From: JeffMboya Date: Wed, 11 Sep 2024 10:13:33 +0300 Subject: [PATCH] update README Signed-off-by: JeffMboya --- .github/workflows/helm-docs.yaml | 32 +- charts/magistrala/README.md | 525 ++++++++++++++++++------------- 2 files changed, 324 insertions(+), 233 deletions(-) diff --git a/.github/workflows/helm-docs.yaml b/.github/workflows/helm-docs.yaml index d9c64590..14e1fed1 100644 --- a/.github/workflows/helm-docs.yaml +++ b/.github/workflows/helm-docs.yaml @@ -1,14 +1,30 @@ -name: Update Chart Metadata +# Copyright (c) Magistrala +# SPDX-License-Identifier: Apache-2.0 + +name: Generate Helm Docs on: pull_request: branches: - '*' -jobs: - update-chart-metadata: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: gabe565/setup-helm-docs-action@v1.0.4 - - run: helm-docs \ No newline at end of file +jobs: + generate-docs: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + repository: ${{ github.event.pull_request.head.repo.full_name }} + ref: ${{ github.event.pull_request.head.ref }} + fetch-depth: 0 + + - name: Generate Helm Docs + uses: losisin/helm-docs-github-action@v1.3.1 + with: + chart-search-root: "charts/magistrala" + values-file: "values.yaml" + output-file: "README.md" + template-files: "README.md.gotmpl" + git-push: false + fail-on-diff: true diff --git a/charts/magistrala/README.md b/charts/magistrala/README.md index 1e9e4cc7..ed52d3eb 100644 --- a/charts/magistrala/README.md +++ b/charts/magistrala/README.md @@ -1,237 +1,312 @@ -# Magistrala Helm Chart +# magistrala -Helm Chart for the Magistrala IoT Platform. +![Version: 1.0.6](https://img.shields.io/badge/Version-1.0.6-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.14.0](https://img.shields.io/badge/AppVersion-0.14.0-informational?style=flat-square) -## Prerequisites +Magistrala IoT Platform -- Helm v3 -- Stable & Bitnami Helm repos installed - ``` - helm repo add stable https://charts.helm.sh/stable - helm repo add bitnami https://charts.bitnami.com/bitnami - helm repo add jaegertracing https://jaegertracing.github.io/helm-charts - ``` -- Nginx Ingress Controller -- If using the mTLS setup: - - Certificate/Key installed as**TLS secret** - - Intermediate certificate installed as**Generic secret** +**Homepage:** -## Adding the Helm Repository +## Maintainers -The Helm charts are published via GitHub Pages. To add the repository to your Helm configuration, run the following command: +| Name | Email | Url | +| ---- | ------ | --- | +| drasko | | | +| dusan | | | -```bash -helm repo add devops-charts https://absmach.github.io/devops/ -``` +## Source Code -Update your local Helm repository cache to fetch the latest charts: +* -```bash -helm repo update -``` +## Requirements -## Installing the Chart +| Repository | Name | Version | +|------------|------|---------| +| @bitnami | postgresqlbootstrap(postgresql) | 12.5.6 | +| @bitnami | postgresqlinvitations(postgresql) | 12.5.6 | +| @bitnami | postgresqlauth(postgresql) | 12.5.6 | +| @bitnami | postgresqlspicedb(postgresql) | 12.5.6 | +| @bitnami | postgresqlthings(postgresql) | 12.5.6 | +| @bitnami | postgresqlusers(postgresql) | 12.5.6 | +| @bitnami | postgresqlui(postgresql) | 12.5.6 | +| @bitnami | postgresqlcerts(postgresql) | 12.5.6 | +| @bitnami | timescaledb(postgresql) | 12.5.6 | +| @bitnami | postgresqljournal(postgresql) | 12.5.6 | +| @bitnami | redis-things(redis) | 19.6.2 | +| @hashicorp | vault(vault) | 0.28.1 | +| @jaegertracing | jaeger | 3.1.1 | +| @nats | nats | 1.2.1 | -Once the repository is added, you can install the chart using Helm. Replace `` with your desired release name: +## Values -```bash -helm install devops-charts/magistrala -``` -This command will install the `magistrala` chart from the GitHub Pages-hosted Helm repository. +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| adapter_coap.image | object | `{}` | | +| adapter_coap.port | int | `5683` | | +| adapter_http.httpPort | int | `8008` | | +| adapter_http.image | object | `{}` | | +| auth.accessTokenDuration | string | `"1h"` | | +| auth.adminEmail | string | `"admin@example.com"` | | +| auth.adminPassword | string | `"12345678"` | | +| auth.affinity | object | `{}` | | +| auth.grpcPort | int | `8181` | | +| auth.httpPort | int | `8189` | | +| auth.image | object | `{}` | | +| auth.invitationDuration | string | `"168h"` | | +| auth.nodeSelector | object | `{}` | | +| auth.refreshTokenDuration | string | `"24h"` | | +| auth.secret | string | `"supersecret"` | | +| auth.tolerations | object | `{}` | | +| bootstrap.enabled | bool | `true` | | +| bootstrap.encKey | string | `"randomstring"` | | +| bootstrap.eventConsumerName | string | `"EventConsumerByBootstrap"` | | +| bootstrap.httpPort | int | `9013` | | +| bootstrap.image | object | `{}` | | +| bootstrap.redisESPort | int | `6379` | | +| certs.enabled | bool | `false` | | +| certs.httpPort | int | `9019` | | +| certs.image | object | `{}` | | +| certs.logLevel | string | `"info"` | | +| certs.signCAKeyPath | string | `"/etc/ssl/certs/ca.key"` | | +| certs.signCAPath | string | `"/etc/ssl/certs/ca.crt"` | | +| certs.vault.approleRoleid | string | `""` | | +| certs.vault.approleSecret | string | `""` | | +| certs.vault.namespace | string | `""` | | +| certs.vault.thingsCertsPkiPath | string | `""` | | +| certs.vault.thingsCertsPkiRoleName | string | `""` | | +| certs.vault.url | string | `""` | | +| defaults.eventStreamURL | string | `"magistrala-nats:4222"` | | +| defaults.image.pullPolicy | string | `"IfNotPresent"` | | +| defaults.image.rootRepository | string | `"magistrala"` | | +| defaults.image.tag | string | `"latest"` | | +| defaults.jaegerCollectorPort | int | `4318` | | +| defaults.jaegerTraceRatio | int | `10` | | +| defaults.logLevel | string | `"info"` | | +| defaults.natsPort | int | `4222` | | +| defaults.replicaCount | int | `3` | | +| defaults.sendTelemetry | bool | `true` | | +| envoy.image.pullPolicy | string | `"IfNotPresent"` | | +| envoy.image.repository | string | `"envoyproxy/envoy"` | | +| envoy.image.tag | string | `"v1.31-latest"` | | +| ingress.annotations | object | `{}` | | +| ingress.enabled | bool | `true` | | +| ingress.labels | object | `{}` | | +| invitations.enabled | bool | `true` | | +| invitations.httpPort | int | `9020` | | +| invitations.image | object | `{}` | | +| jaeger.agent.enabled | bool | `false` | | +| jaeger.allInOne.enabled | bool | `false` | | +| jaeger.collector.service.otlp.grpc.name | string | `"otlp-grpc"` | | +| jaeger.collector.service.otlp.grpc.port | int | `4317` | | +| jaeger.collector.service.otlp.http.name | string | `"otlp-http"` | | +| jaeger.collector.service.otlp.http.port | int | `4318` | | +| jaeger.fullnameOverride | string | `"magistrala-jaeger"` | | +| jaeger.provisionDataStore.cassandra | bool | `true` | | +| jaeger.storage.type | string | `"memory"` | | +| journal.enabled | bool | `true` | | +| journal.httpPort | int | `9021` | | +| journal.image | object | `{}` | | +| mqtt.adapter.image.pullSecrets | object | `{}` | | +| mqtt.adapter.logLevel | string | `"debug"` | | +| mqtt.adapter.mqttPort | int | `1884` | | +| mqtt.adapter.wsPort | int | `8081` | | +| mqtt.broker.image.repository | string | `"magistrala/vernemq"` | | +| mqtt.broker.logLevel | string | `"info"` | | +| mqtt.broker.mqttPort | int | `1883` | | +| mqtt.broker.persistentVolume.size | string | `"5Gi"` | | +| mqtt.broker.wsPort | int | `8080` | | +| mqtt.enabled | bool | `true` | | +| mqtt.redisCachePort | int | `6379` | | +| mqtt.redisESPort | int | `6379` | | +| mqtt.securityContext.fsGroup | int | `10000` | | +| mqtt.securityContext.runAsGroup | int | `10000` | | +| mqtt.securityContext.runAsUser | int | `10000` | | +| nats.config.cluster.enabled | bool | `false` | | +| nats.config.cluster.replicas | int | `3` | | +| nats.config.jetstream.enabled | bool | `true` | | +| nats.config.jetstream.fileStore.enabled | bool | `true` | | +| nats.config.jetstream.fileStore.pvc.enabled | bool | `true` | | +| nats.config.jetstream.memoryStore.enabled | bool | `true` | | +| nats.config.jetstream.memoryStore.maxSize | string | `"2Gi"` | | +| nginxInternal.image.pullPolicy | string | `"IfNotPresent"` | | +| nginxInternal.image.repository | string | `"nginx"` | | +| nginxInternal.image.tag | string | `"1.19.1-alpine"` | | +| nginxInternal.mtls.intermediateCrt | string | `""` | | +| nginxInternal.mtls.tls | string | `""` | | +| postgresqlauth.database | string | `"auth"` | | +| postgresqlauth.enabled | bool | `true` | | +| postgresqlauth.global.postgresql.auth.database | string | `"auth"` | | +| postgresqlauth.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlauth.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlauth.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlauth.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlauth.host | string | `"postgresql-auth"` | | +| postgresqlauth.name | string | `"postgresql-auth"` | | +| postgresqlauth.password | string | `"magistrala"` | | +| postgresqlauth.port | int | `5432` | | +| postgresqlauth.username | string | `"magistrala"` | | +| postgresqlbootstrap.database | string | `"bootstrap"` | | +| postgresqlbootstrap.enabled | bool | `true` | | +| postgresqlbootstrap.global.postgresql.auth.database | string | `"bootstrap"` | | +| postgresqlbootstrap.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlbootstrap.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlbootstrap.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlbootstrap.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlbootstrap.host | string | `"postgresql-bootstrap"` | | +| postgresqlbootstrap.name | string | `"postgresql-bootstrap"` | | +| postgresqlbootstrap.password | string | `"magistrala"` | | +| postgresqlbootstrap.port | int | `5432` | | +| postgresqlbootstrap.username | string | `"magistrala"` | | +| postgresqlcerts.database | string | `"certs"` | | +| postgresqlcerts.enabled | bool | `true` | | +| postgresqlcerts.global.postgresql.auth.database | string | `"certs"` | | +| postgresqlcerts.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlcerts.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlcerts.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlcerts.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlcerts.host | string | `"postgresql-certs"` | | +| postgresqlcerts.name | string | `"postgresql-certs"` | | +| postgresqlcerts.password | string | `"magistrala"` | | +| postgresqlcerts.port | int | `5432` | | +| postgresqlcerts.username | string | `"magistrala"` | | +| postgresqlinvitations.database | string | `"invitations"` | | +| postgresqlinvitations.enabled | bool | `true` | | +| postgresqlinvitations.global.postgresql.auth.database | string | `"invitations"` | | +| postgresqlinvitations.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlinvitations.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlinvitations.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlinvitations.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlinvitations.host | string | `"postgresql-invitations"` | | +| postgresqlinvitations.name | string | `"postgresql-invitations"` | | +| postgresqlinvitations.password | string | `"magistrala"` | | +| postgresqlinvitations.port | int | `5432` | | +| postgresqlinvitations.username | string | `"magistrala"` | | +| postgresqljournal.database | string | `"journal"` | | +| postgresqljournal.enabled | bool | `true` | | +| postgresqljournal.global.postgresql.auth.database | string | `"journal"` | | +| postgresqljournal.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqljournal.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqljournal.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqljournal.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqljournal.host | string | `"postgresql-journal"` | | +| postgresqljournal.name | string | `"postgresql-journal"` | | +| postgresqljournal.password | string | `"magistrala"` | | +| postgresqljournal.port | int | `5432` | | +| postgresqljournal.username | string | `"magistrala"` | | +| postgresqlspicedb.database | string | `"spicedb"` | | +| postgresqlspicedb.enabled | bool | `true` | | +| postgresqlspicedb.global.postgresql.auth.database | string | `"spicedb"` | | +| postgresqlspicedb.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlspicedb.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlspicedb.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlspicedb.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlspicedb.host | string | `"postgresql-spicedb"` | | +| postgresqlspicedb.name | string | `"postgresql-spicedb"` | | +| postgresqlspicedb.password | string | `"magistrala"` | | +| postgresqlspicedb.port | int | `5432` | | +| postgresqlspicedb.username | string | `"magistrala"` | | +| postgresqlthings.database | string | `"things"` | | +| postgresqlthings.enabled | bool | `true` | | +| postgresqlthings.global.postgresql.auth.database | string | `"things"` | | +| postgresqlthings.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlthings.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlthings.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlthings.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlthings.host | string | `"postgresql-things"` | | +| postgresqlthings.name | string | `"postgresql-things"` | | +| postgresqlthings.password | string | `"magistrala"` | | +| postgresqlthings.port | int | `5432` | | +| postgresqlthings.username | string | `"magistrala"` | | +| postgresqlui.database | string | `"ui"` | | +| postgresqlui.enabled | bool | `true` | | +| postgresqlui.global.postgresql.auth.database | string | `"ui"` | | +| postgresqlui.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlui.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlui.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlui.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlui.host | string | `"postgresql-ui"` | | +| postgresqlui.name | string | `"postgresql-ui"` | | +| postgresqlui.password | string | `"magistrala"` | | +| postgresqlui.port | int | `5432` | | +| postgresqlui.username | string | `"magistrala"` | | +| postgresqlusers.database | string | `"users"` | | +| postgresqlusers.enabled | bool | `true` | | +| postgresqlusers.global.postgresql.auth.database | string | `"users"` | | +| postgresqlusers.global.postgresql.auth.password | string | `"magistrala"` | | +| postgresqlusers.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| postgresqlusers.global.postgresql.auth.username | string | `"magistrala"` | | +| postgresqlusers.global.postgresql.service.ports.postgresql | int | `5432` | | +| postgresqlusers.host | string | `"postgresql-users"` | | +| postgresqlusers.name | string | `"postgresql-users"` | | +| postgresqlusers.password | string | `"magistrala"` | | +| postgresqlusers.port | int | `5432` | | +| postgresqlusers.username | string | `"magistrala"` | | +| redis-things.cluster.enabled | bool | `false` | | +| redis-things.usePassword | bool | `false` | | +| redis-things.volumePermissions.enabled | bool | `true` | | +| spicedb.affinity | object | `{}` | | +| spicedb.datastore.engine | string | `"postgres"` | | +| spicedb.dispatch.enabled | bool | `false` | | +| spicedb.dispatch.port | int | `50053` | | +| spicedb.grpc.port | int | `50051` | | +| spicedb.grpc.presharedKey | string | `"helloworld"` | | +| spicedb.http.enabled | bool | `false` | | +| spicedb.http.port | int | `8443` | | +| spicedb.image.pullSecrets | object | `{}` | | +| spicedb.image.repository | string | `"authzed/spicedb"` | | +| spicedb.image.tag | string | `"latest"` | | +| spicedb.metrics.enabled | bool | `true` | | +| spicedb.metrics.port | int | `9090` | | +| spicedb.nodeSelector | object | `{}` | | +| spicedb.tolerations | object | `{}` | | +| things.authGrpcPort | int | `7000` | | +| things.authHttpPort | int | `9001` | | +| things.httpPort | int | `9000` | | +| things.image | object | `{}` | | +| things.redisCachePort | int | `6379` | | +| things.redisESPort | int | `6379` | | +| timescaledb.database | string | `"messages"` | | +| timescaledb.enabled | bool | `true` | | +| timescaledb.global.postgresql.auth.database | string | `"messages"` | | +| timescaledb.global.postgresql.auth.password | string | `"magistrala"` | | +| timescaledb.global.postgresql.auth.postgresPassword | string | `"magistrala"` | | +| timescaledb.global.postgresql.auth.username | string | `"magistrala"` | | +| timescaledb.global.postgresql.service.ports.postgresql | int | `5432` | | +| timescaledb.host | string | `"timescalerw"` | | +| timescaledb.image.registry | string | `"docker.io"` | | +| timescaledb.image.repository | string | `"timescale/timescaledb"` | | +| timescaledb.image.tag | string | `"latest-pg12"` | | +| timescaledb.name | string | `"timescalerw"` | | +| timescaledb.password | string | `"magistrala"` | | +| timescaledb.port | int | `5432` | | +| timescaledb.reader.enabled | bool | `true` | | +| timescaledb.reader.http.port | int | `9011` | | +| timescaledb.reader.image | object | `{}` | | +| timescaledb.username | string | `"magistrala"` | | +| timescaledb.writer.enabled | bool | `true` | | +| timescaledb.writer.http.port | int | `9012` | | +| timescaledb.writer.image | object | `{}` | | +| ui.blockKey | string | `"UtgZjr92jwRY6SPUndHXiyl9QY8qTUyZ"` | | +| ui.contentType | string | `"application/senml+json"` | | +| ui.enabled | bool | `true` | | +| ui.googleClientID | string | `""` | | +| ui.googleClientSecret | string | `""` | | +| ui.googleRedirectHostname | string | `"https://stage-domain-name"` | | +| ui.googleRedirectPath | string | `"/oauth/callback/google"` | | +| ui.googleState | string | `"somerandomstring"` | | +| ui.hashKey | string | `"5jx4x2Qg9OUmzpP5dbveWQ"` | | +| ui.image | object | `{}` | | +| ui.pathPrefix | string | `"/ui"` | | +| ui.port | int | `9095` | | +| users.adminEmail | string | `"admin@example.com"` | | +| users.adminPassword | string | `"12345678"` | | +| users.allowSelfRegister | bool | `true` | | +| users.deleteAfter | string | `"720h"` | | +| users.deleteInterval | string | `"24h"` | | +| users.grpcPort | int | `7001` | | +| users.httpPort | int | `9002` | | +| users.image | object | `{}` | | +| users.passwordRegex | string | `"^.{8,}$"` | | +| users.secretKey | string | `"secretKey"` | | +| users.tokenResetEndpoint | string | `"/reset-request"` | | +| vault.enabled | bool | `false` | | -## Upgrading the Chart - -To upgrade the chart with a new version or updated configuration, use the following command: - -```bash -helm upgrade devops-charts/magistrala -``` - -This ensures that your deployment uses the latest version of the chart while retaining any custom configurations. - -## Uninstalling the Chart - -To uninstall the chart and release, run: - -```bash -helm uninstall -``` - -## Configuration - -The following table lists the configurable parameters and their default values. - -| Parameter | Description | Default | -| ----------------------------------------- | -------------------------------------------------------------------------- | -------------------- | -| defaults.logLevel | Default log level | info | -| defaults.image.pullPolicy | Default Image Pull Policy | IfNotPresent | -| defaults.image.rootRepository | Default Image root repository for magistrala service | magistrala | -| defaults.image.tag | Default Image Tag | latest | -| defaults.replicaCount | Replicas of MQTT adapter, NATS, Things, Envoy, and Auth | 3 | -| defaults.natsPort | NATS port | 4222 | -| defaults.jaegerCollectorPort | Jaeger collector port | 4318 | -| defaults.jaegerTraceRatio | Jaeger trace ratio (percentage of traces to be sampled) | 10 | -| defaults.sendTelemetry | Enable or disable sending telemetry | true | -| defaults.eventStreamURL | Event stream URL for NATS | magistrala-nats:4222 | -| ingress.enabled | Should the Nginx Ingress be created | true | -| ingress.annotations | Annotations for the Nginx Ingress | {} | -| ingress.labels | Labels for the Nginx Ingress | {} | -| ingress.hostname | Hostname for the Nginx Ingress | | -| ingress.tls.hostname | TLS hostname for the Nginx Ingress | | -| ingress.tls.scret | TLS sceret for the Nginx Ingress | | -| nginxInternal.image.pullPolicy | internal nginx image pull policy | IfNotPresent | -| nginxInternal.image.repository | inernal nginx image repository | nginx | -| nginxInternal.image.tag | inernal nginx image tag | 1.19.1-alpine | -| nginxInternal.mtls.tls | TLS secret which contains the server cert/key | | -| nginxInternal.mtls.intermediateCrt | Generic secret which contains the intermediate cert used to verify clients | | -| envoy.image.pullPolicy | Envoy Image Pull Policy for Envoy | IfNotPresent | -| envoy.image.repository | Envoy Image repository for Envoy | envoyproxy/envoy | -| envoy.image.tag | Envoy Image Tag for Envoy | v1.31-latest | -| jaeger.fullnameOverride | Jaeger fullname override | magistrala-jaeger | -| jaeger.provisionDataStore.cassandra | Provision Jaeger with Cassandra data store | true | -| jaeger.agent.enabled | Enable Jaeger agent | false | -| jaeger.allInOne.enabled | Enable Jaeger all-in-one mode | false | -| jaeger.storage.type | Storage type for Jaeger | memory | -| jaeger.collector.service.otlp.grpc.port | OTLP gRPC port for Jaeger collector | 4317 | -| jaeger.collector.service.otlp.http.port | OTLP HTTP port for Jaeger collector | 4318 | -| nats.config.cluster.enabled | Enable NATS clustering | false | -| nats.config.cluster.replicas | Number of replicas in NATS cluster | 3 | -| nats.config.jetstream.enabled | Enable JetStream for NATS | true | -| nats.config.jetstream.fileStore.enabled | Enable file storage for JetStream | true | -| nats.config.jetstream.memoryStore.enabled | Enable memory storage for JetStream | true | -| nats.config.jetstream.memoryStore.maxSize | Maximum size for JetStream memory storage | 2Gi | -| adapter_coap.image.pullSecrets | CoAP adapter image pull secrets | | -| adapter_coap.image.repository | CoAP adapter image repository | | -| adapter_coap.image.tag | CoAP adapter image tag | | -| adapter_coap.image.pullPolicy | CoAP adapter image pull policy | | -| adapter_coap.port | CoAP adapter UDP port | 5683 | -| adapter_http.image.pullSecrets | HTTP adapter image pull secrets | | -| adapter_http.image.repository | HTTP adapter image repository | | -| adapter_http.image.tag | HTTP adapter image tag | | -| adapter_http.image.pullPolicy | HTTP adapter image pull policy | | -| adapter_http.httpPort | HTTP adapter port | 8008 | -| mqtt.enabled | Enable MQTT adapter | true | -| mqtt.securityContext.runAsUser | Run MQTT adapter as a specific user | 10000 | -| mqtt.securityContext.runAsGroup | Run MQTT adapter as a specific group | 10000 | -| mqtt.securityContext.fsGroup | Filesystem group for MQTT adapter | 10000 | -| mqtt.adapter.image.pullSecrets | MQTT adapter image pull secrets | | -| mqtt.adapter.image.repository | MQTT adapter image repository | | -| mqtt.adapter.image.tag | MQTT adapter image tag | | -| mqtt.adapter.image.pullPolicy | MQTT adapter image pull policy | | -| mqtt.adapter.mqttPort | MQTT adapter MQTT port | 1884 | -| mqtt.adapter.wsPort | MQTT adapter WebSocket port | 8081 | -| mqtt.adapter.logLevel | Log level for MQTT adapter | debug | -| mqtt.broker.mqttPort | MQTT broker MQTT port | 1883 | -| mqtt.broker.wsPort | MQTT broker WebSocket port | 8080 | -| mqtt.broker.logLevel | Log level for MQTT broker | info | -| mqtt.broker.persistentVolume.size | Persistent volume size for MQTT broker | 5Gi | -| mqtt.redisESPort | MQTT adapter Redis Event Store port | 6379 | -| mqtt.redisCachePort | MQTT adapter Redis Cache port | 6379 | -| spicedb.image.repository | Docker Image repository for SpiceDB | authzed/spicedb | -| spicedb.image.tag | Docker Image Tag for SpiceDB | latest | -| spicedb.grpc.presharedKey | Pre-shared key for SpiceDB gRPC | helloworld | -| spicedb.grpc.port | SpiceDB gRPC port | 50051 | -| spicedb.datastore.engine | Datastore engine for SpiceDB | postgres | -| spicedb.dispatch.port | Dispatch port for SpiceDB | 50053 | -| spicedb.dispatch.enabled | Enable Dispatch for SpiceDB | false | -| spicedb.http.enabled | Enable HTTP for SpiceDB | false | -| spicedb.http.port | HTTP port for SpiceDB | 8443 | -| spicedb.metrics.enabled | Enable metrics for SpiceDB | true | -| spicedb.metrics.port | Metrics port for SpiceDB | 9090 | -| postgresqlspicedb.enabled | Enable PostgreSQL for SpiceDB | true | -| postgresqlspicedb.host | Host for PostgreSQL SpiceDB | postgresql-spicedb | -| postgresqlspicedb.port | PostgreSQL port for SpiceDB | 5432 | -| postgresqlspicedb.database | Database name for SpiceDB | spicedb | -| postgresqlspicedb.username | Username for PostgreSQL SpiceDB | magistrala | -| postgresqlspicedb.password | Password for PostgreSQL SpiceDB | magistrala | -| auth.httpPort | HTTP port for Auth service | 8189 | -| auth.grpcPort | gRPC port for Auth service | 8181 | -| auth.secret | Secret key for Auth service | supersecret | -| auth.adminEmail | Admin email for Auth service | admin@example.com | -| auth.adminPassword | Admin password for Auth service | 12345678 | -| auth.accessTokenDuration | Access token duration for Auth service | 1h | -| auth.refreshTokenDuration | Refresh token duration for Auth service | 24h | -| auth.invitationDuration | Invitation duration for Auth service | 168h | -| postgresqlauth.enabled | Enable PostgreSQL for Auth service | true | -| postgresqlauth.host | Host for PostgreSQL Auth service | postgresql-auth | -| postgresqlauth.port | PostgreSQL port for Auth service | 5432 | -| postgresqlauth.database | Database name for Auth service | auth | -| postgresqlauth.username | Username for PostgreSQL Auth service | magistrala | -| postgresqlauth.password | Password for PostgreSQL Auth service | magistrala | -| users.dbPort | Users service DB port | 5432 | -| users.httpPort | Users service HTTP port | 9002 | -| users.grpcPort | Users service gRPC port | 7001 | -| things.dbPort | Things service DB port | 5432 | -| things.httpPort | Things service HTTP port | 9000 | -| things.authGrpcPort | Things service Auth gRPC port | 7000 | -| things.authHttpPort | Things service Auth HTTP port | 9001 | -| things.redisESPort | Things service Redis Event Store port | 6379 | -| things.redisCachePort | Things service Redis Auth Cache port | 6379 | -| adapter_http.httpPort | HTTP adapter port | 8008 | -| mqtt.adapter.mqttPort | MQTT adapter port | 1884 | -| mqtt.adapter.wsPort | MQTT adapter WS port | 8081 | -| mqtt.broker.mqttPort | MQTT adapter broker port | 1883 | -| mqtt.broker.wsPort | MQTT adapter broker WS port | 8080 | -| mqtt.broker.persistentVolume.size | MQTT adapter broker data Persistent Volume size | 5Gi | -| mqtt.redisESPort | MQTT adapter Event Store port | 6379 | -| mqtt.redisCachePort | MQTT adapter Redis Auth Cache port | 6379 | -| adapter_coap.udpPort | CoAP adapter UDP port | 5683 | -| ui.port | UI port | 3000 | -| bootstrap.enabled | Enable bootstrap service | false | -| bootstrap.dbPort | Bootstrap service DB port | 5432 | -| bootstrap.httpPort | Bootstrap service HTTP port | 9013 | -| bootstrap.redisESPort | Bootstrap service Redis Event Store port | 6379 | -| influxdb.enabled | Enable InfluxDB reader & writer | false | -| influxdb.dbPort | InfluxDB port | 8086 | -| influxdb.writer.httpPort | InfluxDB writer HTTP port | 9006 | -| influxdb.reader.httpPort | InfluxDB reader HTTP port | 9005 | -| influxdb.backup.enabled | Enable InfluxDB backup | false | -| influxdb.backup.cronjob.schedule | Crontab style time schedule for backup execution | "0 2 \* \* \*" | -| adapter_opcua.enabled | Enable OPC-UA adapter | false | -| adapter_opcua.httpPort | OPC-UA adapter HTTP port | 8188 | -| adapter_opcua.redisRouteMapPort | OPC-UA adapter Redis Auth Cache port | 6379 | -| adapter_lora.enabled | Enable LoRa adapter | false | -| adapter_lora.httpPort | LoRa adapter HTTP port | 9017 | -| adapter_lora.redisRouteMapPort | LoRa adapter Redis Auth Cache port | 6379 | -| twins.enabled | Enable twins service | false | -| twins.dbPort | Twins service DB port | 27017 | -| twins.httpPort | Twins service HTTP port | 9018 | -| twins.redisCachePort | Twins service Redis Cache port | 6379 | -| certs.enabled | Enable certs service | false | -| notifier_smtp.enabled | Enable SMTP notifier | false | -| notifier_smtp.emailHost | SMTP host | false | -| notifier_smtp.smtpPort | SMTP port | false | -| notifier_smtp.fromName | SMTP notifier `from` name | false | -| notifier_smtp.fromEmail | SMTP `from` email address | false | -| notifier_smtp.username | SMTP username | false | -| notifier_smtp.password | SMTP password | false | -| notifier_smtp.secret | SMTP secret | false | -| notifier_smtp.httpPort | SMTP notifier HTTP port | false | -| loki_stack.enabled | Enable Loki_Stack | true | - -All Magistrala services (both core and add-ons) can have their `logLevel`, `image.pullPolicy`, `image.repository` and `image.tag` overridden. - -Magistrala Core is a minimalistic set of required Magistrala services. They are all installed by default: - -- auth -- users -- things -- adapter_http -- adapter_mqtt -- adapter_coap -- ui - -Magistrala Add-ons are optional services that are disabled by default. Find in Configuration table parameters for enabling them, i.e. to enable influxdb reader & writer you should run `helm install` with `--set influxdb=true`. -List of add-ons services in charts: - -- bootstrap -- influxdb.writer -- influxdb.reader -- adapter_opcua -- adapter_lora -- twins -- notifier_smtp - -By default scale of MQTT adapter, Things, Envoy, Auth and NATS will be set to 3. It's recommended that you set this values to number of your nodes in Kubernetes cluster, i.e. `--set defaults.replicaCount=3 --set nats.replicaCount=3` - -**Note:** make sure you run `helm install` with `--dependency-update` flag! \ No newline at end of file