diff --git a/deployments/kubernetes/charts/clowder2/ibm-hpc.yaml b/deployments/kubernetes/charts/clowder2/ibm-hpc.yaml new file mode 100644 index 000000000..c75db3af2 --- /dev/null +++ b/deployments/kubernetes/charts/clowder2/ibm-hpc.yaml @@ -0,0 +1,117 @@ +hostname: &hostname ibmclowder.software-dev.ncsa.illinois.edu + +ingress: + enabled: true + annotations: + nginx.ingress.kubernetes.io/proxy-body-size: "0" + tls: + - hosts: + - *hostname + secretName: clowder2-tls + + +geoserver: + enabled: false + +minio: + auth: + rootUser: clowder + rootPassword: ilikecats + persistence: + storageClass: nfs-taiga + size: 20Gi + ingress: + enabled: true + hostname: minio.ibmclowder.software-dev.ncsa.illinois.edu + apiIngress: + enabled: true + hostname: minio.ibmclowder.software-dev.ncsa.illinois.edu + +frontend: + image: + repository: vismayak/clowder-frontend + tag: latest + +rabbitmq: + # login + auth: + username: guest + password: ilikecats + erlangCookie: kittencookie + ingress: + enabled: true + hostname: rabbitmq.ibmclowder.software-dev.ncsa.illinois.edu + persistence: + storageClass: csi-cinder-sc-delete + size: 8Gi + +mongodb: + persistence: + storageClass: csi-cinder-sc-delete + size: 8Gi + +elasticsearch: + master: + persistence: + storageClass: csi-cinder-sc-delete + size: 20Gi + data: + persistence: + storageClass: csi-cinder-sc-delete + size: 20Gi + +keycloak: + auth: + adminUser: guest + adminPassword: ilikecats + ingress: + hostname: ibmclowder.software-dev.ncsa.illinois.edu + postgresql: + auth: + password: cGFzc3dvcmQ= + postgresPassword: Nm50T2lJR05sZQ== + primary: + persistence: + storageClass: csi-cinder-sc-delete + size: 8Gi + +message: + image: + repository: clowder/clowder2-messages + tag: release-v2.0-beta-3 + +heartbeat: + image: + repository: clowder/clowder2-heartbeat + tag: release-v2.0-beta-3 + +extractors: + wordcount: + enabled: true + image: clowder/extractors-wordcount:latest + rcnn-iwp-inference: + enabled: true + image: vismayak/rcnn_iwp_inference_extractor_k8:latest + env: + - name: MINIO_MOUNTED_PATH + value: /clowderfs + volumes: + - name: minio-storage + hostPath: + path: /mnt/ibm-hpc-clowderfs + volumeMounts: + - name: minio-storage + mountPath: /clowderfs + rcnn-iwp-finetuning: + enabled: true + image: vismayak/rcnn_iwp_finetuning_extractor_k8:latest + env: + - name: MINIO_MOUNTED_PATH + value: /clowderfs + volumes: + - name: minio-storage + hostPath: + path: /mnt/ibm-hpc-clowderfs + volumeMounts: + - name: minio-storage + mountPath: /clowderfs diff --git a/deployments/kubernetes/charts/clowder2/minio-credentials.yaml b/deployments/kubernetes/charts/clowder2/minio-credentials.yaml new file mode 100644 index 000000000..74c02dd24 --- /dev/null +++ b/deployments/kubernetes/charts/clowder2/minio-credentials.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Secret +metadata: + name: minio-credentials + namespace: ibm-hpc +stringData: + MINIO_ENDPOINT: http://clowder2-minio:9000 + MINIO_ACCESS_KEY: clowder + MINIO_SECRET_KEY: ilikecats + MINIO_MOUNT_POINT: /var/clowderfs + CLOWDER_VERSION: "2" + diff --git a/deployments/kubernetes/charts/clowder2/minio-daemonset.yaml b/deployments/kubernetes/charts/clowder2/minio-daemonset.yaml new file mode 100644 index 000000000..9db9d1fa5 --- /dev/null +++ b/deployments/kubernetes/charts/clowder2/minio-daemonset.yaml @@ -0,0 +1,41 @@ +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: minio-mounter + namespace: ibm-hpc + labels: + app: minio-mounter +spec: + selector: + matchLabels: + app: minio-mounter + template: + metadata: + labels: + app: minio-mounter + spec: + containers: + - name: minio-fuse + image: vismayak/minio-mount-daemon-container + securityContext: + privileged: true + envFrom: + - secretRef: + name: minio-credentials + volumeMounts: + - name: fuse + mountPath: /dev/fuse + - name: minio-point + mountPath: /var/clowderfs:shared + lifecycle: + preStop: + exec: + command: ["/bin/sh", "-c", "fusermount -u /var/clowderfs"] + volumes: + - name: fuse + hostPath: + path: /dev/fuse + - name: minio-point + hostPath: + path: /mnt/ibm-hpc-clowderfs + type: DirectoryOrCreate diff --git a/deployments/kubernetes/charts/clowder2/minio-test-pod.yaml b/deployments/kubernetes/charts/clowder2/minio-test-pod.yaml new file mode 100644 index 000000000..3013cb331 --- /dev/null +++ b/deployments/kubernetes/charts/clowder2/minio-test-pod.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Pod +metadata: + name: minio-test-pod +spec: + containers: + - name: minio-test-pod + image: alpine + command: [ "sleep", "infinity" ] + volumeMounts: + - name: minio-storage + mountPath: /clowderfs + volumes: + - name: minio-storage + hostPath: + path: /mnt/ibm-hpc-clowderfs diff --git a/deployments/kubernetes/charts/clowder2/templates/backend/deployment.yaml b/deployments/kubernetes/charts/clowder2/templates/backend/deployment.yaml index 55962ffb6..3682e7c83 100644 --- a/deployments/kubernetes/charts/clowder2/templates/backend/deployment.yaml +++ b/deployments/kubernetes/charts/clowder2/templates/backend/deployment.yaml @@ -54,11 +54,13 @@ spec: secretKeyRef: name: {{ .Values.backend.existingSecret }} key: {{ .Values.backend.existingMinioSecretKey | default "root-password" }} - {{- else }} + {{- else if (lookup "v1" "Secret" .Release.Namespace (printf "%s-secret" (include "clowder2.releaseName" .))) }} valueFrom: secretKeyRef: name: {{include "clowder2.releaseName" . }}-secret key: root-password + {{- else }} + value: {{ .Values.minio.auth.rootPassword }} {{- end }} - name: MINIO_UPLOAD_CHUNK_SIZE value: "10485760" @@ -104,11 +106,13 @@ spec: secretKeyRef: name: {{ .Values.backend.existingSecret }} key: {{ .Values.backend.existingRabbitMQSecretKey | default "rabbitmq-password" }} - {{- else }} + {{- else if (lookup "v1" "Secret" .Release.Namespace (printf "%s-secret" (include "clowder2.releaseName" .))) }} valueFrom: secretKeyRef: name: {{ include "clowder2.releaseName" . }}-secret key: rabbitmq-password + {{- else }} + value: {{ .Values.rabbitmq.auth.password }} {{- end }} - name: RABBITMQ_HOST value: {{ include "clowder2.releaseName" . }}-rabbitmq diff --git a/deployments/kubernetes/charts/clowder2/templates/extractors/deployment.yaml b/deployments/kubernetes/charts/clowder2/templates/extractors/deployment.yaml index 7de69d846..bca00feeb 100644 --- a/deployments/kubernetes/charts/clowder2/templates/extractors/deployment.yaml +++ b/deployments/kubernetes/charts/clowder2/templates/extractors/deployment.yaml @@ -27,6 +27,10 @@ spec: {{- with $.Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 8 }} + {{- end }} + {{- if .volumes }} + volumes: + {{- toYaml .volumes | nindent 8 }} {{- end }} containers: - name: extractor @@ -57,6 +61,10 @@ spec: {{- if .env }} {{- toYaml .env | nindent 12 }} {{- end }} +{{- if .volumeMounts }} + volumeMounts: + {{- toYaml .volumeMounts | nindent 12 }} +{{- end }} {{- if .resources }} resources: {{- toYaml .resources | nindent 12 }} diff --git a/deployments/kubernetes/charts/clowder2/templates/geoserver/deployment.yaml b/deployments/kubernetes/charts/clowder2/templates/geoserver/deployment.yaml index 9aaba90d1..9d1b0a8f7 100644 --- a/deployments/kubernetes/charts/clowder2/templates/geoserver/deployment.yaml +++ b/deployments/kubernetes/charts/clowder2/templates/geoserver/deployment.yaml @@ -36,11 +36,13 @@ spec: secretKeyRef: name: {{.Values.geoserver.existingSecret }} key: {{.Values.geoserver.existingGeoserverSecretKey | default "GEOSERVER_PW" }} - {{- else }} + {{- else if (lookup "v1" "Secret" .Release.Namespace (printf "%s-secret" (include "clowder2.releaseName" .))) }} valueFrom: secretKeyRef: name: {{include "clowder2.releaseName" . }}-secret key: GEOSERVER_PW + {{- else }} + value: {{ .Values.geoserver.password }} {{- end }} ports: - containerPort: 8080 diff --git a/deployments/kubernetes/charts/clowder2/templates/heartbeat/deployment.yaml b/deployments/kubernetes/charts/clowder2/templates/heartbeat/deployment.yaml index d306fec81..256d02516 100644 --- a/deployments/kubernetes/charts/clowder2/templates/heartbeat/deployment.yaml +++ b/deployments/kubernetes/charts/clowder2/templates/heartbeat/deployment.yaml @@ -43,11 +43,13 @@ spec: secretKeyRef: name: {{.Values.heartbeat.existingSecret }} key: {{.Values.heartbeat.existingRabbitMQSecretKey | default "rabbitmq-password" }} - {{- else }} + {{- else if (lookup "v1" "Secret" .Release.Namespace (printf "%s-secret" (include "clowder2.releaseName" .))) }} valueFrom: secretKeyRef: name: {{include "clowder2.releaseName" . }}-secret key: rabbitmq-password + {{- else }} + value: {{ .Values.rabbitmq.auth.password }} {{- end }} - name: RABBITMQ_HOST value: {{ include "clowder2.releaseName" . }}-rabbitmq diff --git a/deployments/kubernetes/charts/clowder2/templates/messages/deployment.yaml b/deployments/kubernetes/charts/clowder2/templates/messages/deployment.yaml index ab04f0008..36c591f62 100644 --- a/deployments/kubernetes/charts/clowder2/templates/messages/deployment.yaml +++ b/deployments/kubernetes/charts/clowder2/templates/messages/deployment.yaml @@ -43,11 +43,13 @@ spec: secretKeyRef: name: {{ .Values.message.existingSecret }} key: {{ .Values.message.existingRabbitMQSecretKey | default "rabbitmq-password" }} - {{- else }} + {{- else if (lookup "v1" "Secret" .Release.Namespace (printf "%s-secret" (include "clowder2.releaseName" .))) }} valueFrom: secretKeyRef: name: {{ include "clowder2.releaseName" . }}-secret key: rabbitmq-password + {{- else }} + value: {{ .Values.rabbitmq.auth.password }} {{- end }} - name: RABBITMQ_HOST value: {{ include "clowder2.releaseName" . }}-rabbitmq