Files
charts/bitnami/etcd/values.yaml
2021-04-06 09:33:47 +02:00

622 lines
18 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Global Docker image parameters
## Please, note that this will override the image parameters, including dependencies, configured to use the global value
## Current available global Docker image parameters: imageRegistry and imagePullSecrets
##
# global:
# imageRegistry: myRegistryName
# imagePullSecrets:
# - myRegistryKeySecretName
# storageClass: myStorageClass
## Bitnami etcd image version
## ref: https://hub.docker.com/r/bitnami/etcd/tags/
##
image:
registry: docker.io
repository: bitnami/etcd
tag: 3.4.15-debian-10-r33
## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
##
pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets.
## Secrets must be manually created in the namespace.
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
## e.g:
## pullSecrets:
## - myRegistryKeySecretName
##
pullSecrets: []
## Set to true if you would like to see extra information on logs
##
debug: false
## String to partially override common.names.fullname template (will maintain the release name)
##
# nameOverride:
## String to fully override common.names.fullname template
##
# fullnameOverride:
## Add labels to all the deployed resources
##
commonLabels: {}
## Add annotations to all the deployed resources
##
commonAnnotations: {}
## Force target Kubernetes version (using Helm capabilities if not set)
##
kubeVersion: ""
## Kubernetes Cluster Domain
##
clusterDomain: cluster.local
## Extra objects to deploy (value evaluated as a template)
##
extraDeploy: []
## Auto compaction mode, by default periodic. Valid values: periodic, revision.
## - 'periodic' for duration based retention, defaulting to hours if no time unit is provided (e.g. 5m).
## - 'revision' for revision number based retention.
##
# autoCompactionMode: periodic
## Auto compaction retention for mvcc key value store in hour, by default 0, means disabled
##
# autoCompactionRetention: 0
## Authentication parameters
##
auth:
## Role-based access control parameters
## ref: https://etcd.io/docs/current/op-guide/authentication/
##
rbac:
enabled: true
## Allow to use etcd without configuring RBAC authentication
##
allowNoneAuthentication: true
## root user password. The root user is always `root`
##
rootPassword: ""
## Name of the existing secret containing credentials for the root user
##
existingSecret: ""
## TLS authentication for client-to-server communications
## ref: https://etcd.io/docs/current/op-guide/security/
##
client:
## Switch to encrypt client-to-server communications using TLS
##
secureTransport: false
## Switch to automatically create the TLS certificates
##
useAutoTLS: false
## Name of the existing secret containing the TLS certificates for client-to-server communications
##
existingSecret: ""
## Switch to enable host authentication using TLS certificates. Requires existing secret
##
enableAuthentication: false
## Name of the file containing the client certificate
##
certFilename: cert.pem
## Name of the file containing the client certificate private key
##
certKeyFilename: key.pem
## Name of the file containing the client CA certificate
## If not specified and `auth.client.enableAuthentication=true` or `auth.rbac.enabled=true`, the default is is `ca.crt`
##
caFilename: ""
## TLS authentication for server-to-server communications
## ref: https://etcd.io/docs/current/op-guide/security/
##
peer:
## Switch to encrypt server-to-server communications using TLS
##
secureTransport: false
## Switch to automatically create the TLS certificates
##
useAutoTLS: false
## Name of the existing secret containing the TLS certificates for server-to-server communications
##
existingSecret: ""
## Switch to enable host authentication using TLS certificates. Requires existing secret
##
enableAuthentication: false
## Name of the file containing the peer certificate
##
certFilename: cert.pem
## Name of the file containing the peer certificate private key
##
certKeyFilename: key.pem
## Name of the file containing the peer CA certificate
## If not specified and `auth.peer.enableAuthentication=true` or `rbac.enabled=true`, the default is is `ca.crt`
##
caFilename: ""
## Initial cluster state. Allowed values: 'new' or 'existing'
## If this values is not set, the default values below are set:
## - 'new': when installing the chart ('helm install ...')
## - 'existing': when upgrading the chart ('helm upgrade ...')
##
initialClusterState: ""
## Limits the number of operating system threads that can execute user-level
## Go code simultaneously by setting GOMAXPROCS environment variable
## ref: https://golang.org/pkg/runtime
##
# maxProcs:
## Use a PreStop hook to remove the etcd members from the etcd cluster
## they the containers are terminated
## NOTE: Ignored if lifecycleHooks is set or replicaCount=1
##
removeMemberOnContainerTermination: true
## etcd configuration
## Specify content for etcd.conf.yml
## e.g:
## configuration: |-
## foo: bar
## baz:
##
# configuration:
## Existing ConfigMap with etcd configuration
## NOTE: When it's set the configuration parameter is ignored
##
# existingConfigmap:
## An array to add extra env vars
## e.g:
## extraEnvVars:
## - name: FOO
## value: "bar"
##
extraEnvVars: []
## ConfigMap with extra environment variables
##
extraEnvVarsCM: ""
## Secret with extra environment variables
##
extraEnvVarsSecret: ""
## Command and args for running the container (set to default if not set). Use array form
##
command: []
args: []
## Number of replicas
##
replicaCount: 1
## Update strategy
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
##
updateStrategy:
## Update strategy type, can be set to RollingUpdate or OnDelete.
##
type: RollingUpdate
## Pod management policy
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies
##
podManagementPolicy: Parallel
## etcd pod host aliases
## ref: https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
##
hostAliases: []
## Override default etcd container hooks
##
lifecycleHooks: {}
## etcd container ports to open
##
containerPorts:
client: 2379
peer: 2380
## etcd containers' SecurityContext
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
##
podSecurityContext:
enabled: true
fsGroup: 1001
## etcd pods' Security Context
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
##
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsNonRoot: true
## etcd containers' resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources:
## We usually recommend not to specify default resources and to leave this as a conscious
## choice for the user. This also increases chances charts run on environments with little
## resources, such as Minikube. If you do want to specify resources, uncomment the following
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
## e.g:
## limits:
## cpu: 500m
## memory: 1Gi
##
limits: {}
requests: {}
## Configure extra options for liveness, readiness and startup probes
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes
##
livenessProbe:
enabled: true
initialDelaySeconds: 60
periodSeconds: 30
timeoutSeconds: 5
successThreshold: 1
failureThreshold: 5
readinessProbe:
enabled: true
initialDelaySeconds: 60
periodSeconds: 10
timeoutSeconds: 5
successThreshold: 1
failureThreshold: 5
startupProbe:
enabled: false
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 5
successThreshold: 1
failureThreshold: 60
## Custom Liveness probes for etcd
##
customLivenessProbe: {}
## Custom Readiness probes for etcd
##
customReadinessProbe: {}
## Custom Startup probe for etcd
##
customStartupProbe: {}
## Extra volumes to add to the etcd statefulset
##
extraVolumes: []
## Extra volume mounts to add to etcd containers
##
extraVolumeMounts: []
## Add init containers to the etcd pods.
## e.g:
## initContainers:
## - name: your-image-name
## image: your-image
## imagePullPolicy: Always
## ports:
## - name: portname
## containerPort: 1234
##
initContainers: {}
## Add sidecars to the etcd pods.
## e.g:
## sidecars:
## - name: your-image-name
## image: your-image
## imagePullPolicy: Always
## ports:
## - name: portname
## containerPort: 1234
##
sidecars: {}
## Pod annotations
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
##
podAnnotations: {}
## Pod labels
## Ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
##
podLabels: {}
## Pod affinity preset
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
## Allowed values: soft, hard
##
podAffinityPreset: ""
## Pod anti-affinity preset
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
## Allowed values: soft, hard
##
podAntiAffinityPreset: soft
## Node affinity preset
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
## Allowed values: soft, hard
##
nodeAffinityPreset:
## Node affinity type
## Allowed values: soft, hard
##
type: ""
## Node label key to match
## e.g:
## key: "kubernetes.io/e2e-az-name"
##
key: ""
## Node label values to match
## e.g:
## values:
## - e2e-az1
## - e2e-az2
##
values: []
## Affinity for pod assignment
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
##
affinity: {}
## Node labels for pod assignment
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
##
nodeSelector: {}
## Tolerations for pod assignment
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
##
tolerations: []
## Name of the priority class to be used by etcd pods, priority class needs to be created beforehand
## Ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
##
priorityClassName: ""
## etcd Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
##
pdb:
create: false
## Min number of pods that must still be available after the eviction
##
minAvailable: 1
## Max number of pods that can be unavailable after the eviction
##
# maxUnavailable: 1
## Service parameters
##
service:
## K8s service type
##
type: ClusterIP
## etcd client port
##
port: 2379
## etcd client port name override
##
clientPortNameOverride: ""
## etcd peer port
##
peerPort: 2380
## etcd peer port name override
##
peerPortNameOverride: ""
## Specify the nodePort(s) value(s) for the LoadBalancer and NodePort service types.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
##
nodePorts:
clientPort: ""
peerPort: ""
## loadBalancerIP for the etcd service (optional, cloud specific)
## ref: http://kubernetes.io/docs/user-guide/services/#type-loadbalancer
##
loadBalancerIP: ""
## Load Balancer sources
## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
## e.g:
## loadBalancerSourceRanges:
## - 10.10.10.0/24
##
loadBalancerSourceRanges: []
## External IPs
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
##
externalIPs: []
## Provide any additional annotations which may be required (evaluated as a template)
##
annotations: {}
## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
## If true, use a Persistent Volume Claim. If false, use emptyDir.
##
enabled: true
## Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# storageClass: "-"
## Persistent Volume Claim annotations (evaluated as a template)
##
annotations: {}
## Persistent Volume Access Modes
##
accessModes:
- ReadWriteOnce
## Persistent Volume size
##
size: 8Gi
## Provide any additional label selector to further filter the set of volumes (evaluated as a template)
## ref: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector
##
selector: {}
## Init containers parameters:
## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section.
##
volumePermissions:
enabled: false
image:
registry: docker.io
repository: bitnami/bitnami-shell
tag: "10"
pullPolicy: Always
## Optionally specify an array of imagePullSecrets.
## Secrets must be manually created in the namespace.
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
## e.g:
## pullSecrets:
## - myRegistryKeySecretName
##
pullSecrets: []
## Init container' resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources:
## We usually recommend not to specify default resources and to leave this as a conscious
## choice for the user. This also increases chances charts run on environments with little
## resources, such as Minikube. If you do want to specify resources, uncomment the following
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
## e.g:
## limits:
## cpu: 500m
## memory: 1Gi
##
limits: {}
requests: {}
## etcd metrics configuration
##
metrics:
enabled: false
## Annotations for the Prometheus metrics on etcd pods
##
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "2379"
## Prometheus Service Monitor
## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint
##
podMonitor:
## If the Prometheus Operator is installed in your cluster, set to true to create a PodMonitor entry
##
enabled: false
## Namespace in which Prometheus is running
##
# namespace: monitoring
## Specify the interval at which metrics should be scraped
##
interval: 30s
## Specify the timeout after which the scrape is ended
##
# scrapeTimeout: 30s
## Used to pass Labels that are used by the Prometheus installed in your cluster to select PodMonitors to work with
## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec
##
additionalLabels: {}
## Scheme to use for scraping.
##
scheme: http
## TLS configuration for the endpoints to be scraped.
## ref: https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/api.md#tlsconfig
## e.g:
## tlsConfig:
## ca:
## secret:
## name: existingSecretName
##
tlsConfig: {}
## Start a new etcd cluster recovering the data from an existing snapshot
## before bootstrapping
##
startFromSnapshot:
enabled: false
## Existing PVC containing the etcd snapshot
##
existingClaim: ""
## Snapshot filename
##
snapshotFilename: ""
## Enable auto disaster recovery by periodically snapshotting the keyspace:
## - It creates a cronjob to periodically snapshotting the keyspace
## - It also creates a ReadWriteMany PVC to store the snapshots
## If the cluster permanently loses more than (N-1)/2 members, it tries to
## recover itself from the last available snapshot.
##
disasterRecovery:
enabled: false
cronjob:
## Schedule in Cron format to save snapshots
## See https://en.wikipedia.org/wiki/Cron
##
schedule: "*/30 * * * *"
## Number of successful finished jobs to retain
##
historyLimit: 1
## Number of etcd snapshots to retain, tagged with date
##
snapshotHistoryLimit: 1
## Pod annotations
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
##
podAnnotations: {}
## Configure resource requests and limits for snapshotter containers
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources:
## We usually recommend not to specify default resources and to leave this as a conscious
## choice for the user. This also increases chances charts run on environments with little
## resources, such as Minikube. If you do want to specify resources, uncomment the following
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
## e.g:
## limits:
## cpu: 500m
## memory: 1Gi
##
limits: {}
requests: {}
pvc:
## A manually managed Persistent Volume and Claim
## If defined, PVC must be created manually before volume will be bound
## The value is evaluated as a template, so, for example, the name can depend on .Release or .Chart
##
# existingClaim:
## PVC Storage Request
##
size: 2Gi
## storageClassName, choose a storageClassName with ReadWriteMany support
##
storageClassName: nfs