Skip to content

K8s-Sherlock is an open-source Kubernetes pod designed for debugging and diagnostics. As a swiss-army knife for your Kubernetes cluster, it comes pre-loaded with a host of tools to help you diagnose issues with network, containers, and more. Developed to expedite the troubleshooting process, K8s-Sherlock is your go-to pod for resolving complex orch

License

Notifications You must be signed in to change notification settings

arunlab/k8s-sherlock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

K8s-Sherlock: Kubernetes Debugging Toolkit

A comprehensive debugging and troubleshooting toolkit for Kubernetes environments, packaged in a single container based on Debian slim.

Included Tools

  • Kubernetes Tools: kubectl, helm, kustomize, kubectx/kubens, stern, krew
  • Cluster Exploration: k9s, kubectl-neat, dive
  • Security: trivy, kubeconform
  • Development: telepresence
  • Networking: iproute2, iputils-ping, netcat, tcpdump, dnsutils, socat
  • JSON/YAML Processing: jq, yq
  • Utilities: curl, wget, git, vim, fzf, and more

Usage

Run as a container in your cluster

kubectl run sherlock --rm -it --image=ghcr.io/arunsanna/k8s-sherlock --restart=Never -- bash

CI/CD Pipeline

The project includes GitHub Actions workflows for:

  • Automated builds on pushes to main branch and tags
  • Container image publishing to GitHub Container Registry
  • Security scanning with Trivy to detect vulnerabilities
  • Layer caching for faster builds

Features

  • Networking Tools: Comes with iproute2, iputils-ping, netcat, dnsutils, tcpdump, and socat
  • HTTP Tools: curl and wget pre-installed for HTTP requests
  • Kubernetes Development: Full suite of K8s tools including kubectl plugins via krew
  • Interactive Tools: Terminal-based UIs like k9s and fzf for better productivity

Quick Start

Prerequisites

  • A Kubernetes cluster up and running
  • kubectl installed and configured

Deploy K8s-Sherlock Pod

kubectl apply -f pod/sherlock.yml --namespace=<namespace_name>

Run Standalone

You can also pull and run the container directly with Docker:

docker run -it --rm ghcr.io/arunsanna/k8s-sherlock

Usage

Once the K8s-Sherlock pod is up and running, you can exec into it to use the tools.

bash

kubectl exec -it <pod-name> -- /bin/bash

Contributing

We love contributions! Please read the Contributing Guidelines for more information on how to get involved.


License

This project is licensed under the MIT License. See the LICENSE file for details.

About

K8s-Sherlock is an open-source Kubernetes pod designed for debugging and diagnostics. As a swiss-army knife for your Kubernetes cluster, it comes pre-loaded with a host of tools to help you diagnose issues with network, containers, and more. Developed to expedite the troubleshooting process, K8s-Sherlock is your go-to pod for resolving complex orch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published