values.yaml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. # Default values for Neo4j.
  2. # This is a YAML-formatted file.
  3. # Declare name/value pairs to be passed into your templates.
  4. # name: value
  5. name: "neo4j"
  6. # Specs for the Neo4j docker image
  7. image: "neo4j"
  8. imageTag: "4.4.10-enterprise"
  9. imagePullPolicy: "IfNotPresent"
  10. # imagePullSecret: registry-secret
  11. acceptLicenseAgreement: "yes"
  12. podDisruptionBudget: {}
  13. # minAvailable: 2
  14. # maxUnavailable: 1
  15. ## Node labels for pod assignment
  16. ## ref: https://kubernetes.io/docs/user-guide/node-selection/
  17. nodeSelector: {}
  18. ## Tolerations for pod assignment
  19. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  20. tolerations: []
  21. ## Affinity for pod assignment
  22. ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  23. affinity: {}
  24. ## Labels to be added to pods
  25. podLabels: {}
  26. ## Annotations to be added to pods
  27. podAnnotations: {}
  28. # Use password authentication
  29. authEnabled: true
  30. ## Specify password for neo4j user
  31. ## Defaults to a random 10-character alphanumeric string if not set and authEnabled is true
  32. neo4jPassword: insur132
  33. ## Specify secret name containing the password for neo4j user
  34. # existingPasswordSecret
  35. ## Specify the key in existingPasswordSecret, in which the password is contained
  36. # existingPasswordSecretKey
  37. # Specify cluster domain (used eg. as suffix in the eventual internal hostnames)
  38. clusterDomain: "cluster.local"
  39. # Specs for the images used for running tests against the Helm package
  40. # https://github.com/mneedham/k8s-kubectl this is a general kubectl docker image
  41. testImage: "gcr.io/neo4j-helm/tester"
  42. # Whether or not to use APOC: https://neo4j.com/labs/apoc/
  43. # If you do not want APOC, make the array empty []
  44. plugins: "[\"apoc\"]"
  45. # The default name of the Neo4j database to use.
  46. # See https://neo4j.com/docs/operations-manual/current/manage-databases/introduction/#manage-databases-default
  47. defaultDatabase: "neo4j"
  48. # Cores
  49. core:
  50. # configMap: "my-custom-configmap"
  51. envFrom: []
  52. resources: {}
  53. # limits:
  54. # cpu: "100m"
  55. # memory: 512Mi
  56. # requests:
  57. # cpu: "100m"
  58. # memory: 512Mi
  59. standalone: true
  60. numberOfServers: 1
  61. persistentVolume:
  62. ## whether or not persistence is enabled
  63. ##
  64. enabled: true
  65. ## core server data Persistent Volume mount root path
  66. ##
  67. mountPath: /data
  68. ## core server data Persistent Volume size
  69. ## default value is large because in most cloud providers disk IOPS are proportional to disk size. Small disks frequently encounter IOPS throttling which
  70. ## is extremely detrimental to neo4j performance.
  71. size: 20Gi
  72. ## core server data Persistent Volume Storage Class
  73. ## If defined, storageClassName: <storageClass>
  74. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  75. ## If undefined (the default) or set to null, no storageClassName spec is
  76. ## set, choosing the default provisioner. (gp2 on AWS, standard on
  77. ## GKE, AWS & OpenStack)
  78. ## storageClass: "-"
  79. ## Subdirectory of core server data Persistent Volume to mount
  80. ## Useful if the volume's root directory is not empty
  81. ##
  82. ## subPath: ""
  83. sidecarContainers: []
  84. ## Additional containers to be added to the Neo4j core pod.
  85. # - name: my-sidecar
  86. # image: nginx:latest
  87. initContainers: []
  88. ## init containers to run before the Neo4j core pod e.g. to install plugins
  89. ## They can also be used to restore from last available backup, to ensure that newly joining
  90. ## core members have less TX history to catch up on before joining the cluster.
  91. ## Note that this is specifically *not* needed for APOC, which is included by default.
  92. # - name: init-plugins
  93. # image: "appropriate/curl:latest"
  94. # imagePullPolicy: "IfNotPresent"
  95. # volumeMounts:
  96. # - name: plugins
  97. # mountPath: /plugins
  98. # command:
  99. # - "/bin/sh"
  100. # - "-c"
  101. # - |
  102. # curl -L https://somesite.com/path/to/plugin.jar -O
  103. # cp plugin.jar /plugins/
  104. ## This service is intended for clients running in kubernetes to connect to
  105. ## the cluster.
  106. ## Default: ClusterIP (headless)
  107. service:
  108. #type: ClusterIP
  109. type: NodePort
  110. ports:
  111. http: 7474
  112. tcp: 7687
  113. https: 7473
  114. tcps: 6362
  115. nodePorts:
  116. http: 30870
  117. tcp: 32713
  118. https: ""
  119. tcps: ""
  120. annotations: {}
  121. labels: {}
  122. loadBalancerSourceRanges: []
  123. ## This creates a discovery Service for each member in the core set, and ties
  124. ## to the use of the Neo4j discovery type "K8S" with the configured selectors.
  125. ## Default: ClusterIP (headless)
  126. discoveryService:
  127. type: ClusterIP
  128. annotations: {}
  129. labels: {}
  130. loadBalancerSourceRanges: []
  131. # Controls how many services get created. Usually want to over-provision so cores can
  132. # scale up for things like rolling upgrades.
  133. instances: [0, 1, 2, 3, 4, 5]
  134. standaloneOnly: [0]
  135. ## specify additional volumes to mount in the core container, this can be used
  136. ## to specify additional storage of material or to inject files from ConfigMaps
  137. ## into the running container
  138. additionalVolumes: []
  139. ## specify where the additional volumes are mounted in the core container
  140. additionalVolumeMounts: []
  141. terminationGracePeriodSeconds: 300
  142. restore:
  143. enabled: false
  144. image: gcr.io/neo4j-helm/restore
  145. imageTag: 4.4.10
  146. secretName: null
  147. database: neo4j,system
  148. cloudProvider: gcp
  149. bucket: gs://test-neo4j
  150. timestamp: "latest"
  151. forceOverwrite: true
  152. purgeOnComplete: true
  153. # Read Replicas
  154. readReplica:
  155. # configMap: "my-custom-configmap"
  156. envFrom: []
  157. resources: {}
  158. # limits:
  159. # cpu: "100m"
  160. # memory: 512Mi
  161. # requests:
  162. # cpu: "100m"
  163. # memory: 512Mi
  164. autoscaling:
  165. enabled: false
  166. targetAverageUtilization: 70
  167. minReplicas: 1
  168. maxReplicas: 3
  169. numberOfServers: 0
  170. persistentVolume:
  171. enabled: true
  172. mountPath: /data
  173. ## default value is large because in most cloud providers disk IOPS are proportional to disk size. Small disks frequently encounter IOPS throttling which
  174. ## is extremely detrimental to neo4j performance.
  175. size: 1Ti
  176. ## subPath: ""
  177. ## read replica data Persistent Volume Storage Class
  178. ## If defined, storageClassName: <storageClass>
  179. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  180. ## If undefined (the default) or set to null, no storageClassName spec is
  181. ## set, choosing the default provisioner. (gp2 on AWS, standard on
  182. ## GKE, AWS & OpenStack)
  183. ## storageClass: "-"
  184. sidecarContainers: []
  185. ## Additional containers to be added to the Neo4j replica pod.
  186. # - name: my-sidecar
  187. # image: nginx:latest
  188. initContainers: []
  189. ## init containers to run before the Neo4j replica pod e.g. to install custom plugins
  190. ## They can also be used to restore from last available backup, to ensure that newly joining
  191. ## core members have less TX history to catch up on before joining the cluster.
  192. ## Note that this is specifically *not* needed for APOC, which is included by default.
  193. # - name: init-plugins
  194. # image: "appropriate/curl:latest"
  195. # imagePullPolicy: "IfNotPresent"
  196. # volumeMounts:
  197. # - name: plugins
  198. # mountPath: /plugins
  199. # command:
  200. # - "/bin/sh"
  201. # - "-c"
  202. # - |
  203. # curl -L https://somesite.com/path/to/plugin.jar -O
  204. # cp plugin.jar /plugins/
  205. ## This service is intended for clients running in kubernetes to connect to
  206. ## the cluster replica set.
  207. ## Default: ClusterIP (headless)
  208. service:
  209. type: ClusterIP
  210. annotations: {}
  211. labels: {}
  212. loadBalancerSourceRanges: []
  213. ## specify additional volumes to mount in the read replica container, this can
  214. ## be used to specify additional storage of material or to inject files from
  215. ## ConfigMaps into the running container
  216. additionalVolumes: []
  217. ## specify where the additional volumes are mounted in the read replica
  218. ## container
  219. additionalVolumeMounts: []
  220. terminationGracePeriodSeconds: 300
  221. restore:
  222. enabled: false
  223. image: gcr.io/neo4j-helm/restore
  224. imageTag: 4.1.0-1
  225. secretName: null
  226. database: neo4j,system
  227. cloudProvider: gcp
  228. bucket: gs://test-neo4j
  229. timestamp: "latest"
  230. forceOverwrite: true
  231. purgeOnComplete: true
  232. # Readiness probes will send a kill signal to the container if
  233. # it fails enough times. It's therefore very important
  234. # that initialDelaySeconds give the cluster time to form, because
  235. # if readiness probes start immediately after container start,
  236. # they may end up not forming quickly enough and getting killed.
  237. # DEPENDENCY: If you're running in standalone mode, the single machine
  238. # starts much faster. You could set initialDelaySeconds to something like
  239. # 30 and it would be OK for a stand-alone machine, but not for a cluster.
  240. readinessProbe:
  241. initialDelaySeconds: 120
  242. failureThreshold: 3
  243. timeoutSeconds: 2
  244. periodSeconds: 10
  245. tcpSocket:
  246. port: 7687
  247. livenessProbe:
  248. initialDelaySeconds: 300
  249. periodSeconds: 10
  250. failureThreshold: 3
  251. timeoutSeconds: 2
  252. tcpSocket:
  253. port: 7687
  254. # Startup probes are used to know when a container application has started.
  255. # If such a probe is configured, it disables liveness and readiness checks until it succeeds
  256. startupProbe:
  257. failureThreshold: 2000
  258. periodSeconds: 25
  259. tcpSocket:
  260. port: 7687
  261. ## (OPTIONAL) Expose Neo4j metrics
  262. # The structure of this object matches the Neo4j config syntax
  263. # Found in chapter 13 of the operations manual:
  264. # https://neo4j.com/docs/operations-manual/current/monitoring/metrics/expose/
  265. metrics:
  266. graphite:
  267. enabled: false
  268. server: localhost:2003
  269. interval: 3s
  270. # This will be set to the app name later.
  271. # metrics.prefix=Neo4j_1
  272. prometheus:
  273. ## Publish metrics for polling as Prometheus endpoint
  274. enabled: false
  275. endpoint: localhost:2004
  276. csv:
  277. enabled: true
  278. interval: 3s
  279. jmx:
  280. enabled: true
  281. dbms:
  282. memory:
  283. use_memrec: false
  284. heap:
  285. initial_size: ""
  286. max_size: ""
  287. pagecache:
  288. size: ""
  289. transaction:
  290. memory_allocation: ""
  291. # maximum size of an individual transaction
  292. max_size: ""
  293. # maximum size of all transactions combined
  294. global_max_size: ""
  295. # Create Role and RoleBinding
  296. rbac:
  297. create: true
  298. serviceAccount:
  299. create: true
  300. annotations: {}
  301. # If empty, name will be generated from the chart's fullname
  302. name:
  303. securityContext: {}
  304. # Sets securityContext at the pod level.
  305. # The following values for securityContext are recommended but may depend on your specific volume and filesystem settings
  306. # runAsNonRoot: true
  307. # runAsUser: 7474
  308. containerSecurityContext: {}
  309. # Sets securityContext at the container level.
  310. # We recommend to only use this if (pod) securityContext cannot be used. For example certain security options can only be set at this level.
  311. # allowPrivilegeEscalation: false