Skip to main content

Controllers management

Spider Controllers were first released with this blog post.

Concept

A Spider Controller is a Kubernetes service that allows attaching a Whisperer to any running Pod in the cluster.
It even allows spawning Whisperers to all replicas of the same Kubernetes workload, and dynamically check when a new whisperer is needed based on the workload lifecycle events.

In short, a Controller allows you to spawn a Whisperer without leaving the UI.

It is great for troubleshooting, debugging, but may also be used for continuous observability and monitoring.

By default, you have a Spider Controller installed in the cluster when installing Spider. But you may also install controllers to any other cluster, and have them connected to the same Spider instance.

The controller:

  • watches Kubernetes events to keep an inventory of Pods
  • watches Whisperers events to maintain them (or remove them when needed)
  • provides a DNS proxy for Whisperers to avoid them to have any specific Kubernetes role (RBAC) to list Pods
  • respond in real time to UI requests
  • lists Whisperers deployed on each Kube node for Gociphers

How does it work?

Look at this blog post for details.

Content

This documentation describes: