From 8c2e86079374c819b5204797816b64450ddc487c Mon Sep 17 00:00:00 2001 From: Filippo Ledda Date: Tue, 10 Sep 2024 12:46:31 +0200 Subject: [PATCH 1/6] CH-32 Add Neo4j browser --- applications/neo4j/.gitignore | 1 + applications/neo4j/README.md | 22 ++++++++++ .../deploy/templates/reverseProxyServer.yaml | 37 ++++++++++++++++ applications/neo4j/deploy/values.yaml | 41 ++++++++++++++++++ applications/neo4j/docs/browser-login.png | Bin 0 -> 25106 bytes .../helm/templates/auto-database-neo4j.yaml | 2 + 6 files changed, 103 insertions(+) create mode 100644 applications/neo4j/.gitignore create mode 100644 applications/neo4j/README.md create mode 100644 applications/neo4j/deploy/templates/reverseProxyServer.yaml create mode 100644 applications/neo4j/deploy/values.yaml create mode 100644 applications/neo4j/docs/browser-login.png diff --git a/applications/neo4j/.gitignore b/applications/neo4j/.gitignore new file mode 100644 index 000000000..7c5616916 --- /dev/null +++ b/applications/neo4j/.gitignore @@ -0,0 +1 @@ +helm-charts \ No newline at end of file diff --git a/applications/neo4j/README.md b/applications/neo4j/README.md new file mode 100644 index 000000000..49dadb607 --- /dev/null +++ b/applications/neo4j/README.md @@ -0,0 +1,22 @@ +# Neo4j browser helm chart + +Enable this application to deploy a Neo4j server with the neo4j browser enabled. + +## How to use +The browser will be enabled at neo4j.[DOMAIN]. + +![Neo4j browser login](docs/browser-login.png) + +The default credentials are set in the [application configuration file](deploy/values.yaml). + +It is recommended to change the password during the first login, such as: + +``` +ALTER USER default SET PASSWORD '' +``` + +## Implementation +This implementation uses the Neo4j reverse proxy server to enable usage via Ingress and http(s). + +For more information, see https://neo4j.com/docs/operations-manual/current/kubernetes/accessing-neo4j-ingress/ + diff --git a/applications/neo4j/deploy/templates/reverseProxyServer.yaml b/applications/neo4j/deploy/templates/reverseProxyServer.yaml new file mode 100644 index 000000000..f273acb96 --- /dev/null +++ b/applications/neo4j/deploy/templates/reverseProxyServer.yaml @@ -0,0 +1,37 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Values.apps.neo4j.harness.deployment.name }} + labels: + app: {{ .Values.apps.neo4j.harness.deployment.name }} + namespace: "{{ .Release.Namespace }}" +spec: + replicas: 1 + selector: + matchLabels: + app: {{ .Values.apps.neo4j.harness.deployment.name }} + template: + metadata: + name: {{ .Values.apps.neo4j.harness.deployment.name }} + labels: + name: {{ .Values.apps.neo4j.harness.deployment.name }} + app: {{ .Values.apps.neo4j.harness.deployment.name }} + spec: + securityContext: {{ toYaml .Values.apps.neo4j.reverseProxy.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Values.apps.neo4j.harness.deployment.name }} + image: {{ .Values.apps.neo4j.reverseProxy.image }} + imagePullPolicy: Always + securityContext: {{ toYaml .Values.apps.neo4j.reverseProxy.containerSecurityContext | nindent 12 }} + ports: + - containerPort: {{ .Values.apps.neo4j.harness.deployment.port }} + env: + - name: SERVICE_NAME + value: {{ .Values.apps.neo4j.harness.database.name }} + - name: PORT + value: {{ .Values.apps.neo4j.harness.deployment.port | quote }} + - name: DOMAIN + value: {{ .Values.apps.neo4j.reverseProxy.domain | default "cluster.local" }} + - name: NAMESPACE + value: {{ .Release.Namespace }} +--- \ No newline at end of file diff --git a/applications/neo4j/deploy/values.yaml b/applications/neo4j/deploy/values.yaml new file mode 100644 index 000000000..4a9a45a4d --- /dev/null +++ b/applications/neo4j/deploy/values.yaml @@ -0,0 +1,41 @@ +harness: + subdomain: neo4j + database: + auto: true + name: neo4j-db + type: neo4j + user: default + pass: default + deployment: + auto: false + service: + auto: true +# Parameters for reverse proxy +reverseProxy: + image: "neo4j/helm-charts-reverse-proxy:5.23" + + # Name of the kubernetes service. This service should have the ports 7474 and 7687 open. + # This could be the admin service ex: "standalone-admin" or the loadbalancer service ex: "standalone" created via the neo4j helm chart + # serviceName , namespace , domain together will form the complete k8s service url. Ex: standalone-admin.default.svc.cluster.local + # When used against a cluster ensure the service being used is pointing to all the cluster instances. + # This could be the loadbalancer from neo4j helm chart or the headless service installed via neo4j-headless-service helm chart + serviceName: "" + # default is set to cluster.local + domain: "cluster.local" + + # securityContext defines privilege and access control settings for a Container. Making sure that we dont run Neo4j as root user. + containerSecurityContext: + allowPrivilegeEscalation: false + runAsNonRoot: true + runAsUser: 7474 + runAsGroup: 7474 + capabilities: + drop: + - all + + podSecurityContext: + runAsNonRoot: true + runAsUser: 7474 + runAsGroup: 7474 + fsGroup: 7474 + fsGroupChangePolicy: "Always" diff --git a/applications/neo4j/docs/browser-login.png b/applications/neo4j/docs/browser-login.png new file mode 100644 index 0000000000000000000000000000000000000000..86e1db1ee173602f66e72c70a99ca8398586bfc9 GIT binary patch literal 25106 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 Y`|v9LOSv0t(NuH}= Date: Tue, 10 Sep 2024 12:57:45 +0200 Subject: [PATCH 2/6] CH-32 Add option to directly access a database --- deployment-configuration/helm/templates/auto-database.yaml | 2 +- deployment-configuration/value-template.yaml | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/deployment-configuration/helm/templates/auto-database.yaml b/deployment-configuration/helm/templates/auto-database.yaml index 6ec31380d..a53ea6861 100644 --- a/deployment-configuration/helm/templates/auto-database.yaml +++ b/deployment-configuration/helm/templates/auto-database.yaml @@ -101,7 +101,7 @@ metadata: app: {{ .app.harness.deployment.name | quote }} {{ include "deploy_utils.labels" .root | indent 4 }} spec: - type: ClusterIP + type: {{-if .app.harness.database.expose }}LoadBalancer{{- else }}ClusterIP{{- end }} selector: app: {{ .app.harness.database.name | quote }} ports: diff --git a/deployment-configuration/value-template.yaml b/deployment-configuration/value-template.yaml index c04439a3b..222aa7f67 100644 --- a/deployment-configuration/value-template.yaml +++ b/deployment-configuration/value-template.yaml @@ -75,6 +75,8 @@ harness: pass: metacell # -- image ref for referencing images from the build, e.g. image_ref: myownpgimage image_ref: + # -- expose database to the public with ingress + expose: false # -- settings for mongo database (for type==mongo) mongo: image: mongo:5 From 0e282101a4d1b066ea74f51bfc72059e571dd132 Mon Sep 17 00:00:00 2001 From: Filippo Ledda Date: Tue, 10 Sep 2024 13:07:15 +0200 Subject: [PATCH 3/6] CH-32 Update Neo4j --- deployment-configuration/value-template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployment-configuration/value-template.yaml b/deployment-configuration/value-template.yaml index 222aa7f67..ff2814668 100644 --- a/deployment-configuration/value-template.yaml +++ b/deployment-configuration/value-template.yaml @@ -92,7 +92,7 @@ harness: port: 5432 # -- settings for neo4j database (for type==neo4j) neo4j: - image: neo4j:4.1.9 + image: neo4j:5 memory: size: 256M pagecache: From f334040bf6ff9b7ca291935f1650bf696c002c06 Mon Sep 17 00:00:00 2001 From: Filippo Ledda Date: Tue, 10 Sep 2024 13:07:27 +0200 Subject: [PATCH 4/6] CH-32 Add documentation --- docs/applications/databases.md | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/docs/applications/databases.md b/docs/applications/databases.md index 89bd2868b..96498f6cd 100644 --- a/docs/applications/databases.md +++ b/docs/applications/databases.md @@ -35,6 +35,9 @@ harness: `image_ref`: Optional setting, used for referencing a base/static image from the build. The complete image name with tag will automagically being generated from the values.yaml file. This setting overrides the `image` setting specific for the database type (e.g. postgres/image). Note: the referenced image must be included as a build dependency in order to be built by the pipelines. +`expose`: This option allows you to expose the database port through a load balancer. +Do not use on production! + ### Specific database settings @@ -91,7 +94,24 @@ harness #### Neo4j -Not yet supported! +Defaults: +```yaml +harness + database: + neo4j: + dbms_security_auth_enabled: "false" + image: neo4j:5 + memory: + heap: { initial: 64M, max: 128M } + pagecache: { size: 64M } + size: 256M + ports: + - { name: http, port: 7474 } + - { name: bolt, port: 7687 } +``` + +Not that the default resource values are not optimized and increasing the default memory is recommended for production. +Mapping memory configuration with Kubernetes resource requests is also recommended. ## Programmatic API From 06f99f12ca329c1c49684dd2f0e59220f17d1f41 Mon Sep 17 00:00:00 2001 From: Filippo Ledda Date: Tue, 10 Sep 2024 14:15:19 +0200 Subject: [PATCH 5/6] CH-32 Fix --- deployment-configuration/helm/templates/auto-database.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployment-configuration/helm/templates/auto-database.yaml b/deployment-configuration/helm/templates/auto-database.yaml index a53ea6861..2e0c15864 100644 --- a/deployment-configuration/helm/templates/auto-database.yaml +++ b/deployment-configuration/helm/templates/auto-database.yaml @@ -101,7 +101,7 @@ metadata: app: {{ .app.harness.deployment.name | quote }} {{ include "deploy_utils.labels" .root | indent 4 }} spec: - type: {{-if .app.harness.database.expose }}LoadBalancer{{- else }}ClusterIP{{- end }} + type: {{ if .app.harness.database.expose }}LoadBalancer{{ else }}ClusterIP{{ end }} selector: app: {{ .app.harness.database.name | quote }} ports: From 9f5130f78bb58a2cf4ac5be424a7413c8601b2b3 Mon Sep 17 00:00:00 2001 From: Filippo Ledda <46561561+filippomc@users.noreply.github.com> Date: Tue, 10 Sep 2024 19:12:34 +0200 Subject: [PATCH 6/6] Update applications/neo4j/README.md Co-authored-by: Alex --- applications/neo4j/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/neo4j/README.md b/applications/neo4j/README.md index 49dadb607..cd46617d4 100644 --- a/applications/neo4j/README.md +++ b/applications/neo4j/README.md @@ -3,7 +3,7 @@ Enable this application to deploy a Neo4j server with the neo4j browser enabled. ## How to use -The browser will be enabled at neo4j.[DOMAIN]. +The neo4j browser will be enabled at neo4j.[DOMAIN]. ![Neo4j browser login](docs/browser-login.png)