Akka Cluster (and Cluster Client) on Kubernetes

728 views
Skip to first unread message

Ashley Aitken

unread,
Mar 2, 2015, 12:44:13 PM3/2/15
to akka...@googlegroups.com

Howdy All,

Has anyone had any experience getting an Akka Cluster and Cluster Client running on Kubernetes, e.g. on Google Container Engine (GCE)?

I note the problem with Akka dropping messages when the host IP address doesn't match the container virtual IP address.

I note the solution in Akka 2.4.

I would most appreciate anyone confirming if they have an Akka Cluster running on Kubernetes (on GCE or not) and sharing any tips / hints.

Thanks in advance,
Ashley.

Jim Hazen

unread,
Mar 2, 2015, 1:52:29 PM3/2/15
to akka...@googlegroups.com

Jim Hazen

unread,
Mar 2, 2015, 1:53:18 PM3/2/15
to akka...@googlegroups.com
Lol.  Or not, since you're the OP.  Oh well, need more coffee.

Ashley Aitken

unread,
Mar 2, 2015, 7:45:47 PM3/2/15
to akka...@googlegroups.com

Thanks Jim, lol and I would be happy to shout you that coffee for taking the time to reply.

Mahmoud Atef

unread,
Jul 18, 2016, 11:24:34 AM7/18/16
to Akka User List
Did it work with you, I mean Akka cluster over kubernetes?

Ruben Wagner

unread,
Jul 18, 2016, 3:55:29 PM7/18/16
to Akka User List
Hi,

actually the configuration is a bit tricky, because you need to set a fixed seed node, which is not fixed in Kubernetes. I looked at the Cassandra pod and ported it to Akka Cluster (s. attached file). It derives the config from the Kubernetes API and then starts the Akka Cluster. If the kubernetes service does not exist yet, it has to fail fast, so it can be restarted from the Kubernetes controller, that's why it throws an exception. As an entry point in the main class one can use something like this:

...
val kubeConfig = KubernetesSeednodeConfig.getConfig("akka-kube")
val config = kubeConfig.withFallback(ConfigFactory.load()).resolve()
val system = ActorSystem("akka-kube", config)
...

I will put this all together in a github project, when I find the time and post the link here. Also I did not have the time to play around with, it is not perfect and comes with no warranties.

Ruben
KubernetesSeednodeConfig.scala

Ashley Aitken

unread,
Jul 18, 2016, 8:11:06 PM7/18/16
to akka...@googlegroups.com

Thanks for sharing Ruben.

I was considering if it could be done without a fixed seed node.

I am keen to see your github project when you have time.

--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to a topic in the Google Groups "Akka User List" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/akka-user/obBNWy1bixI/unsubscribe.
To unsubscribe from this group and all its topics, send an email to akka-user+...@googlegroups.com.
To post to this group, send email to akka...@googlegroups.com.
Visit this group at https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
<KubernetesSeednodeConfig.scala>

Ashley Aitken

unread,
Aug 28, 2016, 10:21:34 AM8/28/16
to Akka User List
This looks very interesting:


Thanks to VYShane.

Ruben Wagner

unread,
Sep 26, 2016, 11:54:35 AM9/26/16
to Akka User List
Hi,

it took me some time, to find some time. But finally I created a github project from my solution:

Ruben
Reply all
Reply to author
Forward
0 new messages