-
Notifications
You must be signed in to change notification settings - Fork 21
Home
Deploy Akka Clusters on Kubernetes
Akka clusters are elastic & decentralized. Kubernetes clusters are also elastic. How to utilize Kubernetes for Akka's benefit?
Cloud
Akka Cluster is a fault-tolerant peer-to-peer cluster membership service. Kubernetes provides several features that are a great fit for running applications built with Akka Cluster. This code pattern will cover how to take your Akka Cluster application and configure it to run on top of Kubernetes, taking advantage of its many standard features.
https://github.com/IBM/Akka-cluster-deploy-kubernetes
Recently, more and more developers are trying out Akka. Before using any frameworks like Play and Lagom, most people normally start with the built-in Actor system. Due to different design perspectives, it is not that straightforward to deploy an Akka cluster on Kubernetes.
In this code pattern, we will walk through the steps to deploy an Akka cluster on Kubernetes. During which we will also discuss the challenges in deploying Akka to Kubernetes and the solution to that. In the end we will showcase how Kubernetes can seamlessly manage Akka cluster scaling with built in Akka functionalities.
- Add tools to the the Docker base image
- Use sbt to build the sample app into docker image
- Push the docker image to a docker repository
- Deploy the Akka cluster on Kubernetes with
statfulset
- Try out the scaling of Akka cluster
- Containers: Virtual software objects that include all the elements that an app needs to run.
- Container Orchestration: Automating the deployment, scaling and management of containerized applications.
- Kubernetes Cluster: Create and manage your own cloud infrastructure and use Kubernetes as your container orchestration engine.