Skip to content

Commit

Permalink
Merge branch 'hazelcast:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
oliverhowell authored May 22, 2024
2 parents d72e6b1 + 4ed4528 commit ffca05b
Show file tree
Hide file tree
Showing 17 changed files with 593 additions and 23 deletions.
6 changes: 5 additions & 1 deletion antora-playbook.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ content:
- url: .
branches: HEAD
start_path: docs
- url: https://github.com/hazelcast/hazelcast-mono
branches: [master]
start_path: docs/rest
ui:
bundle:
url: https://github.com/hazelcast/hazelcast-docs-ui/releases/latest/download/ui-bundle.zip #../hazelcast-docs-ui/build/ui-bundle.zip
Expand All @@ -32,4 +35,5 @@ asciidoc:
ucd: User Code Deployment
extensions:
- ./docs-tabs-library/tabs-block.js
- asciidoctor-kroki
- asciidoctor-kroki
- ./lib/swagger-ui-block-macro.js
4 changes: 2 additions & 2 deletions docs/modules/clients/partials/rest-deprecation.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[CAUTION]
.Deprecation Notice for the REST API
.Deprecation Notice for the Community Edition REST API
====
The REST API has been deprecated and will be removed as of Hazelcast version 7.0. An improved version of this feature is under development.
The Community Edition REST API has been deprecated and will be removed as of Hazelcast version 7.0. An improved version of this feature is under development. For more info, see xref:maintain-cluster:enterprise-rest-api.adoc[REST API]
====
66 changes: 66 additions & 0 deletions docs/modules/cp-subsystem/pages/cp-subsystem.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -273,3 +273,69 @@ group is not available anymore, no management tasks can be performed on the CP
Subsystem. For instance, a new CP group cannot be created. In this case,
the only solution is to wipe-out the whole CP Subsystem state by performing
a force-reset. See xref:management.adoc#cp-subsystem-management-apis[CP Subsystem Management].

== Kubernetes

IMPORTANT: We strongly encourage using xref:kubernetes:deploying-in-kubernetes.adoc#hazelcast-platform-operator-for-kubernetesopenshift[Hazelcast Platform Operator,window=_blank] for deployments into Kubernetes. If you choose to use Helm, use the official
`hazelcast/hazelcast-enterprise` xref:kubernetes:deploying-in-kubernetes.adoc#helm-chart[Helm Chart,window=_blank]
and configure within the limitations described in this section.

Deployment of CP within Kubernetes is supported from Hazelcast Enterprise 5.5 and covers the
following scenarios when using xref:kubernetes:deploying-in-kubernetes.adoc#hazelcast-platform-operator-for-kubernetesopenshift[Hazelcast Platform Operator,window=_blank] or our `hazelcast/hazelcast-enterprise` xref:kubernetes:deploying-in-kubernetes.adoc#helm-chart[Helm Chart,window=_blank].

- Deployment: see xref:kubernetes:deploying-in-kubernetes.adoc[Deploying in Kubernetes,window=_blank].
- Pause: scaling of pods to `0`
- Resume: scaling of pods back to the same number of pods defined at the point of _Deployment_
- Rolling Update
- Spurious pod restarts

We support 3, 5- and 7-CP member deployments under the constraints discussed in this section.

The method by which deployment, pause, resume and rolling update are performed will vary according
to the way that CP was deployed. See xref:kubernetes:deploying-in-kubernetes.adoc[Deploying in Kubernetes,window=_blank]
for more information.

[NOTE]
====
* CP is only supported on Kubernetes with CP xref:cp-subsystem:configuration.adoc#persistence[persistence enabled,window=_blank].
Hazelcast Enterprise is therefore a requirement.
* The current limitation on CP in Kubernetes is that we do not support dynamic scaling of the cluster.
The number of members defined at the time of deployment is static and the CP members and CP group size
are expected to be equal to the total number of members (the cluster size) at the time of deployment.
Explicit removal and promotion of a CP member is not supported: Kubernetes has the responsibility of
restarting CP members should they be terminated. These restrictions will be removed in a subsequent
release of Hazelcast Enterprise.
====

We recommend setting xref:cp-subsystem:configuration.adoc#data-load-timeout-seconds[data-load-timeout-seconds,window=_blank]
to a value that spans the duration from when the first pod is running to when last pod is running and has completed its CP
intialisation procedure. This is particularly important if you intend to perform _resume_ scenarios. Currently the only way to determine when a CP member has completed its initialisation is to consult the logs. Therefore, we recommend the following to determine a reasonable value for `data-load-timeout-seconds`:

1. Load CP with an amount of data that is representative of your production use case
2. Pause the cluster
3. Resume the cluster and determine the duration in seconds between when first pod in the `StatefulSet` running and when the last pod in the `StatefulSet` is running and outputted an `INFO` level log message that matches the pattern `CP restore completed...in` as described shortly.

If you are using a log aggregation service and want to filter key startup events within CP, you can use the `INFO` level patterns emitted by `CPPersistenceServiceImpl` as detailed below.

[cols="1,1,1"]
|===
|Phrase|Example Match|Description

|`CP restore starting...in`
|`CP restore starting...in /data/cp-data/0e667605-c650-42b7-9625-376a213008a6; Timeout(s): 120`
| Point at which the entire CP restoration process started.

|`CP restore completed...in`
|`CP restore completed...in /data/cp-data/0e667605-c650-42b7-9625-376a213008a6; Took(ms): 50387`
| Point at which the entire CP restoration process completed, including notifying other CP members that the member has rejoined and the loading of its persisted data.

|`CP restore starting(CPGroupId`
|`CP restore starting(CPGroupId{name='METADATA', seed=0, groupId=0})...in /data/persistence/cp/212561fb-c2d5-442a-a4e0-a863fdf7074b/METADATA@0@0`
| Point at which a particular CP Group's data started loading.

|`CP restore completed(CPGroupId`
|`CP restore completed(CPGroupId{name='METADATA', seed=0, groupId=0})...in /data/persistence/cp/212561fb-c2d5-442a-a4e0-a863fdf7074b/METADATA@0@0; Took(ms): 29`
| Point at which a particular CP Group's data completed loading.

|===
12 changes: 1 addition & 11 deletions docs/modules/deploy/pages/versioning-compatibility.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -303,23 +303,13 @@ The following table lists the compatibilities between client and Platform/IMDG v

|Go 0.x.y
|
* Platform 5.x.y
* IMDG 4.x.y
* IMDG 3.6.x through 3.12.x

|CLC 5.x.y
|
* Platform 5.x.y
* IMDG 4.x.y

|CLC 1.x.y
|
* Platform 5.x.y
* IMDG 4.x.y

|CLC 0.x.y
|
* Platform 5.x.y
* IMDG 4.x.y
|===


Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit ffca05b

Please sign in to comment.