123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359 |
- # Default values for Neo4j.
- # This is a YAML-formatted file.
- # Declare name/value pairs to be passed into your templates.
- # name: value
- name: "neo4j"
- # Specs for the Neo4j docker image
- image: "neo4j"
- imageTag: "4.4.10-enterprise"
- imagePullPolicy: "IfNotPresent"
- # imagePullSecret: registry-secret
- acceptLicenseAgreement: "yes"
- podDisruptionBudget: {}
- # minAvailable: 2
- # maxUnavailable: 1
- ## 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: []
- ## Affinity for pod assignment
- ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
- affinity: {}
- ## Labels to be added to pods
- podLabels: {}
- ## Annotations to be added to pods
- podAnnotations: {}
- # Use password authentication
- authEnabled: true
- ## Specify password for neo4j user
- ## Defaults to a random 10-character alphanumeric string if not set and authEnabled is true
- neo4jPassword: insur132
- ## Specify secret name containing the password for neo4j user
- # existingPasswordSecret
- ## Specify the key in existingPasswordSecret, in which the password is contained
- # existingPasswordSecretKey
- # Specify cluster domain (used eg. as suffix in the eventual internal hostnames)
- clusterDomain: "cluster.local"
- # Specs for the images used for running tests against the Helm package
- # https://github.com/mneedham/k8s-kubectl this is a general kubectl docker image
- testImage: "gcr.io/neo4j-helm/tester"
- # Whether or not to use APOC: https://neo4j.com/labs/apoc/
- # If you do not want APOC, make the array empty []
- plugins: "[\"apoc\"]"
- # The default name of the Neo4j database to use.
- # See https://neo4j.com/docs/operations-manual/current/manage-databases/introduction/#manage-databases-default
- defaultDatabase: "neo4j"
- # Cores
- core:
- # configMap: "my-custom-configmap"
- envFrom: []
- resources: {}
- # limits:
- # cpu: "100m"
- # memory: 512Mi
- # requests:
- # cpu: "100m"
- # memory: 512Mi
- standalone: true
- numberOfServers: 1
- persistentVolume:
- ## whether or not persistence is enabled
- ##
- enabled: true
- ## core server data Persistent Volume mount root path
- ##
- mountPath: /data
- ## core server data Persistent Volume size
- ## default value is large because in most cloud providers disk IOPS are proportional to disk size. Small disks frequently encounter IOPS throttling which
- ## is extremely detrimental to neo4j performance.
- size: 20Gi
- ## core server data 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: "-"
- ## Subdirectory of core server data Persistent Volume to mount
- ## Useful if the volume's root directory is not empty
- ##
- ## subPath: ""
- sidecarContainers: []
- ## Additional containers to be added to the Neo4j core pod.
- # - name: my-sidecar
- # image: nginx:latest
- initContainers: []
- ## init containers to run before the Neo4j core pod e.g. to install plugins
- ## They can also be used to restore from last available backup, to ensure that newly joining
- ## core members have less TX history to catch up on before joining the cluster.
- ## Note that this is specifically *not* needed for APOC, which is included by default.
- # - name: init-plugins
- # image: "appropriate/curl:latest"
- # imagePullPolicy: "IfNotPresent"
- # volumeMounts:
- # - name: plugins
- # mountPath: /plugins
- # command:
- # - "/bin/sh"
- # - "-c"
- # - |
- # curl -L https://somesite.com/path/to/plugin.jar -O
- # cp plugin.jar /plugins/
- ## This service is intended for clients running in kubernetes to connect to
- ## the cluster.
- ## Default: ClusterIP (headless)
- service:
- #type: ClusterIP
- type: NodePort
- ports:
- http: 7474
- tcp: 7687
- https: 7473
- tcps: 6362
- nodePorts:
- http: 30870
- tcp: 32713
- https: ""
- tcps: ""
- annotations: {}
- labels: {}
- loadBalancerSourceRanges: []
- ## This creates a discovery Service for each member in the core set, and ties
- ## to the use of the Neo4j discovery type "K8S" with the configured selectors.
- ## Default: ClusterIP (headless)
- discoveryService:
- type: ClusterIP
- annotations: {}
- labels: {}
- loadBalancerSourceRanges: []
- # Controls how many services get created. Usually want to over-provision so cores can
- # scale up for things like rolling upgrades.
- instances: [0, 1, 2, 3, 4, 5]
- standaloneOnly: [0]
- ## specify additional volumes to mount in the core container, this can be used
- ## to specify additional storage of material or to inject files from ConfigMaps
- ## into the running container
- additionalVolumes: []
- ## specify where the additional volumes are mounted in the core container
- additionalVolumeMounts: []
- terminationGracePeriodSeconds: 300
- restore:
- enabled: false
- image: gcr.io/neo4j-helm/restore
- imageTag: 4.4.10
- secretName: null
- database: neo4j,system
- cloudProvider: gcp
- bucket: gs://test-neo4j
- timestamp: "latest"
- forceOverwrite: true
- purgeOnComplete: true
- # Read Replicas
- readReplica:
- # configMap: "my-custom-configmap"
- envFrom: []
- resources: {}
- # limits:
- # cpu: "100m"
- # memory: 512Mi
- # requests:
- # cpu: "100m"
- # memory: 512Mi
- autoscaling:
- enabled: false
- targetAverageUtilization: 70
- minReplicas: 1
- maxReplicas: 3
- numberOfServers: 0
- persistentVolume:
- enabled: true
- mountPath: /data
- ## default value is large because in most cloud providers disk IOPS are proportional to disk size. Small disks frequently encounter IOPS throttling which
- ## is extremely detrimental to neo4j performance.
- size: 1Ti
- ## subPath: ""
- ## read replica data 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: "-"
- sidecarContainers: []
- ## Additional containers to be added to the Neo4j replica pod.
- # - name: my-sidecar
- # image: nginx:latest
- initContainers: []
- ## init containers to run before the Neo4j replica pod e.g. to install custom plugins
- ## They can also be used to restore from last available backup, to ensure that newly joining
- ## core members have less TX history to catch up on before joining the cluster.
- ## Note that this is specifically *not* needed for APOC, which is included by default.
- # - name: init-plugins
- # image: "appropriate/curl:latest"
- # imagePullPolicy: "IfNotPresent"
- # volumeMounts:
- # - name: plugins
- # mountPath: /plugins
- # command:
- # - "/bin/sh"
- # - "-c"
- # - |
- # curl -L https://somesite.com/path/to/plugin.jar -O
- # cp plugin.jar /plugins/
- ## This service is intended for clients running in kubernetes to connect to
- ## the cluster replica set.
- ## Default: ClusterIP (headless)
- service:
- type: ClusterIP
- annotations: {}
- labels: {}
- loadBalancerSourceRanges: []
- ## specify additional volumes to mount in the read replica container, this can
- ## be used to specify additional storage of material or to inject files from
- ## ConfigMaps into the running container
- additionalVolumes: []
- ## specify where the additional volumes are mounted in the read replica
- ## container
- additionalVolumeMounts: []
- terminationGracePeriodSeconds: 300
- restore:
- enabled: false
- image: gcr.io/neo4j-helm/restore
- imageTag: 4.1.0-1
- secretName: null
- database: neo4j,system
- cloudProvider: gcp
- bucket: gs://test-neo4j
- timestamp: "latest"
- forceOverwrite: true
- purgeOnComplete: true
- # Readiness probes will send a kill signal to the container if
- # it fails enough times. It's therefore very important
- # that initialDelaySeconds give the cluster time to form, because
- # if readiness probes start immediately after container start,
- # they may end up not forming quickly enough and getting killed.
- # DEPENDENCY: If you're running in standalone mode, the single machine
- # starts much faster. You could set initialDelaySeconds to something like
- # 30 and it would be OK for a stand-alone machine, but not for a cluster.
- readinessProbe:
- initialDelaySeconds: 120
- failureThreshold: 3
- timeoutSeconds: 2
- periodSeconds: 10
- tcpSocket:
- port: 7687
- livenessProbe:
- initialDelaySeconds: 300
- periodSeconds: 10
- failureThreshold: 3
- timeoutSeconds: 2
- tcpSocket:
- port: 7687
- # Startup probes are used to know when a container application has started.
- # If such a probe is configured, it disables liveness and readiness checks until it succeeds
- startupProbe:
- failureThreshold: 2000
- periodSeconds: 25
- tcpSocket:
- port: 7687
- ## (OPTIONAL) Expose Neo4j metrics
- # The structure of this object matches the Neo4j config syntax
- # Found in chapter 13 of the operations manual:
- # https://neo4j.com/docs/operations-manual/current/monitoring/metrics/expose/
- metrics:
- graphite:
- enabled: false
- server: localhost:2003
- interval: 3s
- # This will be set to the app name later.
- # metrics.prefix=Neo4j_1
- prometheus:
- ## Publish metrics for polling as Prometheus endpoint
- enabled: false
- endpoint: localhost:2004
- csv:
- enabled: true
- interval: 3s
- jmx:
- enabled: true
- dbms:
- memory:
- use_memrec: false
- heap:
- initial_size: ""
- max_size: ""
- pagecache:
- size: ""
- transaction:
- memory_allocation: ""
- # maximum size of an individual transaction
- max_size: ""
- # maximum size of all transactions combined
- global_max_size: ""
- # Create Role and RoleBinding
- rbac:
- create: true
- serviceAccount:
- create: true
- annotations: {}
- # If empty, name will be generated from the chart's fullname
- name:
- securityContext: {}
- # Sets securityContext at the pod level.
- # The following values for securityContext are recommended but may depend on your specific volume and filesystem settings
- # runAsNonRoot: true
- # runAsUser: 7474
- containerSecurityContext: {}
- # Sets securityContext at the container level.
- # We recommend to only use this if (pod) securityContext cannot be used. For example certain security options can only be set at this level.
- # allowPrivilegeEscalation: false
|