Skip to content

Latest commit

 

History

History
5 lines (3 loc) · 1.17 KB

README.md

File metadata and controls

5 lines (3 loc) · 1.17 KB

Kube-echo

This is a very simple TCP/UDP echo server that, can be easily deployed into a Kubernetes cluster. yyou can run just as a test echo service, but its main goal is to run as a DeamonSet, that can be used for detecting running Kubernetes nodes using UDP probes.

When dealing with UDP services on a Kubernetes cluster, one way to expose them to the outside world is by using a Service configured in NodePort mode. In this mode you can point an external load balancer to a UDP port that every Kubernetes node will allocate and translate so it goes to your UDP service. Still, some load balancers (Oracle's OCI is an example) require you to provide a full static request-response UDP conversation that can be used as a way to detect if target nodes are up and running. In that case, you can use kube-echo deployed as a DaemonSet with a NodePort service to use as a Kubernetes node liveness check from the load balancer's perspective. To avoid issues when the kube-echo itself goes down or is not running for any reason, it is exposing a simple heart beat prometheus metric you can use for alerting.