diff --git a/pages/clustering/high-availability/setup-ha-cluster-k8s.mdx b/pages/clustering/high-availability/setup-ha-cluster-k8s.mdx index b6baf993b..6290717b6 100644 --- a/pages/clustering/high-availability/setup-ha-cluster-k8s.mdx +++ b/pages/clustering/high-availability/setup-ha-cluster-k8s.mdx @@ -675,22 +675,40 @@ and their default values. | Parameter | Description | Default | | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | ------------------------------ | | `image.repository` | Memgraph Docker image repository | `memgraph/memgraph` | -| `image.tag` | Specific tag for the Memgraph Docker image. Overrides the image tag whose default is chart version. | `3.1.0` | +| `image.tag` | Specific tag for the Memgraph Docker image. Overrides the image tag whose default is chart version. | `3.8.1` | | `image.pullPolicy` | Image pull policy | `IfNotPresent` | | `env.MEMGRAPH_ENTERPRISE_LICENSE` | Memgraph enterprise license | `` | | `env.MEMGRAPH_ORGANIZATION_NAME` | Organization name | `` | | `memgraphUserId` | The user id that is hardcoded in Memgraph and Mage images | `101` | | `memgraphGroupId` | The group id that is hardcoded in Memgraph and Mage images | `103` | -| `storage.libPVCSize` | Size of the storage PVC | `1Gi` | -| `storage.libStorageClassName` | The name of the storage class used for storing data. | `""` | -| `storage.libStorageAccessMode` | Access mode used for lib storage. | `ReadWriteOnce` | -| `storage.logPVCSize` | Size of the log PVC | `1Gi` | -| `storage.logStorageClassName` | The name of the storage class used for storing logs. | `""` | -| `storage.logStorageAccessMode` | Access mode used for log storage. | `ReadWriteOnce` | -| `externalAccess.coordinator.serviceType` | IngressNginx, NodePort, CommonLoadBalancer or LoadBalancer. By default, no external service will be created. | `""` | -| `externalAccess.coordinator.annotations` | Annotations for external services attached to coordinators. | `{}` | -| `externalAccess.dataInstance.serviceType` | IngressNginx, NodePort or LoadBalancer. By default, no external service will be created. | `""` | -| `externalAccess.dataInstance.annotations` | Annotations for external services attached to data instances. | `{}` | +| `storage.data.libPVCSize` | Size of the lib storage PVC for data instances | `1Gi` | +| `storage.data.libStorageAccessMode` | Access mode used for lib storage on data instances | `ReadWriteOnce` | +| `storage.data.libStorageClassName` | The name of the storage class used for storing data on data instances | `""` | +| `storage.data.logPVCSize` | Size of the log PVC for data instances | `1Gi` | +| `storage.data.logStorageAccessMode` | Access mode used for log storage on data instances | `ReadWriteOnce` | +| `storage.data.logStorageClassName` | The name of the storage class used for storing logs on data instances | `""` | +| `storage.data.createCoreDumpsClaim` | Create a Persistent Volume Claim for core dumps on data instances | `false` | +| `storage.data.coreDumpsStorageClassName` | Storage class name for core dumps PVC on data instances | `""` | +| `storage.data.coreDumpsStorageSize` | Size of the core dumps PVC on data instances | `10Gi` | +| `storage.data.coreDumpsMountPath` | Mount path for core dumps on data instances | `/var/core/memgraph` | +| `storage.data.extraVolumes` | Additional volumes to add to data instance pods | `[]` | +| `storage.data.extraVolumeMounts` | Additional volume mounts to add to data instance containers | `[]` | +| `storage.coordinators.libPVCSize` | Size of the lib storage PVC for coordinators | `1Gi` | +| `storage.coordinators.libStorageAccessMode` | Access mode used for lib storage on coordinators | `ReadWriteOnce` | +| `storage.coordinators.libStorageClassName` | The name of the storage class used for storing data on coordinators | `""` | +| `storage.coordinators.logPVCSize` | Size of the log PVC for coordinators | `1Gi` | +| `storage.coordinators.logStorageAccessMode` | Access mode used for log storage on coordinators | `ReadWriteOnce` | +| `storage.coordinators.logStorageClassName` | The name of the storage class used for storing logs on coordinators | `""` | +| `storage.coordinators.createCoreDumpsClaim` | Create a Persistent Volume Claim for core dumps on coordinators | `false` | +| `storage.coordinators.coreDumpsStorageClassName` | Storage class name for core dumps PVC on coordinators | `""` | +| `storage.coordinators.coreDumpsStorageSize` | Size of the core dumps PVC on coordinators | `10Gi` | +| `storage.coordinators.coreDumpsMountPath` | Mount path for core dumps on coordinators | `/var/core/memgraph` | +| `storage.coordinators.extraVolumes` | Additional volumes to add to coordinator pods | `[]` | +| `storage.coordinators.extraVolumeMounts` | Additional volume mounts to add to coordinator containers | `[]` | +| `externalAccessConfig.coordinator.serviceType` | IngressNginx, NodePort, CommonLoadBalancer or LoadBalancer. By default, no external service will be created. | `""` | +| `externalAccessConfig.coordinator.annotations` | Annotations for external services attached to coordinators. | `{}` | +| `externalAccessConfig.dataInstance.serviceType` | IngressNginx, NodePort or LoadBalancer. By default, no external service will be created. | `""` | +| `externalAccessConfig.dataInstance.annotations` | Annotations for external services attached to data instances. | `{}` | | `headlessService.enabled` | Specifies whether headless services will be used inside K8s network on all instances. | `false` | | `ports.boltPort` | Bolt port used on coordinator and data instances. | `7687` | | `ports.managementPort` | Management port used on coordinator and data instances. | `10000` | @@ -703,10 +721,11 @@ and their default values. | `affinity.roleLabelKey` | Label key for node selection | `role` | | `affinity.dataNodeLabelValue` | Label value for data nodes | `data-node` | | `affinity.coordinatorNodeLabelValue` | Label value for coordinator nodes | `coordinator-node` | +| `container.data.terminationGracePeriodSeconds` | Grace period for data instance pod termination | `1800` | | `container.data.livenessProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as bolt port. | `7687` | | `container.data.livenessProbe.failureThreshold` | Failure threshold for liveness probe | `20` | | `container.data.livenessProbe.timeoutSeconds` | Timeout for liveness probe | `10` | -| `container.data.livenessProbe.periodSeconds` | Period seconds for readiness probe | `5` | +| `container.data.livenessProbe.periodSeconds` | Period seconds for liveness probe | `5` | | `container.data.readinessProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as bolt port. | `7687` | | `container.data.readinessProbe.failureThreshold` | Failure threshold for readiness probe | `20` | | `container.data.readinessProbe.timeoutSeconds` | Timeout for readiness probe | `10` | @@ -714,46 +733,57 @@ and their default values. | `container.data.startupProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as bolt port. | `7687` | | `container.data.startupProbe.failureThreshold` | Failure threshold for startup probe | `1440` | | `container.data.startupProbe.timeoutSeconds` | Timeout for probe | `10` | -| `container.data.startupProbe.periodSeconds` | Period seconds for startup probe | `10` | -| `container.coordinators.livenessProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as bolt port. | `12000` | +| `container.data.startupProbe.periodSeconds` | Period seconds for startup probe | `5` | +| `container.coordinators.terminationGracePeriodSeconds` | Grace period for coordinator pod termination | `1800` | +| `container.coordinators.livenessProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as coordinator port. | `12000` | | `container.coordinators.livenessProbe.failureThreshold` | Failure threshold for liveness probe | `20` | | `container.coordinators.livenessProbe.timeoutSeconds` | Timeout for liveness probe | `10` | -| `container.coordinators.livenessProbe.periodSeconds` | Period seconds for readiness probe | `5` | -| `container.coordinators.readinessProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as bolt port. | `12000` | +| `container.coordinators.livenessProbe.periodSeconds` | Period seconds for liveness probe | `5` | +| `container.coordinators.readinessProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as coordinator port. | `12000` | | `container.coordinators.readinessProbe.failureThreshold` | Failure threshold for readiness probe | `20` | | `container.coordinators.readinessProbe.timeoutSeconds` | Timeout for readiness probe | `10` | | `container.coordinators.readinessProbe.periodSeconds` | Period seconds for readiness probe | `5` | -| `container.coordinators.startupProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as bolt port. | `12000` | -| `container.coordinators.startupProbe.failureThreshold` | Failure threshold for startup probe | `1440` | +| `container.coordinators.startupProbe.tcpSocket.port` | Port used for TCP connection. Should be the same as coordinator port. | `12000` | +| `container.coordinators.startupProbe.failureThreshold` | Failure threshold for startup probe | `20` | | `container.coordinators.startupProbe.timeoutSeconds` | Timeout for probe | `10` | | `container.coordinators.startupProbe.periodSeconds` | Period seconds for startup probe | `10` | | `data` | Configuration for data instances | See `data` section | | `coordinators` | Configuration for coordinator instances | See `coordinators` section | | `sysctlInitContainer.enabled` | Enable the init container to set sysctl parameters | `true` | | `sysctlInitContainer.maxMapCount` | Value for `vm.max_map_count` to be set by the init container | `262144` | +| `sysctlInitContainer.image.repository` | Image repository for the sysctl init container | `library/busybox` | +| `sysctlInitContainer.image.tag` | Image tag for the sysctl init container | `latest` | +| `sysctlInitContainer.image.pullPolicy` | Image pull policy for the sysctl init container | `IfNotPresent` | | `secrets.enabled` | Enable the use of Kubernetes secrets for Memgraph credentials | `false` | | `secrets.name` | The name of the Kubernetes secret containing Memgraph credentials | `memgraph-secrets` | | `secrets.userKey` | The key in the Kubernetes secret for the Memgraph user, the value is passed to the `MEMGRAPH_USER` env. | `USER` | | `secrets.passwordKey` | The key in the Kubernetes secret for the Memgraph password, the value is passed to the `MEMGRAPH_PASSWORD`. | `PASSWORD` | -| `resources.coordinators` | CPU/Memory resource requests/limits. Left empty by default. | `{}` | -| `resources.data` | CPU/Memory resource requests/limits. Left empty by default. | `{}` | +| `resources.coordinators` | CPU/Memory resource requests/limits for coordinators. Left empty by default. | `{}` | +| `resources.data` | CPU/Memory resource requests/limits for data instances. Left empty by default. | `{}` | | `prometheus.enabled` | If set to `true`, K8s resources representing Memgraph's Prometheus exporter will be deployed. | `false` | | `prometheus.namespace` | The namespace in which `kube-prometheus-stack` and Memgraph's Prometheus exporter are installed. | `monitoring` | | `prometheus.memgraphExporter.port` | The port on which Memgraph's Prometheus exporter is available. | `9115` | | `prometheus.memgraphExporter.pullFrequencySeconds` | How often will Memgraph's Prometheus exporter pull data from Memgraph instances. | `5` | -| `prometheus.memgraphExporter.repository` | The repository where Memgraph's Prometheus exporter image is available. | `memgraph/prometheus-exporter` | -| `prometheus.memgraphExporter.tag` | The tag of Memgraph's Prometheus exporter image. | `0.2.1` | -| `prometheus.serviceMonitor.enabled` | If enabled, a `ServiceMonitor` object will be deployed. | `true` | +| `prometheus.memgraphExporter.repository` | The repository where Memgraph's Prometheus exporter image is available. | `memgraph/prometheus-exporter` | +| `prometheus.memgraphExporter.tag` | The tag of Memgraph's Prometheus exporter image. | `0.2.1` | +| `prometheus.serviceMonitor.enabled` | If enabled, a `ServiceMonitor` object will be deployed. | `true` | | `prometheus.serviceMonitor.kubePrometheusStackReleaseName` | The release name under which `kube-prometheus-stack` chart is installed. | `kube-prometheus-stack` | | `prometheus.serviceMonitor.interval` | How often will Prometheus pull data from Memgraph's Prometheus exporter. | `15s` | -| `labels.coordinators.podLabels` | Enables you to set labels on a pod level. | `{}` | -| `labels.coordinators.statefulSetLabels` | Enables you to set labels on a stateful set level. | `{}` | -| `labels.coordinators.serviceLabels` | Enables you to set labels on a service level. | `{}` | -| `updateStrategy.type` | Update strategy for StatefulSets. Possible values are `RollingUpdate` and `OnDelete` | `RollingUpdate` | +| `labels.coordinators.podLabels` | Enables you to set labels on a pod level for coordinators. | `{}` | +| `labels.coordinators.statefulSetLabels` | Enables you to set labels on a stateful set level for coordinators. | `{}` | +| `labels.coordinators.serviceLabels` | Enables you to set labels on a service level for coordinators. | `{}` | +| `labels.data.podLabels` | Enables you to set labels on a pod level for data instances. | `{}` | +| `labels.data.statefulSetLabels` | Enables you to set labels on a stateful set level for data instances. | `{}` | +| `labels.data.serviceLabels` | Enables you to set labels on a service level for data instances. | `{}` | +| `updateStrategy.type` | Update strategy for StatefulSets. Possible values are `RollingUpdate` and `OnDelete` | `RollingUpdate` | | `extraEnv.data` | Env variables that users can define and are applied to data instances | `[]` | | `extraEnv.coordinators` | Env variables that users can define and are applied to coordinators | `[]` | -| `initContainers.data` | Init containers that users can define that will be applied to data instances. | `[]` | -| `initContainers.coordinators` | Init containers that users can define that will be applied to coordinators. | `[]` | +| `initContainers.data` | Init containers that users can define that will be applied to data instances. | `[]` | +| `initContainers.coordinators` | Init containers that users can define that will be applied to coordinators. | `[]` | +| `userContainers.data` | Additional sidecar containers for data instance pods | `[]` | +| `userContainers.coordinators` | Additional sidecar containers for coordinator pods | `[]` | +| `tolerations.data` | Tolerations for data instance pods | `[]` | +| `tolerations.coordinators` | Tolerations for coordinator pods | `[]` | For the `data` and `coordinators` sections, each item in the list has the