This is an automated email from the ASF dual-hosted git repository. riemer pushed a commit to branch 1207-improve-helm-charts in repository https://gitbox.apache.org/repos/asf/streampipes.git
commit 7e78481f768c4a771f6afc268b217860ba78e51f Author: Dominik Riemer <[email protected]> AuthorDate: Thu Feb 2 17:01:17 2023 +0100 Add more configuration options to helm charts (#1207) --- .../k8s/templates/core/backend-deployment.yaml | 19 +++---- installer/k8s/templates/core/backend-pv-pvc.yaml | 42 --------------- .../backend-pvc.yaml} | 22 ++++---- installer/k8s/templates/core/backend-service.yaml | 6 +-- ...nt.yaml => extensions-all-iiot-deployment.yaml} | 10 ++-- ...rvice.yaml => extensions-all-iiot-service.yaml} | 6 +-- .../pipeline-elements-all-flink-deployment.yaml | 37 -------------- .../external/consul/consul-deployment.yaml | 16 +++--- .../templates/external/consul/consul-pv-pvc.yaml | 22 ++------ .../templates/external/consul/consul-service.yaml | 6 +-- .../external/couchdb/couchdb-deployment.yaml | 16 +++--- .../templates/external/couchdb/couchdb-pv-pvc.yaml | 22 ++------ .../external/couchdb/couchdb-service.yaml | 6 +-- .../external/flink/jobmanager-deployment.yaml | 46 ----------------- .../external/flink/jobmanager-service.yaml | 34 ------------- .../external/flink/taskmanager-deployment.yaml | 43 ---------------- .../external/influxdb/influxdb-deployment.yaml | 34 ++++++------- .../templates/external/influxdb/influxdb-pvc.yaml | 20 ++------ .../external/influxdb/influxdb-service.yaml | 4 +- .../templates/external/influxdb/influxdb2-pvc.yaml | 21 ++------ .../templates/external/nats/nats-deployment.yaml | 8 +-- installer/k8s/values.yaml | 59 +++++++++++++++------- 22 files changed, 128 insertions(+), 371 deletions(-) diff --git a/installer/k8s/templates/core/backend-deployment.yaml b/installer/k8s/templates/core/backend-deployment.yaml index 8bd00c891..e8745c440 100644 --- a/installer/k8s/templates/core/backend-deployment.yaml +++ b/installer/k8s/templates/core/backend-deployment.yaml @@ -16,30 +16,27 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: backend + name: {{ .Values.streampipes.core.appName }} spec: selector: matchLabels: - app: backend + app: {{ .Values.streampipes.core.appName }} replicas: 1 template: metadata: labels: - app: backend + app: {{ .Values.streampipes.core.appName }} spec: hostAliases: - ip: "127.0.0.1" hostnames: - "backend" volumes: - - name: backend-pv + - name: {{ .Values.streampipes.core.persistence.pvName }} persistentVolumeClaim: - claimName: backend-pvc - # - name: files-pv - # persistentVolumeClaim: - # claimName: files-pvc + claimName: {{ .Values.streampipes.core.persistence.claimName }} containers: - - name: backend + - name: {{ .Values.streampipes.core.appName }} image: {{ .Values.streampipes.registry }}/backend:{{ .Values.streampipes.version }} imagePullPolicy: {{ .Values.pullPolicy }} env: @@ -53,6 +50,4 @@ spec: - containerPort: 8030 volumeMounts: - mountPath: "/root/.streampipes" - name: backend-pv - # - mountPath: "/spImages" - # name: files-pv + name: {{ .Values.streampipes.core.persistence.pvName }} diff --git a/installer/k8s/templates/core/backend-pv-pvc.yaml b/installer/k8s/templates/core/backend-pv-pvc.yaml deleted file mode 100644 index 724b87f46..000000000 --- a/installer/k8s/templates/core/backend-pv-pvc.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -apiVersion: v1 -kind: PersistentVolume -metadata: - name: backend-pv -spec: - storageClassName: local-storage-backend - capacity: - storage: 50Mi - accessModes: - - {{ .Values.persistentVolumeAccessModes }} - persistentVolumeReclaimPolicy: {{ .Values.persistentVolumeReclaimPolicy }} - hostPath: - path: {{ .Values.hostPath }}/backend ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - labels: - app: backend - name: backend-pvc -spec: - storageClassName: local-storage-backend - accessModes: - - {{ .Values.persistentVolumeAccessModes }} - resources: - requests: - storage: 50Mi \ No newline at end of file diff --git a/installer/k8s/templates/extensions/pipeline-elements/pipeline-elements-all-flink-service.yaml b/installer/k8s/templates/core/backend-pvc.yaml similarity index 71% rename from installer/k8s/templates/extensions/pipeline-elements/pipeline-elements-all-flink-service.yaml rename to installer/k8s/templates/core/backend-pvc.yaml index 18295dfb8..43ccf61fc 100644 --- a/installer/k8s/templates/extensions/pipeline-elements/pipeline-elements-all-flink-service.yaml +++ b/installer/k8s/templates/core/backend-pvc.yaml @@ -13,19 +13,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -{{- if (eq .Values.deployment "full") }} + apiVersion: v1 -kind: Service +kind: PersistentVolumeClaim metadata: - name: pipeline-elements-all-flink labels: - name: pipeline-elements-all-flink + app: {{ .Values.streampipes.core.appName }} + name: {{ .Values.streampipes.core.persistence.claimName }} spec: - selector: - app: pipeline-elements-all-flink - ports: - - name: main - protocol: TCP - port: 8090 - targetPort: 8090 -{{- end }} + storageClassName: {{ .Values.streampipes.core.persistence.storageClassName }} + accessModes: + - {{ .Values.persistentVolumeAccessModes }} + resources: + requests: + storage: 50Mi diff --git a/installer/k8s/templates/core/backend-service.yaml b/installer/k8s/templates/core/backend-service.yaml index 24dc03c66..133dde085 100644 --- a/installer/k8s/templates/core/backend-service.yaml +++ b/installer/k8s/templates/core/backend-service.yaml @@ -16,12 +16,12 @@ apiVersion: v1 kind: Service metadata: - name: backend + name: {{ .Values.streampipes.core.appName }} spec: selector: - app: backend + app: {{ .Values.streampipes.core.appName }} ports: - name: main protocol: TCP port: 8030 - targetPort: 8030 \ No newline at end of file + targetPort: 8030 diff --git a/installer/k8s/templates/extensions/pipeline-elements/extensions-all-jvm-deployment.yaml b/installer/k8s/templates/extensions/pipeline-elements/extensions-all-iiot-deployment.yaml similarity index 86% rename from installer/k8s/templates/extensions/pipeline-elements/extensions-all-jvm-deployment.yaml rename to installer/k8s/templates/extensions/pipeline-elements/extensions-all-iiot-deployment.yaml index 4edcdf554..318e3be10 100644 --- a/installer/k8s/templates/extensions/pipeline-elements/extensions-all-jvm-deployment.yaml +++ b/installer/k8s/templates/extensions/pipeline-elements/extensions-all-iiot-deployment.yaml @@ -16,20 +16,20 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: extensions-all-jvm + name: extensions-all-iiot spec: selector: matchLabels: - app: extensions-all-jvm + app: extensions-all-iiot replicas: 1 template: metadata: labels: - app: extensions-all-jvm + app: extensions-all-iiot spec: containers: - - name: extensions-all-jvm - image: {{ .Values.streampipes.registry }}/extensions-all-jvm:{{ .Values.streampipes.version }} + - name: extensions-all-iiot + image: {{ .Values.streampipes.registry }}/extensions-all-iiot:{{ .Values.streampipes.version }} imagePullPolicy: {{ .Values.pullPolicy }} ports: - containerPort: 8090 diff --git a/installer/k8s/templates/extensions/pipeline-elements/extensions-all-jvm-service.yaml b/installer/k8s/templates/extensions/pipeline-elements/extensions-all-iiot-service.yaml similarity index 91% rename from installer/k8s/templates/extensions/pipeline-elements/extensions-all-jvm-service.yaml rename to installer/k8s/templates/extensions/pipeline-elements/extensions-all-iiot-service.yaml index 8a3a36ad0..e87874625 100644 --- a/installer/k8s/templates/extensions/pipeline-elements/extensions-all-jvm-service.yaml +++ b/installer/k8s/templates/extensions/pipeline-elements/extensions-all-iiot-service.yaml @@ -16,12 +16,12 @@ apiVersion: v1 kind: Service metadata: - name: extensions-all-jvm + name: extensions-all-iiot labels: - name: extensions-all-jvm + name: extensions-all-iiot spec: selector: - app: extensions-all-jvm + app: extensions-all-iiot ports: - name: main protocol: TCP diff --git a/installer/k8s/templates/extensions/pipeline-elements/pipeline-elements-all-flink-deployment.yaml b/installer/k8s/templates/extensions/pipeline-elements/pipeline-elements-all-flink-deployment.yaml deleted file mode 100644 index c9ab5906b..000000000 --- a/installer/k8s/templates/extensions/pipeline-elements/pipeline-elements-all-flink-deployment.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -{{- if (eq .Values.deployment "full") }} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: pipeline-elements-all-flink -spec: - selector: - matchLabels: - app: pipeline-elements-all-flink - replicas: 1 - template: - metadata: - labels: - app: pipeline-elements-all-flink - spec: - containers: - - name: pipeline-elements-all-flink - image: {{ .Values.streampipes.registry }}/pipeline-elements-all-flink:{{ .Values.streampipes.version }} - imagePullPolicy: {{ .Values.pullPolicy }} - ports: - - containerPort: 8090 -{{- end }} diff --git a/installer/k8s/templates/external/consul/consul-deployment.yaml b/installer/k8s/templates/external/consul/consul-deployment.yaml index 18fd60801..d494e8d58 100644 --- a/installer/k8s/templates/external/consul/consul-deployment.yaml +++ b/installer/k8s/templates/external/consul/consul-deployment.yaml @@ -16,24 +16,24 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: consul + name: {{ .Values.external.consul.appName }} spec: selector: matchLabels: - app: consul + app: {{ .Values.external.consul.appName }} replicas: 1 template: metadata: labels: - app: consul + app: {{ .Values.external.consul.appName }} spec: volumes: - - name: consul-pv + - name: {{ .Values.external.consul.persistence.pvName }} persistentVolumeClaim: - claimName: consul-pvc + claimName: {{ .Values.external.consul.persistence.claimName }} containers: - - name: consul - image: consul:{{ .Values.external.consulVersion }} + - name: {{ .Values.external.consul.appName }} + image: consul:{{ .Values.external.consul.version }} imagePullPolicy: {{ .Values.pullPolicy }} command: - "/bin/sh" @@ -60,4 +60,4 @@ spec: - containerPort: 8600 volumeMounts: - mountPath: "/consul/data" - name: consul-pv + name: {{ .Values.external.consul.persistence.pvName }} diff --git a/installer/k8s/templates/external/consul/consul-pv-pvc.yaml b/installer/k8s/templates/external/consul/consul-pv-pvc.yaml index 02cba151d..34885196f 100644 --- a/installer/k8s/templates/external/consul/consul-pv-pvc.yaml +++ b/installer/k8s/templates/external/consul/consul-pv-pvc.yaml @@ -13,30 +13,16 @@ # See the License for the specific language governing permissions and # limitations under the License. -apiVersion: v1 -kind: PersistentVolume -metadata: - name: consul-pv -spec: - storageClassName: local-storage-consul - capacity: - storage: 20M - accessModes: - - {{ .Values.persistentVolumeAccessModes }} - persistentVolumeReclaimPolicy: {{ .Values.persistentVolumeReclaimPolicy }} - hostPath: - path: {{ .Values.hostPath }}/consul ---- apiVersion: v1 kind: PersistentVolumeClaim metadata: labels: - app: consul - name: consul-pvc + app: {{ .Values.external.consul.appName }} + name: {{ .Values.external.consul.persistence.claimName }} spec: - storageClassName: local-storage-consul + storageClassName: {{ .Values.external.consul.persistence.storageClassName }} accessModes: - {{ .Values.persistentVolumeAccessModes }} resources: requests: - storage: 20M \ No newline at end of file + storage: 20M diff --git a/installer/k8s/templates/external/consul/consul-service.yaml b/installer/k8s/templates/external/consul/consul-service.yaml index 43ff32cba..a14104a0c 100644 --- a/installer/k8s/templates/external/consul/consul-service.yaml +++ b/installer/k8s/templates/external/consul/consul-service.yaml @@ -16,10 +16,10 @@ apiVersion: v1 kind: Service metadata: - name: consul + name: {{ .Values.external.consul.appName }} spec: selector: - app: consul + app: {{ .Values.external.consul.appName }} ports: - name: main protocol: TCP @@ -28,4 +28,4 @@ spec: - name: test protocol: TCP port: 8600 - targetPort: 8600 \ No newline at end of file + targetPort: 8600 diff --git a/installer/k8s/templates/external/couchdb/couchdb-deployment.yaml b/installer/k8s/templates/external/couchdb/couchdb-deployment.yaml index 368b44ed2..6729cc3a3 100644 --- a/installer/k8s/templates/external/couchdb/couchdb-deployment.yaml +++ b/installer/k8s/templates/external/couchdb/couchdb-deployment.yaml @@ -16,24 +16,24 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: couchdb + name: {{ .Values.external.couchdb.appName }} spec: selector: matchLabels: - app: couchdb + app: {{ .Values.external.couchdb.appName }} replicas: 1 template: metadata: labels: - app: couchdb + app: {{ .Values.external.couchdb.appName }} spec: volumes: - - name: couchdb-pv + - name: {{ .Values.external.couchdb.persistence.pvName }} persistentVolumeClaim: - claimName: couchdb-pvc + claimName: {{ .Values.external.couchdb.persistence.claimName }} containers: - - name: couchdb - image: couchdb:{{ .Values.external.couchdbVersion }} + - name: {{ .Values.external.couchdb.appName }} + image: couchdb:{{ .Values.external.couchdb.version }} imagePullPolicy: {{ .Values.pullPolicy }} env: - name: COUCHDB_USER @@ -44,4 +44,4 @@ spec: - containerPort: 5984 volumeMounts: - mountPath: "/opt/couchdb/data" - name: couchdb-pv + name: {{ .Values.external.couchdb.persistence.pvName }} diff --git a/installer/k8s/templates/external/couchdb/couchdb-pv-pvc.yaml b/installer/k8s/templates/external/couchdb/couchdb-pv-pvc.yaml index 32861e052..3b4152fef 100644 --- a/installer/k8s/templates/external/couchdb/couchdb-pv-pvc.yaml +++ b/installer/k8s/templates/external/couchdb/couchdb-pv-pvc.yaml @@ -13,30 +13,16 @@ # See the License for the specific language governing permissions and # limitations under the License. -apiVersion: v1 -kind: PersistentVolume -metadata: - name: couchdb-pv -spec: - storageClassName: local-storage-couchdb - capacity: - storage: 50M - accessModes: - - {{ .Values.persistentVolumeAccessModes }} - persistentVolumeReclaimPolicy: {{ .Values.persistentVolumeReclaimPolicy }} - hostPath: - path: {{ .Values.hostPath }}/couchdb ---- apiVersion: v1 kind: PersistentVolumeClaim metadata: labels: - app: couchdb - name: couchdb-pvc + app: {{ .Values.external.couchdb.appName }} + name: {{ .Values.external.couchdb.persistence.claimName }} spec: - storageClassName: local-storage-couchdb + storageClassName: {{ .Values.external.couchdb.persistence.storageClassName }} accessModes: - {{ .Values.persistentVolumeAccessModes }} resources: requests: - storage: 50M \ No newline at end of file + storage: 50M diff --git a/installer/k8s/templates/external/couchdb/couchdb-service.yaml b/installer/k8s/templates/external/couchdb/couchdb-service.yaml index a5ca14248..3b126c521 100644 --- a/installer/k8s/templates/external/couchdb/couchdb-service.yaml +++ b/installer/k8s/templates/external/couchdb/couchdb-service.yaml @@ -16,12 +16,12 @@ apiVersion: v1 kind: Service metadata: - name: couchdb + name: {{ .Values.external.couchdb.appName }} spec: selector: - app: couchdb + app: {{ .Values.external.couchdb.appName }} ports: - name: main protocol: TCP port: 5984 - targetPort: 5984 \ No newline at end of file + targetPort: 5984 diff --git a/installer/k8s/templates/external/flink/jobmanager-deployment.yaml b/installer/k8s/templates/external/flink/jobmanager-deployment.yaml deleted file mode 100644 index e23aec26f..000000000 --- a/installer/k8s/templates/external/flink/jobmanager-deployment.yaml +++ /dev/null @@ -1,46 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -{{- if eq .Values.deployment "full" }} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: jobmanager -spec: - selector: - matchLabels: - app: jobmanager - replicas: 1 - template: - metadata: - labels: - app: jobmanager - spec: - containers: - - name: jobmanager - image: fogsyio/flink:{{ .Values.external.flinkVersion }} - imagePullPolicy: {{ .Values.pullPolicy }} - args: ["jobmanager"] - ports: - - containerPort: 8081 - name: webui - - containerPort: 6123 - name: rpc - - containerPort: 6124 - name: blob-server - env: - - name: JOB_MANAGER_RPC_ADDRESS - value: jobmanager -{{- end }} diff --git a/installer/k8s/templates/external/flink/jobmanager-service.yaml b/installer/k8s/templates/external/flink/jobmanager-service.yaml deleted file mode 100644 index 6c7ec7742..000000000 --- a/installer/k8s/templates/external/flink/jobmanager-service.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -{{- if eq .Values.deployment "full" }} -apiVersion: v1 -kind: Service -metadata: - name: jobmanager -spec: - selector: - app: jobmanager - ports: - - name: webui - port: 8081 - targetPort: 8081 - - name: rpc - port: 6123 - targetPort: 6123 - - name: blob-server - port: 6124 - targetPort: 6124 -{{- end }} diff --git a/installer/k8s/templates/external/flink/taskmanager-deployment.yaml b/installer/k8s/templates/external/flink/taskmanager-deployment.yaml deleted file mode 100644 index d172acf46..000000000 --- a/installer/k8s/templates/external/flink/taskmanager-deployment.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -{{- if eq .Values.deployment "full" }} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: taskmanager -spec: - selector: - matchLabels: - app: taskmanager - replicas: 1 - template: - metadata: - labels: - app: taskmanager - spec: - containers: - - name: taskmanager - image: fogsyio/flink:{{ .Values.external.flinkVersion }} - imagePullPolicy: {{ .Values.pullPolicy }} - args: ["taskmanager"] - ports: - - containerPort: 8099 - env: - - name: TASK_MANAGER_NUMBER_OF_TASK_SLOTS - value: "20" - - name: JOB_MANAGER_RPC_ADDRESS - value: jobmanager -{{- end }} diff --git a/installer/k8s/templates/external/influxdb/influxdb-deployment.yaml b/installer/k8s/templates/external/influxdb/influxdb-deployment.yaml index ffb7da328..e1905c89f 100644 --- a/installer/k8s/templates/external/influxdb/influxdb-deployment.yaml +++ b/installer/k8s/templates/external/influxdb/influxdb-deployment.yaml @@ -16,27 +16,27 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: influxdb + name: {{ .Values.external.influxdb.appName }} spec: selector: matchLabels: - app: influxdb + app: {{ .Values.external.influxdb.appName }} replicas: 1 template: metadata: labels: - app: influxdb + app: {{ .Values.external.influxdb.appName }} spec: volumes: - - name: influxdb-pv + - name: {{ .Values.external.influxdb.persistence.pvNameV1 }} persistentVolumeClaim: - claimName: influxdb-pvc - - name: influxdb2-pv + claimName: {{ .Values.external.influxdb.persistence.claimNameV1 }} + - name: {{ .Values.external.influxdb.persistence.pvName }} persistentVolumeClaim: - claimName: influxdb2-pvc + claimName: {{ .Values.external.influxdb.persistence.claimName }} containers: - - name: influxdb - image: influxdb:{{ .Values.external.influxdbVersion }} + - name: {{ .Values.external.influxdb.appName }} + image: influxdb:{{ .Values.external.influxdb.version }} imagePullPolicy: {{ .Values.pullPolicy }} ports: - containerPort: 8083 @@ -50,19 +50,19 @@ spec: - name: INFLUXDB_ADMIN_ENABLED value: "true" - name: DOCKER_INFLUXDB_INIT_USERNAME - value: {{ .Values.influxdb.username }} + value: {{ .Values.external.influxdb.username }} - name: DOCKER_INFLUXDB_INIT_PASSWORD - value: {{ .Values.influxdb.password }} + value: {{ .Values.external.influxdb.password }} - name: DOCKER_INFLUXDB_INIT_ADMIN_TOKEN - value: {{ .Values.influxdb.adminToken }} + value: {{ .Values.external.influxdb.adminToken }} - name: DOCKER_INFLUXDB_INIT_ORG - value: {{ .Values.influxdb.initOrg }} + value: {{ .Values.external.influxdb.initOrg }} - name: DOCKER_INFLUXDB_INIT_BUCKET - value: {{ .Values.influxdb.initBucket }} + value: {{ .Values.external.influxdb.initBucket }} - name: DOCKER_INFLUXDB_INIT_MODE - value: {{ .Values.influxdb.initMode }} + value: {{ .Values.external.influxdb.initMode }} volumeMounts: - mountPath: "/var/lib/influxdb" - name: influxdb-pv + name: {{ .Values.external.influxdb.persistence.pvNameV1 }} - mountPath: "/var/lib/influxdb2" - name: influxdb2-pv + name: {{ .Values.external.influxdb.persistence.pvName }} diff --git a/installer/k8s/templates/external/influxdb/influxdb-pvc.yaml b/installer/k8s/templates/external/influxdb/influxdb-pvc.yaml index fbcb64a71..1e6add053 100644 --- a/installer/k8s/templates/external/influxdb/influxdb-pvc.yaml +++ b/installer/k8s/templates/external/influxdb/influxdb-pvc.yaml @@ -13,28 +13,14 @@ # See the License for the specific language governing permissions and # limitations under the License. -apiVersion: v1 -kind: PersistentVolume -metadata: - name: influx-pv -spec: - storageClassName: local-storage-influx - capacity: - storage: 250Mi - accessModes: - - {{ .Values.persistentVolumeAccessModes }} - persistentVolumeReclaimPolicy: {{ .Values.persistentVolumeReclaimPolicy }} - hostPath: - path: {{ .Values.hostPath }}/influxdb ---- apiVersion: v1 kind: PersistentVolumeClaim metadata: labels: - app: influxdb - name: influxdb-pvc + app: {{ .Values.external.influxdb.appName }} + name: {{ .Values.external.influxdb.persistence.claimNameV1 }} spec: - storageClassName: local-storage-influx + storageClassName: {{ .Values.external.influxdb.persistence.storageClassName }} accessModes: - {{ .Values.persistentVolumeAccessModes }} resources: diff --git a/installer/k8s/templates/external/influxdb/influxdb-service.yaml b/installer/k8s/templates/external/influxdb/influxdb-service.yaml index cfeb4135b..986430f10 100644 --- a/installer/k8s/templates/external/influxdb/influxdb-service.yaml +++ b/installer/k8s/templates/external/influxdb/influxdb-service.yaml @@ -16,10 +16,10 @@ apiVersion: v1 kind: Service metadata: - name: influxdb + name: {{ .Values.external.influxdb.appName }} spec: selector: - app: influxdb + app: {{ .Values.external.influxdb.appName }} ports: - name: main protocol: TCP diff --git a/installer/k8s/templates/external/influxdb/influxdb2-pvc.yaml b/installer/k8s/templates/external/influxdb/influxdb2-pvc.yaml index 2e71d79d6..dada18938 100644 --- a/installer/k8s/templates/external/influxdb/influxdb2-pvc.yaml +++ b/installer/k8s/templates/external/influxdb/influxdb2-pvc.yaml @@ -13,28 +13,15 @@ # See the License for the specific language governing permissions and # limitations under the License. -apiVersion: v1 -kind: PersistentVolume -metadata: - name: influx2-pv -spec: - storageClassName: local-storage-influx2 - capacity: - storage: 250Mi - accessModes: - - {{ .Values.persistentVolumeAccessModes }} - persistentVolumeReclaimPolicy: {{ .Values.persistentVolumeReclaimPolicy }} - hostPath: - path: {{ .Values.hostPath }}/influxdb2 ---- + apiVersion: v1 kind: PersistentVolumeClaim metadata: labels: - app: influxdb - name: influxdb2-pvc + app: {{ .Values.external.influxdb.appName }} + name: {{ .Values.external.influxdb.persistence.claimName }} spec: - storageClassName: local-storage-influx2 + storageClassName: {{ .Values.external.influxdb.persistence.storageClassName }} accessModes: - {{ .Values.persistentVolumeAccessModes }} resources: diff --git a/installer/k8s/templates/external/nats/nats-deployment.yaml b/installer/k8s/templates/external/nats/nats-deployment.yaml index 7c6860825..4f57e9a03 100644 --- a/installer/k8s/templates/external/nats/nats-deployment.yaml +++ b/installer/k8s/templates/external/nats/nats-deployment.yaml @@ -17,23 +17,23 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: nats + name: {{ .Values.external.nats.appName }} spec: selector: matchLabels: - app: nats + app: {{ .Values.external.nats.appName }} replicas: 1 template: metadata: labels: - app: nats + app: {{ .Values.external.nats.appName }} spec: initContainers: - name: init-wait-consul image: alpine command: ["sh", "-c", "for i in $(seq 1 300); do nc -zvw1 consul 8500 && exit 0 || sleep 3; done; exit 1"] containers: - - name: nats + - name: {{ .Values.external.nats.appName }} image: nats imagePullPolicy: {{ .Values.pullPolicy }} ports: diff --git a/installer/k8s/values.yaml b/installer/k8s/values.yaml index 6027c1e5a..e7609949b 100644 --- a/installer/k8s/values.yaml +++ b/installer/k8s/values.yaml @@ -16,35 +16,56 @@ # lite or full (default: lite) deployment: lite preferredBroker: "nats" -pullPolicy: "IfNotPresent" +pullPolicy: "Always" persistentVolumeReclaimPolicy: "Delete" persistentVolumeAccessModes: "ReadWriteOnce" streampipes: version: "0.91.0-SNAPSHOT" registry: "apachestreampipes" + core: + appName: "backend" + persistence: + storageClassName: "" + claimName: "backend-pvc" + pvName: "backend-pv" external: - consulVersion: 1.14.3 - couchdbVersion: 3.3.1 - flinkVersion: 1.13.5-scala_2.11 + consul: + appName: "consul" + version: 1.14.3 + persistence: + storageClassName: "" + claimName: "consul-pvc" + pvName: "consul-pv" + couchdb: + appName: "couchdb" + version: 3.3.1 + persistence: + storageClassName: "" + claimName: "couchdb-pvc" + pvName: "couchdb-pv" + influxdb: + appName: "influxdb" + version: 2.6 + username: "admin" + password: "sp-admin" + adminToken: "sp-admin" + initOrg: "sp" + initBucket: "sp" + # For database migration in v0.91.0 - set init mode to 'upgrade' to migrate an existing installation + initMode: "setup" + persistence: + storageClassName: "" + claimName: "influxdb2-pvc" + claimNameV1: "influxdb-pvc" + pvName: "influxdb2-pv" + pvNameV1: "influxdb-pv" + nats: + appName: "nats" + version: kafkaVersion: 2.2.0 zookeeperVersion: 3.4.13 - influxdbVersion: 2.6 -# For database migration in v0.91.0 - set init mode to 'upgrade' to migrate an existing installation -influxdb: - username: "admin" - password: "sp-admin" - adminToken: "sp-admin" - initOrg: "sp" - initBucket: "sp" - initMode: "setup" - - -# NOTE: Local testing only! -# minikube start --mount-string ${HOME}/streampipes-k8s:/streampipes-k8s --mount --memory=4g --cpus=4 -# Specify minikube directory: -hostPath: "/streampipes-k8s"
