mirror of
https://github.com/bitnami/charts.git
synced 2026-03-06 06:58:50 +08:00
572 lines
16 KiB
YAML
572 lines
16 KiB
YAML
## 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
|
|
|
|
## Bitnami NATS image version
|
|
## ref: https://hub.docker.com/r/bitnami/nats/tags/
|
|
##
|
|
image:
|
|
registry: docker.io
|
|
repository: bitnami/nats
|
|
tag: 2.2.5-debian-10-r0
|
|
## 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/
|
|
## Example:
|
|
## pullSecrets:
|
|
## - myRegistryKeySecretName
|
|
##
|
|
pullSecrets: []
|
|
|
|
## Force target Kubernetes version (using Helm capabilites if not set)
|
|
##
|
|
kubeVersion:
|
|
|
|
## 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: {}
|
|
|
|
## Kubernetes Cluster Domain
|
|
##
|
|
clusterDomain: cluster.local
|
|
|
|
## Extra objects to deploy (value evaluated as a template)
|
|
##
|
|
extraDeploy: []
|
|
|
|
## Client Authentication
|
|
## ref: https://github.com/nats-io/gnatsd#authentication
|
|
##
|
|
auth:
|
|
enabled: true
|
|
user: nats_client
|
|
# password:
|
|
# token:
|
|
timeout: 1
|
|
|
|
## Cluster Authentication
|
|
## ref: https://github.com/nats-io/gnatsd#authentication
|
|
##
|
|
clusterAuth:
|
|
enabled: true
|
|
user: nats_cluster
|
|
# password:
|
|
# token:
|
|
|
|
## Logging parameters
|
|
## ref: https://github.com/nats-io/gnatsd#command-line-arguments
|
|
##
|
|
debug:
|
|
enabled: false
|
|
trace: false
|
|
logtime: false
|
|
|
|
## System overrides parameters
|
|
## ref: https://github.com/nats-io/gnatsd#configuration-file
|
|
##
|
|
# maxConnections: 100
|
|
# maxControlLine: 512
|
|
# maxPayload: 65536
|
|
# writeDeadline: "2s"
|
|
|
|
## Nats filenames:
|
|
## - For Nats 1.x.x version, some filenames (binary, configuration file, pid file) uses `gnatsd` as part of the name.
|
|
## - For Nats 2.x.x version, those filenames now uses `nats-server`
|
|
## In order to make the chart compatible with NATS versions 1.0.0 and 2.0.0 we have parametrized the following value
|
|
## to specify the proper filename according to the image version.
|
|
##
|
|
natsFilename: nats-server
|
|
|
|
## Command and args for running the container (set to default if not set). Use array form
|
|
##
|
|
command: []
|
|
args: []
|
|
|
|
## Deployment pod host aliases
|
|
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
|
|
##
|
|
hostAliases: []
|
|
|
|
## Extra flags to be passed to NATS
|
|
## Example:
|
|
## extraFlags:
|
|
## tls.insecure-skip-tls-verify: ""
|
|
## web.telemetry-path: "/metrics"
|
|
##
|
|
extraFlags: {}
|
|
|
|
## An array to add extra env vars
|
|
## Example:
|
|
## extraEnvVars:
|
|
## - name: FOO
|
|
## value: "bar"
|
|
##
|
|
extraEnvVars: []
|
|
|
|
## ConfigMap with extra environment variables
|
|
##
|
|
extraEnvVarsCM:
|
|
|
|
## Secret with extra environment variables
|
|
##
|
|
extraEnvVarsSecret:
|
|
|
|
## NATS cluster resource type under Kubernetes. Allowed values: statefulset (default) or deployment
|
|
## ref:
|
|
## - https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/
|
|
## - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
##
|
|
resourceType: "statefulset"
|
|
|
|
## Number of NATS replicas to deploy
|
|
##
|
|
replicaCount: 1
|
|
|
|
## Use an alternate scheduler, e.g. "stork".
|
|
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
|
|
##
|
|
# schedulerName:
|
|
|
|
## Pod Priority Class
|
|
## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
|
|
##
|
|
# priorityClassName: ""
|
|
|
|
## Strategy to use to update Pods
|
|
##
|
|
updateStrategy:
|
|
## StrategyType
|
|
## Can be set to RollingUpdate or OnDelete
|
|
##
|
|
type: RollingUpdate
|
|
|
|
## NATS pods' Security Context
|
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
|
|
##
|
|
podSecurityContext:
|
|
enabled: false
|
|
## fsGroup: 1001
|
|
##
|
|
|
|
## NATS containers' SecurityContext
|
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
|
##
|
|
containerSecurityContext:
|
|
enabled: false
|
|
## runAsUser: 1001
|
|
## runAsNonRoot: true
|
|
##
|
|
|
|
## NATS 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:'.
|
|
limits: {}
|
|
# cpu: 200m
|
|
# memory: 256Mi
|
|
requests: {}
|
|
# cpu: 200m
|
|
# memory: 256Mi
|
|
|
|
## NATS containers' liveness and readiness probes.
|
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes
|
|
##
|
|
livenessProbe:
|
|
enabled: true
|
|
httpGet:
|
|
path: /
|
|
port: monitoring
|
|
initialDelaySeconds: 30
|
|
periodSeconds: 10
|
|
timeoutSeconds: 5
|
|
failureThreshold: 6
|
|
successThreshold: 1
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /
|
|
port: monitoring
|
|
enabled: true
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 10
|
|
timeoutSeconds: 5
|
|
failureThreshold: 6
|
|
successThreshold: 1
|
|
|
|
## Custom Liveness probes for NATS
|
|
##
|
|
customLivenessProbe: {}
|
|
|
|
## Custom Rediness probes NATS
|
|
##
|
|
customReadinessProbe: {}
|
|
|
|
## Pod extra labels
|
|
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
|
##
|
|
podLabels: {}
|
|
|
|
## Annotations for server pods.
|
|
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
##
|
|
podAnnotations: {}
|
|
|
|
## 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. Evaluated as a template.
|
|
## 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. Evaluated as a template.
|
|
## ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
##
|
|
nodeSelector: {}
|
|
|
|
## Tolerations for pod assignment. Evaluated as a template.
|
|
## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
##
|
|
tolerations: []
|
|
|
|
## Extra volumes to add to the deployment
|
|
##
|
|
extraVolumes: []
|
|
|
|
## Extra volume mounts to add to the container
|
|
##
|
|
extraVolumeMounts: []
|
|
|
|
## Add init containers to the NATS pods.
|
|
## Example:
|
|
## initContainers:
|
|
## - name: your-image-name
|
|
## image: your-image
|
|
## imagePullPolicy: Always
|
|
## ports:
|
|
## - name: portname
|
|
## containerPort: 1234
|
|
##
|
|
initContainers: {}
|
|
|
|
## Add sidecars to the NATS pods.
|
|
## Example:
|
|
## sidecars:
|
|
## - name: your-image-name
|
|
## image: your-image
|
|
## imagePullPolicy: Always
|
|
## ports:
|
|
## - name: portname
|
|
## containerPort: 1234
|
|
##
|
|
sidecars: {}
|
|
|
|
## NATS svc used for client connections
|
|
## ref: https://github.com/nats-io/gnatsd#running
|
|
##
|
|
client:
|
|
service:
|
|
## Kubernetes service type
|
|
##
|
|
type: ClusterIP
|
|
port: 4222
|
|
## Specify the nodePort value for the LoadBalancer and NodePort service types.
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
|
|
##
|
|
# nodePort:
|
|
## Provide any additional annotations which may be required. This can be used to
|
|
## set the LoadBalancer service type to internal only.
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
|
|
##
|
|
annotations: {}
|
|
## Use loadBalancerIP to request a specific static IP,
|
|
## otherwise leave blank
|
|
##
|
|
# loadBalancerIP:
|
|
|
|
## Kubernetes svc used for clustering
|
|
## ref: https://github.com/nats-io/gnatsd#clustering
|
|
##
|
|
cluster:
|
|
## Use connectRetries to configure number of connect retries for implicit routes,
|
|
## otherwise leave blank
|
|
##
|
|
# connectRetries:
|
|
service:
|
|
## Kubernetes service type
|
|
##
|
|
type: ClusterIP
|
|
port: 6222
|
|
## Specify the nodePort value for the LoadBalancer and NodePort service types.
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
|
|
##
|
|
# nodePort:
|
|
## Provide any additional annotations which may be required. This can be used to
|
|
## set the LoadBalancer service type to internal only.
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
|
|
##
|
|
annotations: {}
|
|
## Use loadBalancerIP to request a specific static IP,
|
|
## otherwise leave blank
|
|
##
|
|
# loadBalancerIP:
|
|
|
|
## NATS svc used for monitoring
|
|
## ref: https://github.com/nats-io/gnatsd#monitoring
|
|
##
|
|
monitoring:
|
|
service:
|
|
## Kubernetes service type
|
|
##
|
|
type: ClusterIP
|
|
port: 8222
|
|
## Specify the nodePort value for the LoadBalancer and NodePort service types.
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
|
|
##
|
|
# nodePort:
|
|
## Provide any additional annotations which may be required. This can be used to
|
|
## set the LoadBalancer service type to internal only.
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
|
|
##
|
|
annotations: {}
|
|
## Use loadBalancerIP to request a specific static IP,
|
|
## otherwise leave blank
|
|
##
|
|
loadBalancerIP:
|
|
|
|
## Configure the ingress resource that allows you to access the
|
|
## NATS installation. Set up the URL
|
|
## ref: http://kubernetes.io/docs/user-guide/ingress/
|
|
##
|
|
ingress:
|
|
## Set to true to enable ingress record generation
|
|
##
|
|
enabled: false
|
|
|
|
## Set this to true in order to add the corresponding annotations for cert-manager
|
|
##
|
|
certManager: false
|
|
|
|
## Ingress Path type
|
|
##
|
|
pathType: ImplementationSpecific
|
|
|
|
## Override API Version (automatically detected if not set)
|
|
##
|
|
apiVersion:
|
|
|
|
## When the ingress is enabled, a host pointing to this will be created
|
|
##
|
|
hostname: nats.local
|
|
|
|
## The Path to NATS. You may need to set this to '/*' in order to use this
|
|
## with ALB ingress controllers.
|
|
##
|
|
path: /
|
|
|
|
## Ingress annotations done as key:value pairs
|
|
## For a full list of possible ingress annotations, please see
|
|
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md
|
|
##
|
|
## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set
|
|
##
|
|
annotations: {}
|
|
|
|
## Enable TLS configuration for the hostname defined at ingress.hostname parameter
|
|
## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }}
|
|
## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it
|
|
##
|
|
tls: false
|
|
|
|
## The list of additional hostnames to be covered with this ingress record.
|
|
## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array
|
|
## extraHosts:
|
|
## - name: nats.local
|
|
## path: /
|
|
##
|
|
|
|
## Any additional arbitrary paths that may need to be added to the ingress under the main host.
|
|
## For example: The ALB ingress controller requires a special rule for handling SSL redirection.
|
|
## extraPaths:
|
|
## - path: /*
|
|
## backend:
|
|
## serviceName: ssl-redirect
|
|
## servicePort: use-annotation
|
|
##
|
|
|
|
## The tls configuration for additional hostnames to be covered with this ingress record.
|
|
## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
|
|
## extraTls:
|
|
## - hosts:
|
|
## - nats.local
|
|
## secretName: nats.local-tls
|
|
##
|
|
|
|
## If you're providing your own certificates, please use this to add the certificates as secrets
|
|
## key and certificate should start with -----BEGIN CERTIFICATE----- or
|
|
## -----BEGIN RSA PRIVATE KEY-----
|
|
##
|
|
## name should line up with a tlsSecret set further up
|
|
## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set
|
|
##
|
|
## It is also possible to create and manage the certificates outside of this helm chart
|
|
## Please see README.md for more information
|
|
##
|
|
secrets: []
|
|
## - name: nats.local-tls
|
|
## key:
|
|
## certificate:
|
|
##
|
|
|
|
## Network Policy configuration
|
|
## ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
|
|
##
|
|
networkPolicy:
|
|
## Enable creation of NetworkPolicy resources
|
|
##
|
|
enabled: false
|
|
## The Policy model to apply. When set to false, only pods with the correct
|
|
## client label will have network access to the ports Keycloak is listening
|
|
## on. When true, Keycloak will accept connections from any source
|
|
## (with the correct destination port).
|
|
##
|
|
allowExternal: true
|
|
## Additional NetworkPolicy Ingress "from" rules to set. Note that all rules are OR-ed.
|
|
## Example:
|
|
## additionalRules:
|
|
## - matchLabels:
|
|
## - role: frontend
|
|
## - matchExpressions:
|
|
## - key: role
|
|
## operator: In
|
|
## values:
|
|
## - frontend
|
|
##
|
|
additionalRules: {}
|
|
|
|
## NATS 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
|
|
|
|
## Metrics / Prometheus NATS Exporter
|
|
##
|
|
## ref: https://github.com/nats-io/prometheus-nats-exporter
|
|
##
|
|
metrics:
|
|
enabled: false
|
|
image:
|
|
registry: docker.io
|
|
repository: bitnami/nats-exporter
|
|
tag: 0.7.0-debian-10-r77
|
|
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/
|
|
##
|
|
# pullSecrets:
|
|
# - myRegistryKeySecretName
|
|
## Metrics exporter resource requests and limits
|
|
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
##
|
|
resources: {}
|
|
## Metrics exporter port
|
|
##
|
|
containerPort: 7777
|
|
## Metrics exporter flags
|
|
##
|
|
flags:
|
|
- -connz
|
|
- -routez
|
|
- -subz
|
|
- -varz
|
|
## Metrics service configuration
|
|
##
|
|
service:
|
|
type: ClusterIP
|
|
port: 7777
|
|
## Use serviceLoadBalancerIP to request a specific static IP,
|
|
## otherwise leave blank
|
|
# loadBalancerIP:
|
|
annotations:
|
|
prometheus.io/scrape: "true"
|
|
prometheus.io/port: "{{ .Values.metrics.service.port }}"
|
|
labels: {}
|
|
## Prometheus Operator ServiceMonitor configuration
|
|
##
|
|
serviceMonitor:
|
|
enabled: false
|
|
## Specify a namespace if needed
|
|
# namespace: monitoring
|
|
# fallback to the prometheus default unless specified
|
|
# interval: 10s
|
|
## Defaults to what's used if you follow CoreOS [Prometheus Install Instructions](https://github.com/bitnami/charts/tree/master/bitnami/prometheus-operator#tldr)
|
|
## [Prometheus Selector Label](https://github.com/bitnami/charts/tree/master/bitnami/prometheus-operator#prometheus-operator-1)
|
|
## [Kube Prometheus Selector Label](https://github.com/bitnami/charts/tree/master/bitnami/prometheus-operator#exporters)
|
|
##
|
|
selector:
|
|
prometheus: kube-prometheus
|