Files
buun-stack/airbyte/airbyte-values.gomplate.yaml
2025-09-13 21:02:57 +09:00

222 lines
4.1 KiB
YAML

# Airbyte Helm Chart Values
# Configuration for Airbyte deployment
global:
# Temporal database configuration
database:
type: external
secretName: airbyte-database-secret
# Storage configuration
storage:
{{- if eq (.Env.AIRBYTE_STORAGE_TYPE | default "minio") "minio" }}
type: s3
s3:
bucket: {{ .Env.AIRBYTE_STORAGE_BUCKET }}
region: us-east-1
authenticationType: credentials
accessKeyIdSecretKey: access_key
secretAccessKeySecretKey: secret_key
credentialsSecretName: airbyte-minio-secret
endpoint: http://minio.minio.svc.cluster.local:9000
pathStyleAccess: true
{{- else }}
type: local
local:
root: /airbyte
{{- end }}
# Database configuration
database:
type: postgres
host: postgres-cluster-rw.postgres.svc.cluster.local
port: 5432
database: airbyte_db
user: airbyte
secretName: airbyte-database-secret
# Deployment mode
deploymentMode: oss
# Security context
securityContext:
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
# Webapp configuration
webapp:
enabled: true
replicaCount: 1
image:
# https://hub.docker.com/r/airbyte/webapp/tags
repository: airbyte/webapp
tag: "{{ .Env.AIRBYTE_WEBAPP_IMAGE_TAG }}"
service:
type: ClusterIP
port: 80
ingress:
enabled: true
className: traefik
annotations:
kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/router.entrypoints: websecure
hosts:
- host: {{ .Env.AIRBYTE_HOST }}
paths:
- path: /
pathType: Prefix
tls:
- hosts:
- {{ .Env.AIRBYTE_HOST }}
resources:
requests:
memory: "256Mi"
cpu: "200m"
limits:
memory: "1Gi"
cpu: "1000m"
# Server configuration
server:
enabled: true
replicaCount: 1
service:
type: ClusterIP
port: 8001
resources:
requests:
memory: "512Mi"
cpu: "500m"
limits:
memory: "2Gi"
cpu: "2000m"
# JVM settings
env:
- name: JAVA_OPTS
value: "-Xmx1g -Xms512m"
# Worker configuration
worker:
enabled: true
replicaCount: 2
resources:
requests:
memory: "512Mi"
cpu: "500m"
limits:
memory: "2Gi"
cpu: "2000m"
# JVM settings
env:
- name: JAVA_OPTS
value: "-Xmx1g -Xms512m"
# Scheduler configuration
scheduler:
enabled: true
replicaCount: 1
resources:
requests:
memory: "256Mi"
cpu: "200m"
limits:
memory: "1Gi"
cpu: "1000m"
# Connector builder server
connectorBuilderServer:
enabled: true
replicaCount: 1
resources:
requests:
memory: "256Mi"
cpu: "200m"
limits:
memory: "1Gi"
cpu: "1000m"
# Airbyte bootloader (database initialization)
airbyte-bootloader:
enabled: true
resources:
requests:
memory: "512Mi"
cpu: "500m"
limits:
memory: "2Gi"
cpu: "1000m"
# Temporal configuration with external PostgreSQL
# Note: These environment variables may cause Helm warnings about duplicates,
# but they are necessary for external PostgreSQL configuration
temporal:
enabled: true
replicaCount: 1
extraEnv:
- name: DB
value: "postgres12"
- name: POSTGRES_SEEDS
value: "postgres-cluster-rw.postgres.svc.cluster.local"
- name: DATABASE_DB
value: "temporal"
- name: POSTGRES_USER
value: "airbyte"
- name: POSTGRES_PWD
valueFrom:
secretKeyRef:
name: airbyte-database-secret
key: DATABASE_PASSWORD
- name: SKIP_DB_CREATE
value: "true"
resources:
requests:
memory: "512Mi"
cpu: "500m"
limits:
memory: "2Gi"
cpu: "2000m"
# Metrics configuration
metrics:
enabled: true
resources:
requests:
memory: "256Mi"
cpu: "100m"
limits:
memory: "1Gi"
cpu: "500m"
# Pod labels
podLabels:
app: airbyte
# Pod annotations
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "9090"
# PostgreSQL (disabled - using external)
postgresql:
enabled: false
# MinIO (disabled - using external if configured)
minio:
enabled: false