Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sapcc/kube-detective
A Kubernetes Network Validation Tool
https://github.com/sapcc/kube-detective
Last synced: 4 days ago
JSON representation
A Kubernetes Network Validation Tool
- Host: GitHub
- URL: https://github.com/sapcc/kube-detective
- Owner: sapcc
- License: apache-2.0
- Created: 2016-07-22T14:20:03.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-10-23T18:05:09.000Z (28 days ago)
- Last Synced: 2024-10-24T02:46:48.961Z (27 days ago)
- Language: Go
- Size: 29.3 MB
- Stars: 30
- Watchers: 39
- Forks: 6
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Kubernetes Network Detective
This tool is used to validate the network setup of a Kubernetes cluster. It
goes beyond the basic e2e tests and verifies each node of a cluster. This
allows to find even the most arcane or temporary network problems.## Test Bed
Before any testing the following test bed is being created:
* Ephemeral Namespace
* Two pods per node. One with `hostNetwork` mode enabled, one without.
* For each pod a service is created. A unique external IP is assigned to
each.## Test Scenarios
To test connectivty the tool will call a `kubectl exec wget http://$IP:$PORT`.
It tests the following scenarios.* Connectivity from Pod to Pod
* Connectivity from Pod to ClusterIP to Pod
* Connectivity from Pod to ExternalIP to PodIt tests all possible permutations. This is not feasable for large clusters...
Only `schedulable` nodes are taken into account.## Running
Default load order for `.kubeconfig` applies. If you have a working `kubectl`
it will just work```
kube-detective -externalCIDR 10.44.11.32/27
```Additional logging can be enabled by setting `--v=2` or `--v=3`.
## Docker image
Docker image with latest binary is available at [sapcc/kube-detective](https://hub.docker.com/repository/docker/sapcc/kube-detective).