Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. join Pekko nodes (that impersonate Akka nodes) to your Akka cluster and then start to remove the Akka nodes
  2. when you have no Akka nodes, start replacing the Pekko nodes with ones that do not impersonate Akka nodes but that still agree to interact with Akka nodes (because some Pekko nodes are still impersonating Akka nodes - ie ones that still have `pekko.remote.protocol-name="akka"`)
  3. when all nodes are using `pekko.remote.protocol-name="pekko"`, then you can replace all the nodes with nodes that no longer accept "pekko" as a protocol name (ie `pekko.remote.accept-protocol-names=["pekko"]`) 

If you have issues in phase 1, you can stop the new Pekko nodes and return to being a cluster with just Akka nodes.

Known Issues

  • If you use Akka-Persistence, the existing Pekko code attempts to change Snapshot data. Unfortunately, the Akka and Pekko Persistence snapshots include a Serializer class name in the persisted data and this class name will either have a package name beginning with akka  or org.apache.pekko. A proposed solution appears in PR1423.