From ddff9e495ec47227033cd9975e67264918c122c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hasan=20=C3=87elik?= Date: Tue, 2 Jun 2020 11:06:44 +0300 Subject: [PATCH] Chart Deprecation (#22617) Signed-off-by: hasancelik --- stable/hazelcast-jet/Chart.yaml | 12 +- stable/hazelcast-jet/README.adoc | 510 ------------------------------- stable/hazelcast-jet/README.md | 264 ++++++++++++++++ 3 files changed, 269 insertions(+), 517 deletions(-) delete mode 100644 stable/hazelcast-jet/README.adoc create mode 100644 stable/hazelcast-jet/README.md diff --git a/stable/hazelcast-jet/Chart.yaml b/stable/hazelcast-jet/Chart.yaml index dd73e98334..6afd743a2c 100644 --- a/stable/hazelcast-jet/Chart.yaml +++ b/stable/hazelcast-jet/Chart.yaml @@ -2,9 +2,12 @@ apiVersion: v1 appVersion: "4.1" tillerVersion: ">=2.7.2" kubeVersion: ">=1.9.0-0" -description: Hazelcast Jet is an application embeddable, distributed computing engine built on top of Hazelcast In-Memory Data Grid (IMDG). With Hazelcast IMDG providing storage functionality, Hazelcast Jet performs parallel execution to enable data-intensive applications to operate in near real-time. +description: DEPRECATED Hazelcast Jet is an application embeddable, distributed computing engine built on top of Hazelcast In-Memory Data Grid (IMDG). With Hazelcast IMDG providing storage functionality, Hazelcast Jet performs parallel execution to enable data-intensive applications to operate in near real-time. name: hazelcast-jet -version: 1.6.0 +# The hazelcast-jet chart is deprecated and no longer maintained. For details deprecation, +# including how to un-deprecate a chart see the PROCESSES.md file. +deprecated: true +version: 1.6.1 keywords: - hazelcast - jet @@ -13,9 +16,4 @@ home: https://jet-start.sh icon: http://hazelcast.com/images/logos/Hazelcast-Jet-Logo-Orange_Dark_Icon_200px.png sources: - https://github.com/hazelcast/hazelcast-jet -maintainers: - - name: emin - email: emin@hazelcast.com - - name: ali - email: ali@hazelcast.com engine: gotpl diff --git a/stable/hazelcast-jet/README.adoc b/stable/hazelcast-jet/README.adoc deleted file mode 100644 index fe78ef4e56..0000000000 --- a/stable/hazelcast-jet/README.adoc +++ /dev/null @@ -1,510 +0,0 @@ -:repo: helm/charts - -== Hazelcast Jet - -http://jet.hazelcast.org[Hazelcast Jet] is a distributed computing platform -built for high-performance stream processing and fast batch processing. It -embeds Hazelcast In-Memory Data Grid (IMDG) to provide a lightweight, -simple-to-deploy package that includes scalable in-memory storage. - -Visit http://jet.hazelcast.org[jet.hazelcast.org] to learn more about the -architecture and use cases. - -=== Quick Start - - -ifeval::["{repo}"=="hazelcast/charts"] -[source,bash] ----- -$ helm repo add hazelcast https://hazelcast.github.io/charts/ -$ helm repo update -$ helm install my-release hazelcast/hazelcast-jet # Helm 3 -$ helm install --name my-release hazelcast/hazelcast-jet # Helm 2 ----- -endif::[] - - -ifeval::["{repo}"=="helm/charts"] -[source,bash] ----- -$ helm install my-release stable/hazelcast-jet # Helm 3 -$ helm install --name my-release stable/hazelcast-jet # Helm 2 ----- -endif::[] - -=== Introduction - -This chart bootstraps a -https://github.com/hazelcast/hazelcast-jet-docker[Hazelcast Jet] and -https://github.com/hazelcast/hazelcast-jet-management-center-docker[Hazelcast -Jet Management Center] deployments on a http://kubernetes.io[Kubernetes] cluster -using the https://helm.sh[Helm] package manager. - -=== Prerequisites - -* Kubernetes 1.9+ - -=== Installing the Chart - -To install the chart with the release name `+my-release+`: - -ifeval::["{repo}"=="hazelcast/charts"] -[source,bash] ----- -$ helm install my-release hazelcast/hazelcast-jet # Helm 3 -$ helm install --name my-release hazelcast/hazelcast-jet # Helm 2 ----- -endif::[] - -ifeval::["{repo}"=="helm/charts"] -[source,bash] ----- -$ helm install my-release stable/hazelcast-jet # Helm 3 -$ helm install --name my-release stable/hazelcast-jet # Helm 2 ----- -endif::[] - -The command deploys Hazelcast Jet on the Kubernetes cluster in the default -configuration. The link:#configuration[configuration] section lists the -parameters that can be configured during installation. - -____ -*Tip*: List all releases using `+helm list+` -____ - -=== Uninstalling the Chart - -To uninstall/delete the `+my-release+` deployment: - -[source,bash] ----- -$ helm delete my-release ----- - -The command removes all the Kubernetes components associated with the chart and -deletes the release. - -=== Configuration - -The following table lists the configurable parameters of the Hazelcast chart and -their default values. - -[width="100%",cols="22%,53%,25%",options="header",] -|=== -|Parameter |Description |Default -|`+image.repository+` |Hazelcast Jet Image name |`+hazelcast/hazelcast-jet+` - -|`+image.tag+` |Hazelcast Jet Image tag |`+{VERSION}+` - -|`+image.pullPolicy+` |Image pull policy |`+IfNotPresent+` - -|`+image.pullSecrets+` |Specify docker-registry secret names as an array -|`+nil+` - -|`+cluster.memberCount+` |Number of Hazelcast Jet members |2 - -|`+jet.javaOpts+` |Additional JAVA_OPTS properties for Hazelcast Jet member -|`+nil+` - -|`jet.loggingLevel` |Level of Hazelcast Jet logs (SEVERE, WARNING, -INFO, CONFIG, FINE, FINER, and FINEST); note that changing this value -requires setting `securityContext.runAsUser` to `0` |`nil` - -|`+jet.yaml.hazelcast-jet+` and `+jet.yaml.hazelcast+` |Hazelcast Jet and IMDG -YAML configurations (`+hazelcast-jet.yaml+` and `+hazelcast.yaml+` embedded into -`+values.yaml+`) |`+{DEFAULT_JET_YAML}+` and `+{DEFAULT_HAZELCAST_YAML}+` - -|`+jet.configurationFiles+` |Hazelcast configuration files |`+nil+` - -|`+hostPort+` |Port under which Hazelcast Jet PODs are exposed on the host -machines |`+nil+` - -|`+affinity+` |Hazelcast Node affinity |`+nil+` - -|`+tolerations+` |Hazelcast Node tolerations |`+nil+` - -|`+nodeSelector+` |Hazelcast Node labels for pod assignment |`+nil+` - -|`+gracefulShutdown.enabled+` |Turn on and off Graceful Shutdown |`+true+` - -|`+gracefulShutdown.maxWaitSeconds+` |Maximum time to wait for the Hazelcast Jet -POD to shut down |`+600+` - -|`+livenessProbe.enabled+` |Turn on and off liveness probe |`+true+` - -|`+livenessProbe.initialDelaySeconds+` |Delay before liveness probe is initiated -|`+30+` - -|`+livenessProbe.periodSeconds+` |How often to perform the probe |`+10+` - -|`+livenessProbe.timeoutSeconds+` |When the probe times out |`+5+` - -|`+livenessProbe.successThreshold+` |Minimum consecutive successes for the probe -to be considered successful after having failed |`+1+` - -|`+livenessProbe.failureThreshold+` |Minimum consecutive failures for the probe -to be considered failed after having succeeded. |`+3+` - -|`livenessProbe.path` |URL path that will be called to check liveness. | -`/hazelcast/health/node-state` - -|`livenessProbe.port` |Port that will be used in liveness probe calls. |`nil` - -|`livenessProbe.scheme` |HTTPS or HTTP scheme. |`HTTP` - -|`+readinessProbe.enabled+` |Turn on and off readiness probe |`+true+` - -|`+readinessProbe.initialDelaySeconds+` |Delay before readiness probe is -initiated |`+30+` - -|`+readinessProbe.periodSeconds+` |How often to perform the probe |`+10+` - -|`+readinessProbe.timeoutSeconds+` |When the probe times out |`+1+` - -|`+readinessProbe.successThreshold+` |Minimum consecutive successes for the -probe to be considered successful after having failed |`+1+` - -|`+readinessProbe.failureThreshold+` |Minimum consecutive failures for the probe -to be considered failed after having succeeded. |`+3+` - -|`readinessProbe.path` |URL path that will be called to check readiness. | -`/hazelcast/health/ready` - -|`readinessProbe.port` |Port that will be used in readiness probe calls. |`nil` - -|`readinessProbe.scheme` |HTTPS or HTTP scheme. |`HTTP` - -|`+resources+` |CPU/Memory resource requests/limits |`+nil+` - -|`+service.type+` |Kubernetes service type (`ClusterIP', `LoadBalancer', or -`NodePort') |`+ClusterIP+` - -|`+service.port+` |Kubernetes service port |`+5701+` - -|`+service.clusterIP+` |IP of the service, "None" makes the service -headless |`+None+` - -|`+rbac.create+` |Enable installing RBAC Role authorization |`+true+` - -|`+serviceAccount.create+` |Enable installing Service Account |`+true+` - -|`+serviceAccount.name+` |Name of Service Account, if not set, the name is -generated using the fullname template |`+nil+` - -|`+securityContext.enabled+` |Enables Security Context for Hazelcast Jet and -Hazelcast Jet Management Center |`+true+` - -|`+securityContext.runAsUser+` |User ID used to run the Hazelcast Jet and -Hazelcast Jet Management Center containers |`+65534+` - -|`securityContext.runAsGroup` |Primary Group ID used to run all processes in the - Hazelcast Jet and Hazelcast Jet Management Center containers | `+65534+` - -|`+securityContext.fsGroup+` |Group ID associated with the Hazelcast Jet and -Hazelcast Jet Management Center container |`+65534+` - -|`+securityContext.readOnlyRootFilesystem+` |Enables readOnlyRootFilesystem in -the Hazelcast Jet and Hazelcast Jet Management Center security containers |`+true+` - -|`+metrics.enabled+` |Turn on and off JMX Prometheus metrics available at -`+/metrics+` |`+false+` - -|`+metrics.service.type+` |Type of the metrics service |`+ClusterIP+` - -|`+metrics.service.port+` |Port of the `+/metrics+` endpoint and the metrics -service |`+8080+` - -|`+metrics.service.annotations+` |Annotations for the Prometheus discovery | - -|`+customVolume+` |Configuration for a volume which will -be mounted as `/data/custom' (e.g. to mount a volume with custom JARs) |`+nil+` - -|`+managementcenter.enabled+` |Turn on and off Hazelcast Jet Management Center -application |`+true+` - -|`+managementcenter.image.repository+` |Hazelcast Jet Management Center Image -name |`+hazelcast/hazelcast-jet-management-center+` - -|`+managementcenter.image.tag+` |Hazelcast Jet Management Center Image tag -(NOTE: must be the same or one minor release greater than Hazelcast image -version) |`+{VERSION}+` - -|`+managementcenter.image.pullPolicy+` |Image pull policy |`+IfNotPresent+` - -|`+managementcenter.image.pullSecrets+` |Specify docker-registry secret names as -an array |`+nil+` - -|`+managementcenter.javaOpts+` |Additional JAVA_OPTS properties for Hazelcast -Jet Management Center |`+nil+` - -|`+managementcenter.licenseKey+` |License Key for Hazelcast Jet Management -Center |`+nil+` - -|`+managementcenter.licenseKeySecretName+` |Kubernetes Secret Name, where Jet -Management Center License Key is stored (can be used instead of licenseKey) -|`+nil+` - -|`+managementcenter.affinity+` |Hazelcast Jet Management Center node affinity -|`+nil+` - -|`+managementcenter.tolerations+` |Hazelcast Jet Management Center node -tolerations |`+nil+` - -|`+managementcenter.nodeSelector+` |Hazelcast Jet Management Center node labels -for pod assignment |`+nil+` - -|`+managementcenter.resources+` |CPU/Memory resource requests/limits |`+nil+` - -|`+managementcenter.service.type+` |Kubernetes service type (`ClusterIP', -`LoadBalancer', or `NodePort') |`+ClusterIP+` - -|`+managementcenter.service.port+` |Kubernetes service port |`+8081+` - -|`+managementcenter.livenessProbe.enabled+` |Turn on and off liveness probe -|`+true+` - -|`+managementcenter.livenessProbe.initialDelaySeconds+` |Delay before liveness -probe is initiated |`+30+` - -|`+managementcenter.livenessProbe.periodSeconds+` |How often to perform the -probe |`+10+` - -|`+managementcenter.livenessProbe.timeoutSeconds+` |When the probe times out -|`+5+` - -|`+managementcenter.livenessProbe.successThreshold+` |Minimum consecutive -successes for the probe to be considered successful after having failed |`+1+` - -|`+managementcenter.livenessProbe.failureThreshold+` |Minimum consecutive -failures for the probe to be considered failed after having succeeded. |`+3+` - -|`+managementcenter.readinessProbe.enabled+` |Turn on and off readiness probe -|`+true+` - -|`+managementcenter.readinessProbe.initialDelaySeconds+` |Delay before readiness -probe is initiated |`+30+` - -|`+managementcenter.readinessProbe.periodSeconds+` |How often to perform the -probe |`+10+` - -|`+managementcenter.readinessProbe.timeoutSeconds+` |When the probe times out -|`+1+` - -|`+managementcenter.readinessProbe.successThreshold+` |Minimum consecutive -successes for the probe to be considered successful after having failed |`+1+` - -|`+managementcenter.readinessProbe.failureThreshold+` |Minimum consecutive -failures for the probe to be considered failed after having succeeded. |`+3+` -|=== - -Specify each parameter using the `+--set key=value[,key=value]+` argument to -`+helm install+`. For example, - - -ifeval::["{repo}"=="hazelcast/charts"] -[source,bash] ----- -# Helm 3 -$ helm install my-release \ - --set cluster.memberCount=3,serviceAccount.create=false \ - hazelcast/hazelcast-jet - -# Helm 2 -$ helm install --name my-release \ - --set cluster.memberCount=3,serviceAccount.create=false \ - hazelcast/hazelcast-jet ----- -endif::[] - -ifeval::["{repo}"=="helm/charts"] -[source,bash] ----- - -# Helm 3 -$ helm install my-release \ - --set cluster.memberCount=3,serviceAccount.create=false \ - stable/hazelcast-jet - -# Helm 2 -$ helm install --name my-release \ - --set cluster.memberCount=3,serviceAccount.create=false \ - stable/hazelcast-jet ----- -endif::[] - - -The above command sets number of Hazelcast Jet members to 3. - -Alternatively, a YAML file that specifies the values for the parameters can be -provided while installing the chart. For example, - -ifeval::["{repo}"=="hazelcast/charts"] -[source,bash] ----- -$ helm install my-release -f values.yaml hazelcast/hazelcast-jet # Helm 3 -$ helm install --name my-release -f values.yaml hazelcast/hazelcast-jet # Helm 2 ----- -endif::[] - -ifeval::["{repo}"=="helm/charts"] -[source,bash] ----- -$ helm install my-release -f values.yaml stable/hazelcast-jet # Helm 3 -$ helm install --name my-release -f values.yaml stable/hazelcast-jet # Helm 2 ----- -endif::[] - - -____ -*Tip*: You can use the default values.yaml -____ - -=== Custom Hazelcast IMDG and Jet configuration - -Custom Hazelcast IMDG and Hazelcast Jet configuration can be specified inside -`+values.yaml+`, as the `+jet.yaml.hazelcast+` and `+jet.yaml.hazelcast-jet+` -properties. - -[source,yaml] ----- -jet: - yaml: - hazelcast: - network: - join: - multicast: - enabled: false - kubernetes: - enabled: true - service-name: ${serviceName} - namespace: ${namespace} - resolve-not-ready-addresses: true - management-center: - enabled: ${hazelcast.mancenter.enabled} - url: ${hazelcast.mancenter.url} - hazelcast-jet: - instance: - flow-control-period: 100 - backup-count: 1 - scale-up-delay-millis: 10000 - lossless-restart-enabled: false - edge-defaults: - queue-size: 1024 - packet-size-limit: 16384 - receive-window-multiplier: 3 - metrics: - enabled: true - jmx-enabled: true - retention-seconds: 120 - collection-interval-seconds: 5 - metrics-for-data-structures: false ----- - -Alternatively, above parameters can be modified directly via `+helm+` commands. -For example, - -ifeval::["{repo}"=="hazelcast/charts"] -[source,bash] ----- -# Helm 3 -$ helm install my-jet-release \ - --set jet.yaml.hazelcast-jet.instance.backup-count=2,jet.yaml.hazelcast.network.kubernetes.service-name=jet-service \ - hazelcast/hazelcast-jet - -# Helm 2 -$ helm install --name my-jet-release \ - --set jet.yaml.hazelcast-jet.instance.backup-count=2,jet.yaml.hazelcast.network.kubernetes.service-name=jet-service \ - hazelcast/hazelcast-jet ----- -endif::[] - -ifeval::["{repo}"=="helm/charts"] -[source,bash] ----- -# Helm 3 -$ helm install my-jet-release \ - --set jet.yaml.hazelcast-jet.instance.backup-count=2,jet.yaml.hazelcast.network.kubernetes.service-name=jet-service \ - stable/hazelcast-jet - -# Helm 2 -$ helm install --name my-jet-release \ - --set jet.yaml.hazelcast-jet.instance.backup-count=2,jet.yaml.hazelcast.network.kubernetes.service-name=jet-service \ - stable/hazelcast-jet ----- -endif::[] - -=== Adding custom JAR files to the classpath - -You can mount any volume which contains your JAR files -to the pods created by helm chart using `customVolume` configuration. - -When the `customVolume` set, it will mount provided volume to the pod -on `/data/custom` path. -This path also appended to the classpath of running Java process. - -For example, if you have existing host path Persistent Volume and -Persistent Volume Claims like below; - -[source,yaml] ----- -apiVersion: v1 -kind: PersistentVolume -metadata: - name: jet-hostpathpv-volume - labels: - type: local -spec: - storageClassName: manual - capacity: - storage: 1Gi - accessModes: - - ReadWriteOnce - hostPath: - path: "/path/to/my/jars" ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: jet-pv-claim -spec: - storageClassName: manual - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 1Gi ----- - -You can configure your Helm chart to use it like below in your `values.yaml` -file. -[source,yaml] ----- -customVolume: - persistentVolumeClaim: - claimName: jet-pv-claim ----- - -See https://kubernetes.io/docs/concepts/storage/[Volumes] section on the -Kubernetes documentation for other available options. - -== Notable changes - -=== 1.4.0 - -Hazelcast REST Endpoints are no longer enabled by default and the -parameter `jet.rest` is no longer available. If you want to enable -REST, please add the related `endpoint-groups` to the Hazelcast -Configuration (`jet.yaml.hazelcast`). For example: - -[source,yaml] ----- -rest-api: - enabled: true - endpoint-groups: - HEALTH_CHECK: - enabled: true - CLUSTER_READ: - enabled: true - CLUSTER_WRITE: - enabled: true ----- \ No newline at end of file diff --git a/stable/hazelcast-jet/README.md b/stable/hazelcast-jet/README.md new file mode 100644 index 0000000000..d831f8059e --- /dev/null +++ b/stable/hazelcast-jet/README.md @@ -0,0 +1,264 @@ +# DEPRECATED - Hazelcast Jet + +[Hazelcast Jet](http://jet.hazelcast.org) is a distributed computing platform built for high-performance stream processing and fast batch processing. It embeds Hazelcast In-Memory Data Grid (IMDG) to provide a lightweight, simple-to-deploy package that includes scalable in-memory storage. + +Visit [jet-start.sh](https://jet-start.sh) to learn more about the architecture and use cases. + +## This Helm chart is deprecated + +**Given the [stable deprecation timeline](https://github.com/helm/charts#deprecation-timeline), the Hazelcast Jet Helm chart is now located at [hazelcast/charts](https://github.com/hazelcast/charts/).** + +**The Hazelcast Jet chart repo is also avaliable at [Helm Hub](https://hub.helm.sh/charts/hazelcast/hazelcast-jet).** + +To install new chart, you just need to add the related repo and use `hazelcast/hazelcast-jet ` instead of `stable/hazelcast-jet` as a chart name. + +```bash +$ helm repo add hazelcast https://hazelcast.github.io/charts +$ helm install my-release hazelcast/hazelcast-jet # Helm 3 +$ helm install --name my-release hazelcast/hazelcast-jet # Helm 2 +``` + + +## Quick Start + + $ helm install my-release stable/hazelcast-jet # Helm 3 + $ helm install --name my-release stable/hazelcast-jet # Helm 2 + +## Introduction + +This chart bootstraps a [Hazelcast Jet](https://github.com/hazelcast/hazelcast-jet-docker) and [Hazelcast Jet Management Center](https://github.com/hazelcast/hazelcast-jet-management-center-docker) deployments on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. + +## Prerequisites + +- Kubernetes 1.9+ + +## Installing the Chart + +To install the chart with the release name `my-release`: + + $ helm install my-release stable/hazelcast-jet # Helm 3 + $ helm install --name my-release stable/hazelcast-jet # Helm 2 + +The command deploys Hazelcast Jet on the Kubernetes cluster in the default configuration. The [configuration](#configuration) section lists the parameters that can be configured during installation. + +> **Tip**: List all releases using `helm list` + +## Uninstalling the Chart + +To uninstall/delete the `my-release` deployment: + + $ helm delete my-release + +The command removes all the Kubernetes components associated with the chart and deletes the release. + +## Configuration + +The following table lists the configurable parameters of the Hazelcast chart and their default values. + +| Parameter | Description | Default | +| --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | +| image.repository | Hazelcast Jet Image name | hazelcast/hazelcast-jet | +| image.tag | Hazelcast Jet Image tag | {VERSION} | +| image.pullPolicy | Image pull policy | IfNotPresent | +| image.pullSecrets | Specify docker-registry secret names as an array | nil | +| cluster.memberCount | Number of Hazelcast Jet members | 2 | +| jet.javaOpts | Additional JAVA_OPTS properties for Hazelcast Jet member | nil | +| jet.loggingLevel | Level of Hazelcast Jet logs (SEVERE, WARNING, INFO, CONFIG, FINE, FINER, and FINEST); note that changing this value requires setting securityContext.runAsUser to 0 | nil | +| jet.yaml.hazelcast-jet and jet.yaml.hazelcast | Hazelcast Jet and IMDG YAML configurations (hazelcast-jet.yaml and hazelcast.yaml embedded into values.yaml) | {DEFAULT_JET_YAML} and {DEFAULT_HAZELCAST_YAML} | +| jet.configurationFiles | Hazelcast configuration files | nil | +| hostPort | Port under which Hazelcast Jet PODs are exposed on the host machines | nil | +| affinity | Hazelcast Node affinity | nil | +| tolerations | Hazelcast Node tolerations | nil | +| nodeSelector | Hazelcast Node labels for pod assignment | nil | +| gracefulShutdown.enabled | Turn on and off Graceful Shutdown | true | +| gracefulShutdown.maxWaitSeconds | Maximum time to wait for the Hazelcast Jet POD to shut down | 600 | +| livenessProbe.enabled | Turn on and off liveness probe | true | +| livenessProbe.initialDelaySeconds | Delay before liveness probe is initiated | 30 | +| livenessProbe.periodSeconds | How often to perform the probe | 10 | +| livenessProbe.timeoutSeconds | When the probe times out | 5 | +| livenessProbe.successThreshold | Minimum consecutive successes for the probe to be considered successful after having failed | 1 | +| livenessProbe.failureThreshold | Minimum consecutive failures for the probe to be considered failed after having succeeded. | 3 | +| livenessProbe.path | URL path that will be called to check liveness. | /hazelcast/health/node-state | +| livenessProbe.port | Port that will be used in liveness probe calls. | nil | +| livenessProbe.scheme | HTTPS or HTTP scheme. | HTTP | +| readinessProbe.enabled | Turn on and off readiness probe | true | +| readinessProbe.initialDelaySeconds | Delay before readiness probe is initiated | 30 | +| readinessProbe.periodSeconds | How often to perform the probe | 10 | +| readinessProbe.timeoutSeconds | When the probe times out | 1 | +| readinessProbe.successThreshold | Minimum consecutive successes for the probe to be considered successful after having failed | 1 | +| readinessProbe.failureThreshold | Minimum consecutive failures for the probe to be considered failed after having succeeded. | 3 | +| readinessProbe.path | URL path that will be called to check readiness. | /hazelcast/health/ready | +| readinessProbe.port | Port that will be used in readiness probe calls. | nil | +| readinessProbe.scheme | HTTPS or HTTP scheme. | HTTP | +| resources | CPU/Memory resource requests/limits | nil | +| service.type | Kubernetes service type (`ClusterIP`, `LoadBalancer`, or `NodePort`) | ClusterIP | +| service.port | Kubernetes service port | 5701 | +| service.clusterIP | IP of the service, "None" makes the service headless | None | +| rbac.create | Enable installing RBAC Role authorization | true | +| serviceAccount.create | Enable installing Service Account | true | +| serviceAccount.name | Name of Service Account, if not set, the name is generated using the fullname template | nil | +| securityContext.enabled | Enables Security Context for Hazelcast Jet and Hazelcast Jet Management Center | true | +| securityContext.runAsUser | User ID used to run the Hazelcast Jet and Hazelcast Jet Management Center containers | 65534 | +| securityContext.runAsGroup | Primary Group ID used to run all processes in the Hazelcast Jet and Hazelcast Jet Management Center containers | 65534 | +| securityContext.fsGroup | Group ID associated with the Hazelcast Jet and Hazelcast Jet Management Center container | 65534 | +| securityContext.readOnlyRootFilesystem | Enables readOnlyRootFilesystem in the Hazelcast Jet and Hazelcast Jet Management Center security containers | true | +| metrics.enabled | Turn on and off JMX Prometheus metrics available at `/metrics` | false | +| metrics.service.type | Type of the metrics service | ClusterIP | +| metrics.service.port | Port of the `/metrics` endpoint and the metrics service | 8080 | +| metrics.service.annotations | Annotations for the Prometheus discovery | +| customVolume | Configuration for a volume which will be mounted as `/data/custom` (e.g. to mount a volume with custom JARs) | nil | +| managementcenter.enabled | Turn on and off Hazelcast Jet Management Center application | true | +| managementcenter.image.repository | Hazelcast Jet Management Center Image name | hazelcast/hazelcast-jet-management-center | +| managementcenter.image.tag | Hazelcast Jet Management Center Image tag (NOTE: must be the same or one minor release greater than Hazelcast image version) | {VERSION} | +| managementcenter.image.pullPolicy | Image pull policy | IfNotPresent | +| managementcenter.image.pullSecrets | Specify docker-registry secret names as an array | nil | +| managementcenter.javaOpts | Additional `JAVA_OPTS` properties for Hazelcast Jet Management Center | nil | +| managementcenter.licenseKey | License Key for Hazelcast Jet Management Center | nil | +| managementcenter.licenseKeySecretName | Kubernetes Secret Name, where Jet Management Center License Key is stored (can be used instead of licenseKey) | nil | +| managementcenter.affinity | Hazelcast Jet Management Center node affinity | nil | +| managementcenter.tolerations | Hazelcast Jet Management Center node tolerations | nil | +| managementcenter.nodeSelector | Hazelcast Jet Management Center node labels for pod assignment | nil | +| managementcenter.resources | CPU/Memory resource requests/limits | nil | +| managementcenter.service.type | Kubernetes service type (`ClusterIP`, `LoadBalancer`, or `NodePort`) | ClusterIP | +| managementcenter.service.port | Kubernetes service port | 8081 | +| managementcenter.livenessProbe.enabled | Turn on and off liveness probe | true | +| managementcenter.livenessProbe.initialDelaySeconds | Delay before liveness probe is initiated | 30 | +| managementcenter.livenessProbe.periodSeconds | How often to perform the probe | 10 | +| managementcenter.livenessProbe.timeoutSeconds | When the probe times out | 5 | +| managementcenter.livenessProbe.successThreshold | Minimum consecutive successes for the probe to be considered successful after having failed | 1 | +| managementcenter.livenessProbe.failureThreshold | Minimum consecutive failures for the probe to be considered failed after having succeeded. | 3 | +| managementcenter.readinessProbe.enabled | Turn on and off readiness probe | true | +| managementcenter.readinessProbe.initialDelaySeconds | Delay before readiness probe is initiated | 30 | +| managementcenter.readinessProbe.periodSeconds | How often to perform the probe | 10 | +| managementcenter.readinessProbe.timeoutSeconds | When the probe times out | 1 | +| managementcenter.readinessProbe.successThreshold | Minimum consecutive successes for the probe to be considered successful after having failed | 1 | +| managementcenter.readinessProbe.failureThreshold | Minimum consecutive failures for the probe to be considered failed after having succeeded. | 3 | + + +Specify each parameter using the `--set key=value,key=value` argument to `helm install`. For example, + + # Helm 3 + $ helm install my-release \ + --set cluster.memberCount=3,serviceAccount.create=false \ + stable/hazelcast-jet + + # Helm 2 + $ helm install --name my-release \ + --set cluster.memberCount=3,serviceAccount.create=false \ + stable/hazelcast-jet + +The above command sets number of Hazelcast Jet members to 3. + +Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example, + + $ helm install my-release -f values.yaml stable/hazelcast-jet # Helm 3 + $ helm install --name my-release -f values.yaml stable/hazelcast-jet # Helm 2 + +> **Tip**: You can use the default values.yaml + +## Custom Hazelcast IMDG and Jet configuration + +Custom Hazelcast IMDG and Hazelcast Jet configuration can be specified inside `values.yaml`, as the `jet.yaml.hazelcast` and `jet.yaml.hazelcast-jet` properties. + + jet: + yaml: + hazelcast: + network: + join: + multicast: + enabled: false + kubernetes: + enabled: true + service-name: ${serviceName} + namespace: ${namespace} + resolve-not-ready-addresses: true + management-center: + enabled: ${hazelcast.mancenter.enabled} + url: ${hazelcast.mancenter.url} + hazelcast-jet: + instance: + flow-control-period: 100 + backup-count: 1 + scale-up-delay-millis: 10000 + lossless-restart-enabled: false + edge-defaults: + queue-size: 1024 + packet-size-limit: 16384 + receive-window-multiplier: 3 + metrics: + enabled: true + jmx-enabled: true + retention-seconds: 120 + collection-interval-seconds: 5 + metrics-for-data-structures: false + +Alternatively, above parameters can be modified directly via `helm` commands. For example, + + # Helm 3 + $ helm install my-jet-release \ + --set jet.yaml.hazelcast-jet.instance.backup-count=2,jet.yaml.hazelcast.network.kubernetes.service-name=jet-service \ + stable/hazelcast-jet + + # Helm 2 + $ helm install --name my-jet-release \ + --set jet.yaml.hazelcast-jet.instance.backup-count=2,jet.yaml.hazelcast.network.kubernetes.service-name=jet-service \ + stable/hazelcast-jet + +## Adding custom JAR files to the classpath + +You can mount any volume which contains your JAR files to the pods created by helm chart using `customVolume` configuration. + +When the `customVolume` set, it will mount provided volume to the pod on `/data/custom` path. This path also appended to the classpath of running Java process. + +For example, if you have existing host path Persistent Volume and Persistent Volume Claims like below; + + apiVersion: v1 + kind: PersistentVolume + metadata: + name: jet-hostpathpv-volume + labels: + type: local + spec: + storageClassName: manual + capacity: + storage: 1Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/path/to/my/jars" + --- + apiVersion: v1 + kind: PersistentVolumeClaim + metadata: + name: jet-pv-claim + spec: + storageClassName: manual + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi + +You can configure your Helm chart to use it like below in your `values.yaml` file. + + customVolume: + persistentVolumeClaim: + claimName: jet-pv-claim + +See [Volumes](https://kubernetes.io/docs/concepts/storage/) section on the Kubernetes documentation for other available options. + +# Notable changes + +## 1.4.0 + +Hazelcast REST Endpoints are no longer enabled by default and the parameter `jet.rest` is no longer available. If you want to enable REST, please add the related `endpoint-groups` to the Hazelcast Configuration (`jet.yaml.hazelcast`). For example: + + rest-api: + enabled: true + endpoint-groups: + HEALTH_CHECK: + enabled: true + CLUSTER_READ: + enabled: true + CLUSTER_WRITE: + enabled: true