skuber.examples.guestbook

Type members

Classlikes

Companion:
class
class CreateResultHandler(consumer: ActorRef, name: String) extends ServiceResultHandler
Companion:
object
object Guestbook extends App
Companion:
class
class GuestbookActor extends Actor with ActorLogging
Companion:
object

A KubernetesProxyActor proxies all requests from the Guestbook actors to Kubernetes. It is a slim wrapper around the skuber API, and enables sharing of skuber resources (e.g. underlying WS client connections, watches etc.) by all calling actors. It supports request messages to create/delete/get Service and Replication Controller resources on Kubernetes. For each of the above the actor simply creates and invokes a skuber request, and pipes the (future) response back to a result handler actor specified in the request message.

A KubernetesProxyActor proxies all requests from the Guestbook actors to Kubernetes. It is a slim wrapper around the skuber API, and enables sharing of skuber resources (e.g. underlying WS client connections, watches etc.) by all calling actors. It supports request messages to create/delete/get Service and Replication Controller resources on Kubernetes. For each of the above the actor simply creates and invokes a skuber request, and pipes the (future) response back to a result handler actor specified in the request message.

It also supports a WatchReplicationController message that puts a reactive watch on a specified replication controller that forwards any updates received via the watch to one or more a specified actor. Multiple actors may watch the same controller - they reuse the same underlying watch. These watches are used by ScalerActor for monitoring the progress of scaling up/down of Guestbook services on the cluster.

Companion:
class
class KubernetesProxyActor extends Actor with ActorLogging
Companion:
object
Companion:
class
class RemoveResultHandler(consumer: ActorRef, name: String) extends ServiceResultHandler
Companion:
object
Companion:
class
class ScaleResultHandler(consumer: ActorRef, name: String) extends ServiceResultHandler
Companion:
object

The scaler actor is responsible for scaling a replica count up/down for a Guestbook service One scaler actor handles a single scaling request

The scaler actor is responsible for scaling a replica count up/down for a Guestbook service One scaler actor handles a single scaling request

Companion:
class
class ScalerActor(kubernetes: ActorRef, controllerName: String, targetReplicaCount: Int) extends Actor with ActorLogging
Companion:
object
Companion:
class
class ServiceActor(kubernetes: ActorRef, specification: GuestbookServiceSpecification) extends Actor with ActorLogging
Companion:
object
abstract class ServiceResultHandler(serviceConsumer: ActorRef) extends Actor with ActorLogging
Companion:
class
class StopResultHandler(consumer: ActorRef, name: String) extends ServiceResultHandler
Companion:
object
case class Watching(watch: Future[Source[WatchEvent[ReplicationController], _]], watchers: Set[ActorRef])