diff --git a/horizon/Chart.yaml b/horizon/Chart.yaml index d64b6b4..1826fed 100644 --- a/horizon/Chart.yaml +++ b/horizon/Chart.yaml @@ -24,3 +24,7 @@ version: 0.1.0 # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. appVersion: "32.0.0-SNAPSHOT" + +maintainers: + - name: The OpenNMS Group Inc. + url: https://www.opennms.com diff --git a/horizon/README.md b/horizon/README.md index e8b2d87..321d12c 100644 --- a/horizon/README.md +++ b/horizon/README.md @@ -120,3 +120,123 @@ When using Newts, the resource cache will not exist on the UI servers (maintaine | Helm chart version | Horizon version(s) | Meridian version(s) | | ----------- | ----------- | ----------- | | 1.x | Horizon 32.x | Meridian 2023.x | + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| core.configuration.affinity | string | `nil` | | +| core.configuration.alecImage | object | `{}` | | +| core.configuration.alwaysRollDeployment | bool | `true` | | +| core.configuration.cortexTssImage | object | `{}` | | +| core.configuration.database.password | string | `"` | | +| core.configuration.database.poolSize | int | `50` | | +| core.configuration.database.username | string | `"opennms"` | | +| core.configuration.enableAcls | bool | `false` | | +| core.configuration.enableAlec | bool | `false` | | +| core.configuration.enableCortex | bool | `false` | | +| core.configuration.enableTssDualWrite | bool | `false` | | +| core.configuration.etcUpdatePolicy | string | `"newer"` | | +| core.configuration.http.adminPassword | string | `""` | | +| core.configuration.http.restPassword | string | `""` | | +| core.configuration.http.restUsername | string | `"opennms"` | | +| core.configuration.nodeSelector | string | `nil` | | +| core.configuration.rras[0] | string | `"RRA:AVERAGE:0.5:1:2016"` | | +| core.configuration.rras[1] | string | `"RRA:AVERAGE:0.5:12:1488"` | | +| core.configuration.rras[2] | string | `"RRA:AVERAGE:0.5:288:366"` | | +| core.configuration.rras[3] | string | `"RRA:MAX:0.5:288:366"` | | +| core.configuration.rras[4] | string | `"RRA:MIN:0.5:288:366"` | | +| core.configuration.storage.etc | string | `"1Gi"` | | +| core.configuration.storage.mibs | string | `nil` | | +| core.configuration.storage.rrd | string | `"1000Gi"` | | +| core.configuration.tolerations | string | `nil` | | +| core.image.pullPolicy | string | `"IfNotPresent"` | | +| core.image.repository | string | `"opennms/horizon"` | | +| core.image.tag | string | `""` | | +| core.inspector.enabled | bool | `false` | | +| core.postConfigJob.ttlSecondsAfterFinished | int | `300` | | +| core.resources.limits.cpu | string | `"2"` | | +| core.resources.limits.memory | string | `"8Gi"` | | +| core.resources.requests.cpu | string | `"2"` | | +| core.resources.requests.memory | string | `"4Gi"` | | +| core.terminationGracePeriodSeconds | int | `120` | | +| createNamespace | bool | `true` | | +| dependencies.cortex.bulkheadMaxWaitDuration | string | `"9223372036854775807"` | | +| dependencies.cortex.externalTagsCacheSize | int | `1000` | | +| dependencies.cortex.maxConcurrentHttpConnections | int | `100` | | +| dependencies.cortex.metricCacheSize | int | `1000` | | +| dependencies.cortex.readTimeoutInMs | int | `1000` | | +| dependencies.cortex.readUrl | string | `"http://cortex-query-frontend.shared.svc.cluster.local:8080/prometheus/api/v1"` | | +| dependencies.cortex.writeTimeoutInMs | int | `1000` | | +| dependencies.cortex.writeUrl | string | `"http://cortex-distributor.shared.svc.cluster.local:8080/api/v1/push"` | | +| dependencies.elasticsearch.configuration.flows.indexStrategy | string | `"daily"` | | +| dependencies.elasticsearch.configuration.flows.numShards | int | `1` | | +| dependencies.elasticsearch.configuration.flows.replicationFactor | int | `0` | | +| dependencies.elasticsearch.hostname | string | `""` | | +| dependencies.elasticsearch.password | string | `""` | | +| dependencies.elasticsearch.port | int | `9200` | | +| dependencies.elasticsearch.username | string | `"elastic"` | | +| dependencies.kafka.configuration.saslMechanism | string | `"SCRAM-SHA-512"` | | +| dependencies.kafka.configuration.securityProtocol | string | `"SASL_SSL"` | | +| dependencies.kafka.hostname | string | `""` | | +| dependencies.kafka.password | string | `""` | | +| dependencies.kafka.port | int | `9093` | | +| dependencies.kafka.username | string | `"opennms"` | | +| dependencies.loki.caCert | string | `""` | | +| dependencies.loki.hostname | string | `""` | | +| dependencies.loki.password | string | `""` | | +| dependencies.loki.port | int | `3100` | | +| dependencies.loki.username | string | `""` | | +| dependencies.postgresql.caCert | string | `""` | | +| dependencies.postgresql.hostname | string | `"onms-db.shared.svc"` | | +| dependencies.postgresql.password | string | `""` | | +| dependencies.postgresql.port | int | `5432` | | +| dependencies.postgresql.sslfactory | string | `"org.postgresql.ssl.LibPQFactory"` | | +| dependencies.postgresql.sslmode | string | `"require"` | | +| dependencies.postgresql.username | string | `"postgres"` | | +| dependencies.truststore.content | string | `""` | | +| dependencies.truststore.password | string | `""` | | +| domain | string | `"example.com"` | | +| grafana.configuration.database.image.pullPolicy | string | `"IfNotPresent"` | | +| grafana.configuration.database.image.repository | string | `"postgres"` | | +| grafana.configuration.database.image.tag | string | `"13"` | | +| grafana.configuration.database.password | string | `""` | | +| grafana.configuration.database.sslmode | string | `"require"` | | +| grafana.configuration.database.username | string | `"grafana"` | | +| grafana.configuration.ui.adminPassword | string | `""` | | +| grafana.image.pullPolicy | string | `"IfNotPresent"` | | +| grafana.image.repository | string | `"opennms/helm"` | | +| grafana.image.tag | string | `"9.0.4"` | | +| grafana.imageRenderer.image.pullPolicy | string | `"IfNotPresent"` | | +| grafana.imageRenderer.image.repository | string | `"grafana/grafana-image-renderer"` | | +| grafana.imageRenderer.image.tag | string | `"latest"` | | +| grafana.imageRenderer.replicaCount | int | `2` | | +| grafana.imageRenderer.resources.limits.cpu | string | `"200m"` | | +| grafana.imageRenderer.resources.limits.memory | string | `"256Mi"` | | +| grafana.imageRenderer.resources.requests.cpu | string | `"100m"` | | +| grafana.imageRenderer.resources.requests.memory | string | `"128Mi"` | | +| grafana.replicaCount | int | `0` | | +| grafana.resources.limits.cpu | string | `"200m"` | | +| grafana.resources.limits.memory | string | `"256Mi"` | | +| grafana.resources.requests.cpu | string | `"100m"` | | +| grafana.resources.requests.memory | string | `"128Mi"` | | +| imagePullSecrets | list | `[]` | | +| ingress.annotations | object | `{}` | | +| ingress.certManager.clusterIssuer | string | `"opennms-issuer"` | | +| ingress.className | string | `"nginx"` | | +| promtail.image.pullPolicy | string | `"IfNotPresent"` | | +| promtail.image.repository | string | `"grafana/promtail"` | | +| promtail.image.tag | string | `"latest"` | | +| promtail.resources.limits.cpu | string | `"50m"` | | +| promtail.resources.limits.memory | string | `"64Mi"` | | +| sentinel.configuration.database.poolSize | int | `25` | | +| sentinel.image.pullPolicy | string | `"IfNotPresent"` | | +| sentinel.image.repository | string | `"opennms/sentinel"` | | +| sentinel.image.tag | string | `""` | | +| sentinel.replicaCount | int | `0` | | +| sentinel.resources.limits.cpu | string | `"2"` | | +| sentinel.resources.limits.memory | string | `"4Gi"` | | +| sentinel.resources.requests.cpu | string | `"2"` | | +| sentinel.resources.requests.memory | string | `"2Gi"` | | +| sentinel.terminationGracePeriodSeconds | int | `60` | | +| timezone | string | `"America/New_York"` | | \ No newline at end of file diff --git a/horizon/templates/opennms-core.statefulset.yaml b/horizon/templates/opennms-core.statefulset.yaml index fc6b745..1bbbbd2 100644 --- a/horizon/templates/opennms-core.statefulset.yaml +++ b/horizon/templates/opennms-core.statefulset.yaml @@ -87,16 +87,16 @@ spec: mountPath: /opt/opennms-overlay # Required by the script - OVERLAY_DIR - name: scripts mountPath: /scripts # Required by the script + nodeSelector: + {{- toYaml .Values.core.configuration.nodeSelector | nindent 8 }} + affinity: + {{- toYaml .Values.core.configuration.affinity | nindent 8 }} + tolerations: + {{- toYaml .Values.core.configuration.tolerations | nindent 8 }} containers: - name: onms image: {{ $image }} imagePullPolicy: {{ .Values.core.image.pullPolicy }} - nodeSelector: - {{- toYaml .Values.core.configuration.nodeSelector | nindent 10 }} - affinity: - {{- toYaml .Values.core.configuration.affinity | nindent 10 }} - tolerations: - {{- toYaml .Values.core.configuration.tolerations | nindent 10 }} args: - -s ports: diff --git a/horizon/values.yaml b/horizon/values.yaml index 776246a..806da0e 100644 --- a/horizon/values.yaml +++ b/horizon/values.yaml @@ -135,8 +135,8 @@ core: mibs: null # Expects a size, e.g.: 1Gi http: # Credentials to access the WebUI restUsername: opennms # ReST user for Grafana/Helm, Sentinel and Minions (when Twin API is not available) - restPassword: 0p3nNM5 - adminPassword: 0p3nNM5 # Password for the default admin account + restPassword: admin + adminPassword: admin # Password for the default admin account etcUpdatePolicy: newer # Experimental: options: never (don't update any files), newer (only newer timestamps), new (only brand new files) nodeSelector: null affinity: null diff --git a/minion/Chart.yaml b/minion/Chart.yaml index 4fb5a27..c1758ef 100644 --- a/minion/Chart.yaml +++ b/minion/Chart.yaml @@ -24,3 +24,7 @@ version: 0.1.0 # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. appVersion: "32.0.0-SNAPSHOT" + +maintainers: + - name: The OpenNMS Group Inc. + url: https://www.opennms.com diff --git a/minion/README.md b/minion/README.md index 304aaac..faceb15 100644 --- a/minion/README.md +++ b/minion/README.md @@ -7,4 +7,21 @@ This template can be used to bring up a minion and connect it to a OpenNMS core. ## How to use: * Modify `values.yaml` file: -* (If you are using JKS) add a base64 value of Java Keystore into `content`. You can get the base64 value by running `cat jks/truststore.jks | base64` \ No newline at end of file +* (If you are using JKS) add a base64 value of Java Keystore into `content`. You can get the base64 value by running `cat jks/truststore.jks | base64` + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| core.instanceID | string | `"monms"` | | +| minion.configuration.storage.dataFolder | string | `"5Gi"` | | +| minion.image.pullPolicy | string | `"IfNotPresent"` | | +| minion.image.repository | string | `"opennms/minion"` | | +| minion.image.tag | string | `""` | | +| minion.kafkaBroker.address | string | `"onms-kafka-bootstrap.shared.svc:9093"` | | +| minion.kafkaBroker.password | string | `""` | | +| minion.kafkaBroker.username | string | `""` | | +| minion.location | string | `"pod"` | | +| minion.name | string | `"myminion"` | | +| truststore.content | string | `""` | | +| truststore.password | string | `""` | | \ No newline at end of file