Skip to content

Add health check support for Persistence journal and snapshot store #3128

Description

@He-Pin

Motivation

In cloud-native and Kubernetes deployments, it's critical to verify that persistence backends (journals and snapshot stores) are healthy, connected, and ready to serve reads/writes. Currently, pekko provides ClusterShardingHealthCheck for cluster sharding readiness, but there is no equivalent health check mechanism for the persistence subsystem.

Without persistence health checks, operators cannot:

  • Verify journal connectivity during pod startup (readiness probes)
  • Detect journal degradation or disconnection during runtime (liveness probes)
  • Monitor recovery status of persistent actors

Proposed Enhancement

Add health check support to the persistence subsystem, following the pattern established by ClusterShardingHealthCheck:

  1. A health check extension for AsyncWriteJournal that verifies the journal is reachable and responsive
  2. A health check for snapshot store connectivity
  3. Integration with Kubernetes-style readiness/liveness probe mechanisms

The akka.net project has implemented this feature and found it valuable for production deployments.

References

This enhancement was inspired by the Akka.NET project: akkadotnet/akka.net#7840

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions