- Home
- Skills
- Aaronontheweb
- Dotnet Skills
- Akka Management
akka-management_skill
- Shell
643
GitHub Stars
3
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill aaronontheweb/dotnet-skills --skill akka-management- configuration-reference.md4.4 KB
- discovery-providers.md6.2 KB
- SKILL.md10.6 KB
Overview
This skill provides Akka.Management integration for .NET, enabling dynamic cluster bootstrapping, service discovery, and health endpoints so clusters form without static seed nodes. It supports Kubernetes API discovery, Azure Table Storage discovery, and config-based discovery, and wires management HTTP endpoints and cluster bootstrap into Akka.Hosting.
How this skill works
The configuration registers Akka.Management HTTP endpoints (default port 8558) and enables Akka.Cluster.Bootstrap to discover contact points via a chosen discovery provider. Discovery providers (Kubernetes, Azure, or config) return management endpoints which the bootstrapper probes until the required contact points are stable, then the cluster auto-forms. Health checks and liveness/readiness probes are also registered for orchestration and load balancers.
When to use it
- Deploying Akka.NET clusters to Kubernetes or other cloud platforms where IPs are dynamic
- Replacing static seed nodes with service discovery for auto-scaling or rolling updates
- Setting up cluster bootstrap for automated cluster formation in production
- Exposing liveness/readiness and management endpoints for load balancers and health probes
- Integrating cluster formation with Azure Table Storage for non-Kubernetes environments
Best practices
- Enable ClusterBootstrap in production and clear static seed nodes to avoid conflicts
- Choose the discovery provider that matches the environment: Kubernetes for K8s, Azure for Azure, Config for development
- Set RequiredContactPointsNr to match minimum replica count (1 for dev, 3+ for production)
- Expose the management port in pod/container spec and match PortName used by discovery
- Tune StableMargin and probe intervals for slower or high-latency environments
Example use cases
- Kubernetes deployment: use Kubernetes discovery, expose a management port, and allow automatic cluster formation across replicas
- Azure VM scale set: register nodes in Azure Table Storage and bootstrap cluster without manual seed lists
- Local development: use config discovery with hard-coded endpoints to emulate cluster behavior
- Blue/green or rolling updates: rely on dynamic discovery to let new pods join and form the cluster automatically
- Autoscaling scenarios: new nodes discover existing nodes through the service name and management endpoints
FAQ
No. When ClusterBootstrap is enabled and discovery is configured, static seed nodes should be cleared so the bootstrapper can form the cluster dynamically.
Which discovery method should I pick for Kubernetes?
Use the Kubernetes API discovery provider and set the PodPortName to the management port name defined in your pod spec (commonly "management").