Troubleshooting Network Flow

Troubleshooting Network Flow

If you are experiencing network flow issues, first verify that there is successful communication from the client to the cluster before troubleshooting the cluster and applications within the cluster. Network flow issues include connectivity issues, latency and slow performance, packet loss, unresponsive network devices, or unexpected drops or resets in the connection.
Client-to-cluster network communication is critical to the operation of the overall product. Typical network configurations, such as IP addressing, routing, DNS, and firewalls, are some of the basic components expected to be operational and are outside of the scope of this document. Before troubleshooting the cluster and applications within the cluster, first verify that there is successful communication from the client to the cluster.
After ensuring there is successful communication from the client to the cluster, troubleshoot the cluster and applications. Traffic in the cluster involves multiple layers, generally resembling the following:
  1. Load balancer.
  2. Ingress controller.
  3. Kubernetes service.
  4. Pod and containers.
You can follow traffic through these components to identify connecting issues. You can also use the returned HTTP status code to assist in troubleshooting.
Troubleshooting Network Flow Issues
Problem
Cause
Solution
HTTP status codes: 502, 503, or 504
It is likely that the issue lies with the Kubernetes service or pod responsible for processing requests.
Depending on the route, you should be able to identify if the pod that is trying to be reached is not running or is not responding.
kubectl get pods -n zebra-reader-management
All application pods should show a status of
Running
and a ready count of N/N.
Connectivity issues, latency, slow performance, packet loss, unresponsive network devices, or unexpected drops or resets in the connection.
Traffic may not be reaching the cluster.
Verify that traffic is reaching the cluster. Refer to Following Request Logs