An open API service indexing awesome lists of open source software.

https://github.com/piontec/kube-echo

a simple UDP/TCP echo implementation, good to use as a Kubernetes node health check
https://github.com/piontec/kube-echo

Last synced: 5 months ago
JSON representation

a simple UDP/TCP echo implementation, good to use as a Kubernetes node health check

Awesome Lists containing this project

README

          

# 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`](https://kubernetes.io/docs/concepts/services-networking/service/#type-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.