Skip to content
This repository has been archived by the owner on Jul 22, 2024. It is now read-only.
andy shi edited this page Feb 24, 2018 · 10 revisions

Short Name

Deploy Akka Clusters on Kubernetes

Short Description

Akka clusters are elastic & decentralized. Kubernetes clusters are also elastic. How to utilize Kubernetes for Akka's benefit?

Offering Type

Cloud

Introduction

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.

Author

Andy Shi

Code:

https://github.com/IBM/Akka-cluster-deploy-kubernetes

Demo

Video

Overview

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.

Flow

flow

  1. Add tools to the the Docker base image
  2. Use sbt to build the sample app into docker image
  3. Push the docker image to a docker repository
  4. Deploy the Akka cluster on Kubernetes with statfulset
  5. Try out the scaling of Akka cluster

Technologies

  • 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.

Components

  • Kubernetes Cluster: Create and manage your own cloud infrastructure and use Kubernetes as your container orchestration engine.

Blogs

Deploy Akka cluster on Kubernetes

Links

IBM Container Service
Akka
Lightbend
Kubernetes

Clone this wiki locally