Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save EliFuzz/c7a66275e70c15ea176a0c7faf826343 to your computer and use it in GitHub Desktop.
Save EliFuzz/c7a66275e70c15ea176a0c7faf826343 to your computer and use it in GitHub Desktop.
Kubernetes Network: Debugging and Monitoring Tools
Tool Description
calicoctl for managing Calico network policies and resources. We can use calicoctl to check the network policies that are applied to the pods and services in our cluster, and to add or delete policies if needed
curl Transfers data from or to a server using various protocols, such as HTTP, HTTPS, FTP, etc. It can help us test if a service or pod is responding to requests correctly and measure the latency and throughput
dig Performs DNS queries and displays detailed information about the responses
ip Command-line tool for manipulating IP addresses and routes on Linux systems. We can use ip to check the IP addresses and routes of the pods and nodes in our cluster, and to add or delete routes if needed
iperf Measures the bandwidth and quality of a network link by generating TCP or UDP traffic. It can help us benchmark the performance of the network between two nodes or pods
iptables Command-line tool for managing firewall rules on Linux systems. We can use iptables to check the firewall rules that are applied to the pods and nodes in our cluster, and to add or delete rules if needed
kubectl The command-line tool that allows us to interact with the Kubernetes API and resources. It has many subcommands and options that can help us inspect and manipulate the network objects, such as services, pods, endpoints, etc. For example, we can use kubectl describe to get detailed information about a service or pod, kubectl logs to view the logs of a pod or container, kubectl exec to run commands inside a pod or container, kubectl port-forward to forward a local port to a pod or service port
kubectl exec executes commands inside a container in a pod
kubectl logs prints the logs of a container in a pod
kubectl port-forward forwards one or more local ports to a pod
kubectl proxy creates a proxy server that provides access to the Kubernetes API server
kubectl top displays CPU and memory usage of nodes and pods
netstat Displays various network statistics, such as connections, routing tables, interface statistics, etc. It can help us monitor the network status and activity on a node or pod
nslookup For querying DNS servers and resolving domain names to IP addresses. We can use nslookup to check the DNS records and resolution of the pods and services in our cluster, and to verify that they are correct and consistent
ping A simple tool that tests the connectivity between two hosts by sending ICMP packets and measuring the response time. It can help us check if a pod or node is reachable from another pod or node
tcpdump Captures and analyzes the network traffic on a given interface or filter. It can help us inspect the packets in detail and troubleshoot low-level network issues
traceroute Traces the route of packets from one host to another and displays the hops along the way. It can help us identify where the packets are dropped or delayed in the network
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment