minio -> s3
This commit is contained in:
@@ -33,4 +33,5 @@ dependencies:
|
||||
- name: minio
|
||||
version: "17.0.9"
|
||||
repository: "oci://registry-1.docker.io/bitnamicharts"
|
||||
condition: minio.deploy
|
||||
condition: s3.deploy
|
||||
alias: s3
|
||||
|
||||
@@ -245,11 +245,11 @@ clickhouse:
|
||||
size: 10Gi
|
||||
storageClass: "analytics-hdd" # Optional: override for ClickHouse
|
||||
|
||||
minio:
|
||||
s3:
|
||||
persistence:
|
||||
enabled: true
|
||||
size: 10Gi
|
||||
storageClass: "objectstore-ssd" # Optional: override for MinIO
|
||||
storageClass: "objectstore-ssd" # Optional: override for S3
|
||||
|
||||
registry:
|
||||
persistence:
|
||||
@@ -530,7 +530,7 @@ helm upgrade --install trigger . \
|
||||
persistence:
|
||||
size: 100Gi
|
||||
|
||||
minio:
|
||||
s3:
|
||||
persistence:
|
||||
size: 200Gi
|
||||
|
||||
|
||||
@@ -78,10 +78,10 @@ Configuration:
|
||||
{{- else }}
|
||||
- Using external ClickHouse at {{ .Values.clickhouse.external.host }}:{{ .Values.clickhouse.external.httpPort | default 8123 }}
|
||||
{{- end }}
|
||||
{{- if .Values.minio.deploy }}
|
||||
- Using internal MinIO object storage
|
||||
{{- if .Values.s3.deploy }}
|
||||
- Using internal S3-compatible object storage (MinIO)
|
||||
{{- else }}
|
||||
- Using external MinIO object storage at {{ .Values.minio.external.endpoint }}
|
||||
- Using external S3-compatible object storage at {{ .Values.s3.external.endpoint }}
|
||||
{{- end }}
|
||||
{{- if .Values.registry.deploy }}
|
||||
- Using internal Docker registry
|
||||
|
||||
@@ -177,21 +177,32 @@ http://{{ .Values.clickhouse.auth.username }}:{{ .Values.clickhouse.auth.passwor
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
MinIO hostname
|
||||
S3 hostname
|
||||
*/}}
|
||||
{{- define "trigger-v4.minio.hostname" -}}
|
||||
{{- if .Values.minio.endpoint }}
|
||||
{{- .Values.minio.endpoint }}
|
||||
{{- else if .Values.minio.deploy }}
|
||||
{{- define "trigger-v4.s3.hostname" -}}
|
||||
{{- if .Values.s3.external.endpoint }}
|
||||
{{- .Values.s3.external.endpoint }}
|
||||
{{- else if .Values.s3.deploy }}
|
||||
{{- printf "http://%s-minio:9000" .Release.Name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
MinIO connection details
|
||||
S3 connection details
|
||||
*/}}
|
||||
{{- define "trigger-v4.s3.url" -}}
|
||||
{{- include "trigger-v4.s3.hostname" . }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Backward compatibility - MinIO helpers (deprecated)
|
||||
*/}}
|
||||
{{- define "trigger-v4.minio.hostname" -}}
|
||||
{{- include "trigger-v4.s3.hostname" . }}
|
||||
{{- end }}
|
||||
|
||||
{{- define "trigger-v4.minio.url" -}}
|
||||
{{- include "trigger-v4.minio.hostname" . }}
|
||||
{{- include "trigger-v4.s3.url" . }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
|
||||
+6
-6
@@ -1,8 +1,8 @@
|
||||
{{- if .Values.minio.deploy }}
|
||||
{{- if .Values.s3.deploy }}
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: "{{ include "trigger-v4.fullname" . }}-test-minio"
|
||||
name: "{{ include "trigger-v4.fullname" . }}-test-s3"
|
||||
labels:
|
||||
{{- include "trigger-v4.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
@@ -10,12 +10,12 @@ metadata:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
containers:
|
||||
- name: test-minio
|
||||
- name: test-s3
|
||||
image: curlimages/curl:8.14.1
|
||||
command: ['sh', '-c']
|
||||
args:
|
||||
- |
|
||||
echo "Testing MinIO health endpoint..."
|
||||
curl -f http://{{ include "trigger-v4.fullname" . }}-minio:{{ .Values.minio.service.ports.api }}/minio/health/live
|
||||
echo "MinIO test completed successfully"
|
||||
echo "Testing S3 (MinIO) health endpoint..."
|
||||
curl -f http://{{ include "trigger-v4.fullname" . }}-minio:9000/minio/health/live
|
||||
echo "S3 test completed successfully"
|
||||
{{- end }}
|
||||
@@ -20,9 +20,9 @@ This template will fail the Helm deployment if external config is missing for re
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- if not .Values.minio.deploy }}
|
||||
{{- if or (not .Values.minio.external.endpoint) (not .Values.minio.external.accessKeyId) }}
|
||||
{{- fail "MinIO external configuration is required when minio.deploy=false. Please provide minio.external.endpoint and minio.external.accessKeyId" }}
|
||||
{{- if not .Values.s3.deploy }}
|
||||
{{- if or (not .Values.s3.external.endpoint) (not .Values.s3.external.accessKeyId) }}
|
||||
{{- fail "S3 external configuration is required when s3.deploy=false. Please provide s3.external.endpoint and s3.external.accessKeyId" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ spec:
|
||||
- name: DEPLOY_REGISTRY_NAMESPACE
|
||||
value: {{ .Values.registry.repositoryNamespace | quote }}
|
||||
- name: OBJECT_STORE_BASE_URL
|
||||
value: {{ include "trigger-v4.minio.url" . | quote }}
|
||||
value: {{ include "trigger-v4.s3.url" . | quote }}
|
||||
- name: GRACEFUL_SHUTDOWN_TIMEOUT
|
||||
value: {{ .Values.webapp.gracefulShutdownTimeout | quote }}
|
||||
{{- if .Values.webapp.bootstrap.enabled }}
|
||||
|
||||
@@ -91,11 +91,11 @@ clickhouse:
|
||||
cpu: 500m
|
||||
memory: 1Gi
|
||||
|
||||
# Production MinIO (or use external S3)
|
||||
minio:
|
||||
# Production S3-compatible object storage
|
||||
s3:
|
||||
auth:
|
||||
rootUser: "admin"
|
||||
rootPassword: "your-strong-minio-password"
|
||||
rootPassword: "your-strong-s3-password"
|
||||
persistence:
|
||||
enabled: true
|
||||
size: 500Gi
|
||||
|
||||
@@ -391,14 +391,14 @@ clickhouse:
|
||||
</profiles>
|
||||
</clickhouse>
|
||||
|
||||
# MinIO configuration
|
||||
minio:
|
||||
deploy: true # Set to false to use external S3-compatible storage
|
||||
# S3-compatible object storage configuration
|
||||
s3:
|
||||
# Set to false to use external S3-compatible storage
|
||||
# Set to true to deploy internal MinIO (default)
|
||||
deploy: true
|
||||
|
||||
# Bitnami MinIO chart configuration (when deploy: true)
|
||||
# WARNING: This sets the root user and password on first startup and MUST be changed via the dashboard.
|
||||
# - Don't forget to update secrets.objectStore if you intend to use the root credentials.
|
||||
# - You should instead create a new non-root user and update the secrets.objectStore with the new credentials.
|
||||
# MinIO provides S3-compatible storage when deployed internally
|
||||
auth:
|
||||
rootUser: "admin"
|
||||
rootPassword: "very-safe-password"
|
||||
@@ -408,7 +408,7 @@ minio:
|
||||
size: 10Gi
|
||||
resources: {}
|
||||
|
||||
# External MinIO/S3 connection (when deploy: false)
|
||||
# External S3 connection (when deploy: false)
|
||||
external:
|
||||
endpoint: "" # e.g., "https://s3.amazonaws.com" or "https://your-minio.com:9000"
|
||||
accessKeyId: ""
|
||||
|
||||
Reference in New Issue
Block a user