mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
45 lines
2.8 KiB
Plaintext
45 lines
2.8 KiB
Plaintext
// Module filename: nw-throughput-troubleshoot.adoc
|
|
// Module included in the following assemblies:
|
|
// * networking/routes/route-configuration.adoc
|
|
// * microshift_networking/microshift-configuring-routes.adoc
|
|
|
|
:_mod-docs-content-type: CONCEPT
|
|
[id="nw-throughput-troubleshoot_{context}"]
|
|
= Throughput issue troubleshooting methods
|
|
|
|
[role="_abstract"]
|
|
To diagnose and resolve network throughput issues, such as unusually high latency between specific services, apply troubleshooting methods. Identifying connectivity bottlenecks helps ensure stable application performance within {product-title}.
|
|
|
|
If pod logs do not reveal any cause of the problem, use the following methods to analyze performance issues:
|
|
|
|
* Use a packet analyzer, such as `ping` or `tcpdump` to analyze traffic between a pod and its node.
|
|
+
|
|
For example, link:https://access.redhat.com/solutions/4569211[run the `tcpdump` tool on each pod] while reproducing the behavior that led to the issue. Review the captures on both sides to compare send and receive timestamps to analyze the latency of traffic to and from a pod. Latency can occur in {product-title} if a node interface is overloaded with traffic from other pods, storage devices, or the data plane.
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ tcpdump -s 0 -i any -w /tmp/dump.pcap host <podip 1> && host <podip 2> <1>
|
|
----
|
|
+
|
|
where:
|
|
+
|
|
`podip`:: Specifies the IP address for the pod. Run the `oc get pod <pod_name> -o wide` command to get the IP address of a pod.
|
|
+
|
|
The `tcpdump` command generates a file at `/tmp/dump.pcap` containing all traffic between these two pods. You can run the analyzer shortly before the issue is reproduced and stop the analyzer shortly after the issue is finished reproducing to minimize the size of the file. You can also link:https://access.redhat.com/solutions/5074041[run a packet analyzer between the nodes] with:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ tcpdump -s 0 -i any -w /tmp/dump.pcap port 4789
|
|
----
|
|
|
|
* Use a bandwidth measuring tool, such as link:https://access.redhat.com/solutions/6129701[`iperf`], to measure streaming throughput and UDP throughput. Locate any bottlenecks by running the tool from the pods first, and then running it from the nodes.
|
|
|
|
ifdef::openshift-enterprise,openshift-webscale[]
|
|
** For information on installing and using `iperf`, see this link:https://access.redhat.com/solutions/33103[Red Hat Solution].
|
|
endif::openshift-enterprise,openshift-webscale[]
|
|
ifndef::microshift[]
|
|
* In some cases, the cluster might mark the node with the router pod as unhealthy due to latency issues. Use worker latency profiles to adjust the frequency that the cluster waits for a status update from the node before taking action.
|
|
|
|
* If your cluster has designated lower-latency and higher-latency nodes, configure the `spec.nodePlacement` field in the Ingress Controller to control the placement of the router pod.
|
|
endif::microshift[]
|