Skip to content

Commit 5f24088

Browse files
authored
Minor modifications and docs (#39)
Added some docs about diagnosing health checks, upgraded to 1.5.7 and enabled the UI.
1 parent bdf44e4 commit 5f24088

File tree

5 files changed

+82
-22
lines changed

5 files changed

+82
-22
lines changed

helm/README.adoc

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,3 +85,42 @@ featurehub-postgresql-0 0/1 Running
8585

8686
It should be running on port 80, so you can login, create a new system, add features, etc. The Edge service is
8787
also running on port 80.
88+
89+
90+
== Notes about the helm chart
91+
92+
=== The ingress
93+
94+
By default, the helm chart will create a global ingress - as defined by the values - which means
95+
all traffic routing into your namespace will go through that ingress and be routed as per its rules.
96+
This means default traffic to MR and /features to Edge - Dacha never receives edge traffic.
97+
98+
All services generally have a separate monitoring and server port, as per the docs - MR is 8701 for
99+
monitoring, 8085 for the server. It does this to ensure your liveness and prometheus traffic endpoints
100+
aren't exposed to the world.
101+
102+
If your services aren't coming up - and you have modified these charts, its likely because the
103+
port configuration is wrong.
104+
105+
You will need to find a pod (unless you have enabled prometheus on the MR, in which case you
106+
get a service endpoint for it). So e.g.
107+
108+
$ kubectl get pods
109+
110+
to find a pod and then
111+
112+
The management port is exposed on a service, so:
113+
114+
$ kubectl port-forward featurehub-management-repository-bf8b79d4d-2pkdl 8701
115+
116+
A curl to it:
117+
118+
----
119+
curl localhost:8701
120+
featurehub is here%
121+
----
122+
123+
If there is something wrong with the health check of a service, then the logs should be printing
124+
out exactly what is wrong, and so should the endpoint.
125+
126+

helm/featurehub/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ apiVersion: v2
22
name: featurehub
33
description: FeatureHub Release
44
type: application
5-
version: 3.0.2
5+
version: 3.0.3
66
icon: https://feature-hub.io/img/png/favicon.png
7-
appVersion: "1.5.6"
7+
appVersion: "1.5.7"
88
dependencies:
99
- name: postgresql
1010
version: 11.0.5

helm/featurehub/README.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# featurehub
22

3-
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.5.6](https://img.shields.io/badge/AppVersion-1.5.6-informational?style=flat-square)
3+
![Version: 3.0.3](https://img.shields.io/badge/Version-3.0.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.5.7](https://img.shields.io/badge/AppVersion-1.5.7-informational?style=flat-square)
44

55
FeatureHub Release
66

@@ -25,7 +25,7 @@ FeatureHub Release
2525
| dacha.extraVolumeMounts | list | `[]` | List of extra mounts to add to Dacha Deployment |
2626
| dacha.extraVolumes | list | `[]` | List of extra volumes to add to Dacha Deployment |
2727
| dacha.image.repository | string | `"featurehub/dacha"` | |
28-
| dacha.image.tag | string | `"1.5.6"` | |
28+
| dacha.image.tag | string | `"1.5.7"` | |
2929
| dacha.imagePullSecrets | list | `[]` | |
3030
| dacha.ingress.annotations | object | `{}` | |
3131
| dacha.ingress.className | string | `""` | |
@@ -52,13 +52,13 @@ FeatureHub Release
5252
| edge.enabled | bool | `true` | |
5353
| edge.envAsAppConfigFile | bool | `true` | If `true`, entries from `environmentVars` and `envFromSecret` fields will be mapped to configuration files. `environmentVars` to /etc/app-config/application.properties `envFromSecret` to /etc/app-config/secrets.properties Used for retrocompatiblity with FeatureHub controller versions lower than 1.5.0 https://docs.featurehub.io/featurehub/latest/installation.html#_run_configuration |
5454
| edge.envFromSecret | string | `""` | Name of the secret containing secret properties, to be exposed as environment variables to edge deployment. Create the secret in advance, then reference it here. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case Entries of the secret specified here are the same as would be specified in /etc/app-config/secrets.properties |
55-
| edge.environmentVars | object | `{"dacha.url.default":"http://featurehub-dacha","listen.pool-size":"30","maxSlots":"30","server.gracePeriodInSeconds":"10","update.pool-size":"30"}` | Environment variables to be exposed to edge deployment. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case. Entries accepted here are the same as would be specified in /etc/app-config/applications.properties. Note that `server.port` and `monitor.port` use their default values of `8085` and `8701` respectively, to make it easier to implement the deployment, service and the prometheus serviceMonitor manifests. |
55+
| edge.environmentVars | object | `{"dacha.url.default":"http://featurehub-dacha:8600","listen.pool-size":"30","maxSlots":"30","server.gracePeriodInSeconds":"10","update.pool-size":"30"}` | Environment variables to be exposed to edge deployment. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case. Entries accepted here are the same as would be specified in /etc/app-config/applications.properties. Note that `server.port` and `monitor.port` use their default values of `8085` and `8701` respectively, to make it easier to implement the deployment, service and the prometheus serviceMonitor manifests. |
5656
| edge.extraContainers | list | `[]` | List of extra containers to add to Edge Pod |
5757
| edge.extraEnvironmentVars | object | `{}` | Extra environment variables to be exposed to edge deployment. In terms of environment variable setting, this is the same as `environmentVars` field. The only difference is that if `envAsAppConfigFile: true`, only entries from `environmentVars` will be mapped to the application.properties configuration file, and not the ones from `extraEnvironmentVars`. |
5858
| edge.extraVolumeMounts | list | `[]` | List of extra mounts to add to Edge Deployment |
5959
| edge.extraVolumes | list | `[]` | List of extra volumes to add to Edge Deployment |
6060
| edge.image.repository | string | `"featurehub/edge"` | |
61-
| edge.image.tag | string | `"1.5.6"` | |
61+
| edge.image.tag | string | `"1.5.7"` | |
6262
| edge.imagePullSecrets | list | `[]` | |
6363
| edge.ingress.annotations | object | `{}` | |
6464
| edge.ingress.className | string | `""` | |
@@ -83,24 +83,26 @@ FeatureHub Release
8383
| edge.tolerations | list | `[]` | |
8484
| fullnameOverride | string | `""` | |
8585
| global.envAsApplicationProperties | bool | `true` | If `true`, entries from `environmentVars` will be mapped to /etc/app-config/common.properties file To mount secret settings as /etc/app-config/common.properties see volume fields Used for retrocompatiblity with FeatureHub controller versions lower than 1.5.0 https://docs.featurehub.io/featurehub/latest/installation.html#_run_configuration |
86-
| global.environmentVars | string | `nil` | Environment variables to be exposed to Management Repository, Edge and Dacha deployments. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case. Entries accepted here are the same as would be specified in /etc/app-config/common.properties. |
86+
| global.environmentVars | object | `{"nats.urls":"nats://featurehub-nats"}` | Environment variables to be exposed to Management Repository, Edge and Dacha deployments. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case. Entries accepted here are the same as would be specified in /etc/app-config/common.properties. |
8787
| global.extraCommonConfigFiles[0].configMapSuffix | string | `"log4j2-xml"` | |
8888
| global.extraCommonConfigFiles[0].content | string | `"<Configuration packages=\"cd.connect.logging\" monitorInterval=\"30\" verbose=\"true\">\n <Appenders>\n <Console name=\"STDOUT\" target=\"SYSTEM_OUT\">\n <ConnectJsonLayout/>\n </Console>\n </Appenders>\n\n <Loggers>\n <AsyncLogger name=\"io.featurehub\" level=\"debug\"/>\n <!--\n <AsyncLogger name=\"io.ebean.SQL\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.TXN\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.SUM\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.DDL\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.cache.QUERY\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.cache.BEAN\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.cache.COLL\" level=\"trace\"/>\n <AsyncLogger name=\"io.ebean.cache.NATKEY\" level=\"trace\"/>\n\n <AsyncLogger name=\"jersey-logging\" level=\"trace\"/>\n <AsyncLogger name=\"io.featurehub.db\" level=\"trace\"/>\n -->\n <AsyncLogger name=\"io.featurehub.edge.features\" level=\"debug\"/>\n\n <AsyncLogger name=\"net.stickycode\" level=\"warn\"/>\n <AsyncLogger name=\"org.glassfish.jersey.server.wadl\" level=\"error\"/>\n <AsyncLogger name=\"io.avaje.config\" level=\"warn\"/>\n <AsyncLogger name=\"org.hibernate\" level=\"error\"/>\n\n\n <AsyncRoot level=\"info\">\n <AppenderRef ref=\"STDOUT\"/>\n </AsyncRoot>\n </Loggers>\n</Configuration>"` | |
8989
| global.extraCommonConfigFiles[0].fileName | string | `"log4j2.xml"` | |
9090
| global.extraEnvironmentVars | object | `{}` | Extra environment variables to be exposed to Management Repository, Edge and Dacha deployments. In terms of environment variable setting, this is the same as `environmentVars` field. The only difference is that if `envAsAppConfigFile: true`, only entries from `environmentVars` will be mapped to the common.properties configuration file, and not the ones from `extraEnvironmentVars`. |
9191
| global.extraVolumeMounts | list | `[]` | List of extra mounts to add to Management Repository Deployment |
9292
| global.extraVolumes | list | `[]` | List of extra volumes to add to Management Repository Deployment |
93+
| global.ingress.annotations | list | `[]` | |
94+
| global.ingress.enabled | bool | `true` | |
9395
| managementRepository.affinity | object | `{}` | |
9496
| managementRepository.enabled | bool | `true` | |
9597
| managementRepository.envAsApplicationProperties | bool | `false` | If `true`, entries from `environmentVars` will be mapped to /etc/app-config/application.properties file To mount secret settings as /etc/app-config/application.properties see volume fields Used for retrocompatiblity with FeatureHub controller versions lower than 1.5.0 https://docs.featurehub.io/featurehub/latest/installation.html#_run_configuration |
9698
| managementRepository.envFromSecret | string | `""` | Name of the secret containing secret properties, to be exposed as environment variables to edge deployment. Create the secret in advance, then reference it here. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case Entries of the secret specified here are the same as would be specified in /etc/app-config/secrets.properties |
97-
| managementRepository.environmentVars | object | `{"db.connections":"3","db.url":"jdbc:postgresql://setmeup-postgresql-endpoint:5432/featurehub","db.username":"featurehub","portfolio.admin.group.suffix":"Administrators","register.url":"http://localhost/register-url?token=%s","run.nginx":"true","server.gracePeriodInSeconds":"10"}` | Environment variables to be exposed to management-repository deployment. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case. Entries accepted here are the same as would be specified in /etc/app-config/applications.properties. Note that `server.port` and `monitor.port` use their default values of `8085` and `8701` respectively, to make it easier to implement the deployment, service and the prometheus serviceMonitor manifests. |
99+
| managementRepository.environmentVars | object | `{"db.connections":"20","db.password":"featurehub","db.url":"jdbc:postgresql://featurehub-postgresql:5432/featurehub","db.username":"featurehub","portfolio.admin.group.suffix":"Administrators"}` | Environment variables to be exposed to management-repository deployment. As of 1.5.0 all FeatureHub controller properties are available as environment variables using the same case. Entries accepted here are the same as would be specified in /etc/app-config/applications.properties. Note that `server.port` and `monitor.port` use their default values of `8085` and `8701` respectively, to make it easier to implement the deployment, service and the prometheus serviceMonitor manifests. |
98100
| managementRepository.extraContainers | list | `[]` | List of extra containers to add to Management Repository Pod |
99101
| managementRepository.extraEnvironmentVars | object | `{}` | Extra environment variables to be exposed to management-repository deployment. In terms of environment variable setting, this is the same as `environmentVars` field. The only difference is that if `envAsAppConfigFile: true`, only entries from `environmentVars` will be mapped to the application.properties configuration file, and not the ones from `extraEnvironmentVars`. |
100102
| managementRepository.extraVolumeMounts | list | `[]` | List of extra mounts to add to Management Repository Deployment |
101103
| managementRepository.extraVolumes | list | `[]` | List of extra volumes to add to Management Repository Deployment |
102104
| managementRepository.image.repository | string | `"featurehub/mr"` | |
103-
| managementRepository.image.tag | string | `"1.5.6"` | |
105+
| managementRepository.image.tag | string | `"1.5.7"` | |
104106
| managementRepository.imagePullSecrets | list | `[]` | |
105107
| managementRepository.ingress.annotations | object | `{}` | |
106108
| managementRepository.ingress.className | string | `""` | |
@@ -125,7 +127,7 @@ FeatureHub Release
125127
| managementRepository.tolerations | list | `[]` | |
126128
| nameOverride | string | `""` | |
127129
| nats | object | `{"cluster":{"enabled":true,"name":"featurehub","replicas":3},"enabled":true,"topologyKeys":[]}` | ----------------------------------------------------------------------------- # |
128-
| postgresql | object | `{"enabled":false,"global":{"postgresql":{"auth":{"postgresPassword":"postgresql"}}},"primary":{"initdb":{"scripts":{"featurehub.sql":"CREATE USER featurehub PASSWORD 'featurehub'; CREATE DATABASE featurehub; GRANT ALL PRIVILEGES ON DATABASE featurehub TO featurehub;"}},"persistence":{"accessModes":["ReadWriteOnce"],"enabled":true,"size":"128Mi","storageClassName":"standard"}}}` | ----------------------------------------------------------------------------- # |
130+
| postgresql | object | `{"enabled":true,"global":{"postgresql":{"auth":{"postgresPassword":"postgresql"}}},"primary":{"initdb":{"scripts":{"featurehub.sql":"CREATE USER featurehub PASSWORD 'featurehub'; CREATE DATABASE featurehub; GRANT ALL PRIVILEGES ON DATABASE featurehub TO featurehub;"}},"persistence":{"accessModes":["ReadWriteOnce"],"enabled":true,"size":"128Mi","storageClassName":"standard"}}}` | ----------------------------------------------------------------------------- # |
129131

130132
----------------------------------------------
131-
Autogenerated from chart metadata using [helm-docs v1.6.0](https://github.com/norwoodj/helm-docs/releases/v1.6.0)
133+
Autogenerated from chart metadata using [helm-docs v1.10.0](https://github.com/norwoodj/helm-docs/releases/v1.10.0)

helm/featurehub/templates/management-repository/configmap-env.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ data:
1111
{{- end }}
1212
monitor.port: "8701"
1313
server.port: "8085"
14+
run.nginx: "true"
1415
{{- end }}

helm/featurehub/values.yaml

Lines changed: 29 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ managementRepository:
9393

9494
image:
9595
repository: featurehub/mr
96-
tag: :1.5.6
96+
tag: 1.5.7
9797

9898
pullPolicy: IfNotPresent
9999

@@ -170,10 +170,28 @@ managementRepository:
170170
# kubernetes.io/ingress.class: nginx
171171
# kubernetes.io/tls-acme: "true"
172172
hosts: []
173-
# - host: chart-example.local
174-
# paths:
175-
# - path: /
176-
# pathType: ImplementationSpecific
173+
#- localhost
174+
# paths:
175+
# - path: /mr-api
176+
# pathType: Prefix
177+
# - path: /oauth
178+
# pathType: Prefix
179+
# - path: /saml
180+
# pathType: Prefix
181+
# - path: /assets
182+
# pathType: Prefix
183+
# - path: /canvaskit
184+
# pathType: Prefix
185+
# - path: .map
186+
# pathType: Suffix
187+
# - path: .ico
188+
# pathType: Suffix
189+
# - path: .html
190+
# pathType: Suffix
191+
# - path: .js
192+
# pathType: Suffix
193+
# - path: .json
194+
# pathType: Suffix
177195
tls: []
178196
# - secretName: chart-example-tls
179197
# hosts:
@@ -229,7 +247,7 @@ edge:
229247

230248
image:
231249
repository: featurehub/edge
232-
tag: :1.5.6
250+
tag: 1.5.7
233251

234252
pullPolicy: IfNotPresent
235253

@@ -306,10 +324,10 @@ edge:
306324
# kubernetes.io/ingress.class: nginx
307325
# kubernetes.io/tls-acme: "true"
308326
hosts: []
309-
# - host: chart-example.local
310-
# paths:
311-
# - path: /features
312-
# pathType: ImplementationSpecific
327+
# - host: "localhost"
328+
# paths:
329+
# - path: /features
330+
# pathType: Prefix
313331
tls: []
314332
# - secretName: chart-example-tls
315333
# hosts:
@@ -357,7 +375,7 @@ dacha:
357375

358376
image:
359377
repository: featurehub/dacha
360-
tag: :1.5.6
378+
tag: 1.5.7
361379

362380
pullPolicy: IfNotPresent
363381

0 commit comments

Comments
 (0)