DaemonSet is a k8s resource that schedules one instance per node, which is useful for some garage deployment use cases, including managing garage nodes using k8s node labels
156 lines
4.2 KiB
YAML
156 lines
4.2 KiB
YAML
# Default values for garage.
|
|
# This is a YAML-formatted file.
|
|
# Declare variables to be passed into your templates.
|
|
|
|
# Garage configuration. These values go to garage.toml
|
|
garage:
|
|
metadataDir: "/mnt/meta"
|
|
dataDir: "/mnt/data"
|
|
# Default to 3 replicas, see the replication_mode section at
|
|
# https://garagehq.deuxfleurs.fr/documentation/reference-manual/configuration/
|
|
replicationMode: "3"
|
|
rpcBindAddr: "[::]:3901"
|
|
# If not given, a random secret will be generated and stored in a Secret object
|
|
rpcSecret: ""
|
|
# This is not required if you use the integrated kubernetes discovery
|
|
bootstrapPeers: []
|
|
kubernetesSkipCrd: false
|
|
s3:
|
|
api:
|
|
region: "garage"
|
|
rootDomain: ".s3.garage.tld"
|
|
web:
|
|
rootDomain: ".web.garage.tld"
|
|
index: "index.html"
|
|
|
|
# Data persistence
|
|
persistence:
|
|
enabled: true
|
|
meta:
|
|
# storageClass: "fast-storage-class"
|
|
size: 100Mi
|
|
# used only for daemon sets
|
|
hostPath: /var/lib/garage/meta
|
|
data:
|
|
# storageClass: "slow-storage-class"
|
|
size: 100Mi
|
|
# used only for daemon sets
|
|
hostPath: /var/lib/garage/data
|
|
|
|
# Deployment configuration
|
|
deployment:
|
|
# Switchable to DaemonSet
|
|
kind: StatefulSet
|
|
# Number of StatefulSet replicas/garage nodes to start
|
|
replicaCount: 3
|
|
|
|
image:
|
|
repository: dxflrs/amd64_garage
|
|
# please prefer using the chart version and not this tag
|
|
tag: ""
|
|
pullPolicy: IfNotPresent
|
|
|
|
imagePullSecrets: []
|
|
nameOverride: ""
|
|
fullnameOverride: ""
|
|
|
|
serviceAccount:
|
|
# Specifies whether a service account should be created
|
|
create: true
|
|
# Annotations to add to the service account
|
|
annotations: {}
|
|
# The name of the service account to use.
|
|
# If not set and create is true, a name is generated using the fullname template
|
|
name: ""
|
|
|
|
podAnnotations: {}
|
|
|
|
podSecurityContext: {}
|
|
# fsGroup: 2000
|
|
|
|
securityContext:
|
|
# The default security context is heavily restricted
|
|
# feel free to tune it to your requirements
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
readOnlyRootFilesystem: true
|
|
runAsNonRoot: true
|
|
runAsUser: 1000
|
|
|
|
service:
|
|
# You can rely on any service to expose your cluster
|
|
# - ClusterIP (+ Ingress)
|
|
# - NodePort (+ Ingress)
|
|
# - LoadBalancer
|
|
type: ClusterIP
|
|
s3:
|
|
api:
|
|
port: 3900
|
|
web:
|
|
port: 3902
|
|
# NOTE: the admin API is excluded for now as it is not consistent across nodes
|
|
ingress:
|
|
s3:
|
|
api:
|
|
enabled: false
|
|
# Rely either on the className or the annotation below but not both
|
|
# replace "nginx" by an Ingress controller
|
|
# you can find examples here https://kubernetes.io/docs/concepts/services-networking/ingress-controllers
|
|
# className: "nginx"
|
|
annotations: {}
|
|
# kubernetes.io/ingress.class: "nginx"
|
|
# kubernetes.io/tls-acme: "true"
|
|
labels: {}
|
|
hosts:
|
|
- host: "s3.garage.tld" # garage S3 API endpoint
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
- host: "*.s3.garage.tld" # garage S3 API endpoint, DNS style bucket access
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
tls: []
|
|
# - secretName: my-garage-cluster-tls
|
|
# hosts:
|
|
# - kubernetes.docker.internal
|
|
web:
|
|
enabled: false
|
|
# Rely either on the className or the annotation below but not both
|
|
# replace "nginx" by an Ingress controller
|
|
# you can find examples here https://kubernetes.io/docs/concepts/services-networking/ingress-controllers
|
|
# className: "nginx"
|
|
annotations: {}
|
|
# kubernetes.io/ingress.class: nginx
|
|
# kubernetes.io/tls-acme: "true"
|
|
labels: {}
|
|
hosts:
|
|
- host: "*.web.garage.tld" # wildcard website access with bucket name prefix
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
- host: "mywebpage.example.com" # specific bucket access with FQDN bucket
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
tls: []
|
|
# - secretName: my-garage-cluster-tls
|
|
# hosts:
|
|
# - kubernetes.docker.internal
|
|
|
|
resources: {}
|
|
# The following are indicative for a small-size deployement, for anything serious double them.
|
|
# limits:
|
|
# cpu: 100m
|
|
# memory: 1024Mi
|
|
# requests:
|
|
# cpu: 100m
|
|
# memory: 512Mi
|
|
|
|
nodeSelector: {}
|
|
|
|
tolerations: []
|
|
|
|
affinity: {}
|