From b257a07c57df57545a0eba88247ceef0fe476f23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=99=8E=E9=B8=A3?= Date: Tue, 7 Jul 2026 00:27:49 +0800 Subject: [PATCH] docs: link to app-version from Deployment for rolling updates Motivation: The rolling-updates docs explained the manual pekko.cluster.app-version setting but did not mention that Pekko Management can derive it automatically from a Kubernetes Deployment. Modification: - Add a paragraph pointing to the app-version from Deployment feature in Pekko Management - Add a pekko-management-snapshot extref prefix for the link target Result: Users on Kubernetes are pointed to the automatic app-version mechanism. Refs #3276 --- docs/src/main/paradox/additional/rolling-updates.md | 4 ++++ project/Paradox.scala | 1 + 2 files changed, 5 insertions(+) diff --git a/docs/src/main/paradox/additional/rolling-updates.md b/docs/src/main/paradox/additional/rolling-updates.md index 08687000ebc..d6044557aa6 100644 --- a/docs/src/main/paradox/additional/rolling-updates.md +++ b/docs/src/main/paradox/additional/rolling-updates.md @@ -58,6 +58,10 @@ pekko.cluster.app-version = 1.2.3 To understand which is old and new it compares the version numbers using normal conventions, see @apidoc[util.Version] for more details. +When using [Kubernetes Deployments](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) with `RollingUpdate` +strategy you should enable the @extref:[app-version from Deployment feature from Pekko Management](pekko-management-snapshot:rolling-updates.html#app-version-from-deployment) +to automatically define the `app-version` from the Kubernetes `deployment.kubernetes.io/revision` annotation. + Rebalance is also disabled during rolling updates, since shards from stopped nodes are anyway supposed to be started on new nodes. Messages to shards that were stopped on the old nodes will allocate corresponding shards on the new nodes, without waiting for rebalance actions. diff --git a/project/Paradox.scala b/project/Paradox.scala index b9b39562f90..e718b52d5d0 100644 --- a/project/Paradox.scala +++ b/project/Paradox.scala @@ -32,6 +32,7 @@ object Paradox { .url(version.value), // for links like this: @github[#1](#1) or @github[83986f9](83986f9) "extref.pekko.http.base_url" -> s"$pekkoBaseURL/docs/pekko-http/current/%s", "extref.pekko-management.base_url" -> s"$pekkoBaseURL/docs/pekko-management/current/%s", + "extref.pekko-management-snapshot.base_url" -> s"$pekkoBaseURL/docs/pekko-management/snapshot/%s", "extref.platform-guide.base_url" -> "https://developer.lightbend.com/docs/akka-platform-guide/%s", "extref.wikipedia.base_url" -> "https://en.wikipedia.org/wiki/%s", "extref.github.base_url" -> (GitHub.url(version.value) + "/%s"), // for links to our sources