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: