Files
2020-05-24 23:45:11 -07:00

326 lines
12 KiB
YAML

## Hazelcast image version
## ref: https://hub.docker.com/r/hazelcast/hazelcast-kubernetes/tags/
##
image:
# repository is the Hazelcast image name
repository: "hazelcast/hazelcast"
# tag is the Hazelcast image tag
tag: "4.0.1"
# pullPolicy is the Docker image pull policy
# It's recommended to change this to 'Always' if the image tag is 'latest'
# ref: http://kubernetes.io/docs/user-guide/images/#updating-images
#
pullPolicy: IfNotPresent
# pullSecrets is an array of docker-registry secret names
# Secrets must be manually created in the namespace.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
# pullSecrets:
# - myRegistryKeySecretName
# Cluster settings
cluster:
# memberCount is the number Hazelcast members
memberCount: 3
# Hazelcast properties
hazelcast:
# javaOpts are additional JAVA_OPTS properties for Hazelcast member
javaOpts:
# loggingLevel is the level of Hazelcast logs (SEVERE, WARNING, INFO, CONFIG, FINE, FINER, and FINEST)
# Note that changing this value requires setting securityContext.runAsUser to 0 and securityContext.readOnlyRootFilesystem to false
# loggingLevel:
# existingConfigMap defines a ConfigMap which contains Hazelcast configuration file(s) that are used instead of hazelcast.yaml configuration below
# existingConfigMap:
# yaml is the Hazelcast YAML configuration file
yaml:
hazelcast:
network:
join:
multicast:
enabled: false
kubernetes:
enabled: true
service-name: ${serviceName}
namespace: ${namespace}
resolve-not-ready-addresses: true
rest-api:
enabled: true
endpoint-groups:
HEALTH_CHECK:
enabled: true
# configurationFiles are any additional Hazelcast configuration files
# configurationFiles:
# affinity specifies the affinity/anti-affinity of different pods. The commented out
# example below shows how you could ensure your hazelcast pods are scheduled on
# different Kubernetes nodes
affinity:
# podAntiAffinity:
# requiredDuringSchedulingIgnoredDuringExecution:
# - labelSelector:
# matchExpressions:
# - key: app.kubernetes.io/name
# operator: In
# values:
# - hazelcast
# - key: role
# operator: In
# values:
# - hazelcast
# topologyKey: kubernetes.io/hostname
# tolerations enable Hazelcast PODs to be able to run on nodes with taints
# tolerations:
# nodeSelector is an array of Hazelcast Node labels for POD assignments
# ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector
nodeSelector: {}
# hostPort is a port under which Hazelcast PODs are exposed on the host machines
# hostPort:
gracefulShutdown:
enabled: true
maxWaitSeconds: 600
# Hazelcast Liveness probe
livenessProbe:
# enabled is a flag to used to enable liveness probe
enabled: true
# initialDelaySeconds is a delay before liveness probe is initiated
initialDelaySeconds: 30
# periodSeconds decides how often to perform the probe
periodSeconds: 10
# timeoutSeconds decides when the probe times out
timeoutSeconds: 10
# successThreshold is the minimum consecutive successes for the probe to be considered successful after having failed
successThreshold: 1
# failureThreshold is the minimum consecutive failures for the probe to be considered failed after having succeeded
failureThreshold: 10
# url path that will be called to check liveness
path: /hazelcast/health/node-state
# port that will be used in liveness probe calls
# port:
# Hazelcast Readiness probe
readinessProbe:
# enabled is a flag to used to enable readiness probe
enabled: true
# initialDelaySeconds is a delay before readiness probe is initiated
initialDelaySeconds: 30
# periodSeconds decides how often to perform the probe
periodSeconds: 10
# timeoutSeconds decides when the probe times out
timeoutSeconds: 10
# successThreshold is the minimum consecutive successes for the probe to be considered successful after having failed
successThreshold: 1
# failureThreshold is the minimum consecutive failures for the probe to be considered failed after having succeeded
failureThreshold: 10
# url path that will be called to check readiness
path: /hazelcast/health/ready
# port that will be used in readiness probe calls
# port:
# Configure resource requests and limits
# ref: http://kubernetes.io/docs/user-guide/compute-resources/
#
# resources:
# requests:
# memory: 256Mi
# cpu: 100m
# limits:
# memory: 1024Mi
# cpu: 200m
# Hazelcast Service properties
service:
# Specifies whether a Service should be created
create: true
# The name of the Service to use.
# The name is used for service discovery by Hazelcast K8S discovery plugin.
# If not set and create is true, a name is generated using the fullname template
# name:
# type defines the Kubernetes service type ('ClusterIP', 'LoadBalancer', or 'NodePort')
type: ClusterIP
# port is the Kubernetes service port
port: 5701
# clusterIP set to None makes the service headless
# It is required if DNS Lookup is used (https://github.com/hazelcast/hazelcast-kubernetes#dns-lookup)
clusterIP: "None"
# Role-based Access Control
rbac:
# Specifies whether RBAC resources should be created
# It is not required if DNS Lookup is used (https://github.com/hazelcast/hazelcast-kubernetes#dns-lookup)
create: true
serviceAccount:
# Specifies whether a ServiceAccount should be created
create: true
# The name of the ServiceAccount to use.
# If not set and create is true, a name is generated using the fullname template
name:
# Security Context properties
securityContext:
# enabled is a flag to enable Security Context
enabled: true
# runAsUser is the user ID used to run the container
runAsUser: 65534
# runAsGroup is the primary group ID used to run all processes within any container of the pod
runAsGroup: 65534
# fsGroup is the group ID associated with the container
fsGroup: 65534
# readOnlyRootFilesystem is a flag to enable readOnlyRootFilesystem for the Hazelcast security context
readOnlyRootFilesystem: true
# Allows to enable a Prometheus to scrape pods, implemented for Hazelcast version >= 3.12 (or 'latest')
metrics:
enabled: false
service:
type: ClusterIP
port: 8080
annotations:
prometheus.io/scrape: "true"
prometheus.io/path: "/metrics"
prometheus.io/port: "8080"
# customVolume is the configuration for any volume mounted as '/data/custom/' (e.g. to mount a volume with custom JARs)
# customVolume:
# Hazelcast Management Center application properties
mancenter:
# enabled is a flag to enable Management Center application
enabled: true
## Hazelcast Management Center image version
## ref: https://hub.docker.com/r/hazelcast/management-center/tags/
##
image:
# repository is the Hazelcast Management Center image name
repository: "hazelcast/management-center"
# tag is the Hazelcast Management Center image tag
tag: "4.0.2"
# pullPolicy is the Docker image pull policy
# It's recommended to change this to 'Always' if the image tag is 'latest'
# ref: http://kubernetes.io/docs/user-guide/images/#updating-images
#
pullPolicy: IfNotPresent
# pullSecrets is an array of docker-registry secret names
# Secrets must be manually created in the namespace.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
# pullSecrets:
# - myRegistryKeySecretName
# ingress configuration for mancenter
ingress:
enabled: false
annotations: {}
# hosts:
# - hazelcast-mancenter.cluster.domain
# tls:
# - secretName: hazelcast-ingress-tls
# hosts:
# - hazelcast-mancenter.cluster.domain
# ssl is a flag to enable SSL for Management Center
ssl: false
# javaOpts are additional JAVA_OPTS properties for Hazelcast Management Center
javaOpts:
# contextPath is the value for the MC_CONTEXT_PATH environment variable, thus overriding the default context path for Hazelcast Management Center
# ref: https://hub.docker.com/r/hazelcast/management-center/
contextPath:
# licenseKey is the license key for Hazelcast Management Center
# if not provided, it can be filled in the Management Center web interface
licenseKey:
# licenseKeySecretName is the name of the secret where the Hazelcast Management Center License Key is stored (can be used instead of licenseKey)
# licenseKeySecretName:
# existingConfigMap defines a ConfigMap which contains Hazelcast Client configuration file(s) that are used instead of hazelcast-client.yaml configuration below
# existingConfigMap:
# yaml is the Hazelcast Client YAML configuration file
yaml:
hazelcast-client:
network:
cluster-members:
- ${serviceName}
# affinity specifies the Management Center affinity/anti-affinity of different pods
# affinity:
# tolerations enable Management Center POD to be able to run on nodes with taints
# tolerations:
# nodeSelector is an array of Hazelcast Management Center Node labels for POD assignments
# ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector
nodeSelector: {}
# Configure resource requests and limits
# ref: http://kubernetes.io/docs/user-guide/compute-resources/
#
# resources:
# requests:
# memory: 256Mi
# cpu: 100m
# limits:
# memory: 1024Mi
# cpu: 200m
# Management Center persistence properties
persistence:
# enabled is a flag to enable persistence for Management Center
enabled: true
# existingClaim is a name of the existing Persistence Volume Claim that will be used for persistence
# if not defined, a new Persistent Value Claim is created with the default name
# existingClaim:
# accessModes defines the access modes for the created Persistent Volume Claim
accessModes:
- ReadWriteOnce
# size is the size of Persistent Volume Claim
size: 8Gi
# Hazelcast Management Center Service properties
service:
# type defines the Kubernetes service type ('ClusterIP', 'LoadBalancer', or 'NodePort')
type: LoadBalancer
# port is the Kubernetes service port
port: 8080
# service https port
httpsPort: 443
# service annotations for management center
annotations: {}
# Hazelcast Management Center Liveness probe
livenessProbe:
# enabled is a flag to used to enable liveness probe
enabled: true
# initialDelaySeconds is a delay before liveness probe is initiated
initialDelaySeconds: 30
# periodSeconds decides how often to perform the probe
periodSeconds: 10
# timeoutSeconds decides when the probe times out
timeoutSeconds: 5
# successThreshold is the minimum consecutive successes for the probe to be considered successful after having failed
successThreshold: 1
# failureThreshold is the minimum consecutive failures for the probe to be considered failed after having succeeded
failureThreshold: 3
# Hazelcast Management Center Readiness probe
readinessProbe:
# enabled is a flag to used to enable readiness probe
enabled: true
# initialDelaySeconds is a delay before readiness probe is initiated
initialDelaySeconds: 30
# periodSeconds decides how often to perform the probe
periodSeconds: 10
# timeoutSeconds decides when the probe times out
timeoutSeconds: 1
# successThreshold is the minimum consecutive successes for the probe to be considered successful after having failed
successThreshold: 1
# failureThreshold is the minimum consecutive failures for the probe to be considered failed after having succeeded
failureThreshold: 3
# secretsMountName is the secret name that is mounted as '/data/secrets/' (e.g. with keystore/trustore files)
# secretsMountName: