| | |
| | |
| | Shows the total number of kube-proxy instances in the cluster that can be discovered by the monitoring system at the current time, reflecting the deployment scale of the add. - Under normal circumstances, this value should be consistent with the number of nodes in the cluster that need to run kube-proxy, and should change synchronously with node scaling.
- If this value decreases abnormally or is inconsistent with the expected number of nodes, it usually indicates that some kube-proxy instances are not running or that metric collection has failed. We recommend checking the kube-proxy Pod status, ServiceMonitor configuration, and monitoring collection targets on the abnormal nodes.
|
| | Shows the number of kube-proxy instances that cannot be collected by the monitoring system at the current time. This indicates the availability of add-on instances. - Under normal circumstances, this value should be 0.
- If this value is abnormally greater than 0, it usually indicates that one or more kube-proxy instances are unreachable, the process is abnormal, or the metric collection link is interrupted. We recommend checking the kube-proxy Pod status, network connectivity, and monitoring collection configuration on the corresponding nodes.
|
Max Network Programming P99 | | Shows the P99 duration of network rule programming for each node and IP protocol family. This value is calculated based on samples from the past 5 minutes and is used to identify the highest network rule effective latency. - Under normal circumstances, this value should remain stable and should not continuously show significant increases.
- If this value rises abnormally or remains high, it usually indicates that some nodes are slowing down in writing network rules. We recommend checking the CPU, memory, and kernel network status of the corresponding nodes and identifying the cause based on the rule count and kube-proxy logs.
|
| | Shows the P99 duration of proxy rule synchronization for each node and IP protocol family. This value is calculated based on samples from the past 5 minutes and is used to identify the slowest rule synchronization process. - Under normal circumstances, this value should remain stable and fall back within a short time after rule changes.
- If this value increases abnormally or remains high, it usually indicates that some nodes are slowing down in synchronizing Service or Endpoint rules. We recommend checking the rule scale, number of pending changes, node resource usage, and kube-proxy logs.
|
| | Shows the proportion of open file descriptors to the upper limit for the kube-proxy process on each node at the current time. This is used to identify the risk of file descriptor exhaustion. - Under normal circumstances, this proportion should remain stable and maintain a sufficient margin from 100%.
- If this proportion rises abnormally or approaches 100%, it usually indicates that a kube-proxy process is continuously opening more files or connections. We recommend checking the connection scale, process resource limits, and kube-proxy logs on the corresponding node to troubleshoot file descriptor leaks.
|
| | Shows the total number of times the start time of all kube-proxy processes changed in the past hour. This is used to determine whether the add-on restarts frequently. - Under normal circumstances, this value should be 0. It may increase briefly during add-on upgrades or node maintenance.
- If this value increases abnormally or continues to grow, it usually indicates that the kube-proxy process is restarting repeatedly. We recommend checking the restart reason, exit code, events, resource limits, and node status of the corresponding Pod.
|
Max Pending Endpoint Changes | | Shows the number of Endpoint changes to be synchronized on each node at the current time. This is used to identify backlogs in Endpoint rule processing. - Under normal circumstances, this value should be close to 0 and fall back quickly after Endpoint changes occur.
- If this value increases abnormally or does not fall back for a long time, it usually indicates that some nodes are not processing Endpoint changes fast enough. We recommend checking rule synchronization duration, node resource usage, Endpoint change frequency, and kube-proxy logs.
|
Max Pending Service Changes | | Shows the number of Service changes to be synchronized on each node at the current time. This is used to identify backlogs in Service rule processing. - Under normal circumstances, this value should be close to 0 and fall back quickly after Service changes occur.
- If this value increases abnormally or does not fall back for a long time, it usually indicates that some nodes are not processing Service changes fast enough. We recommend checking rule synchronization duration, node resource usage, Service change frequency, and kube-proxy logs.
|
Max Services Without Local Endpoints per Node | | Shows the number of Services without local Endpoints on each node at the current time. This is used to identify the risk that local traffic policies may be unable to forward traffic. - Under normal circumstances, this value should match the deployment expectations of Services using the Local traffic policy and remain stable.
- If this value rises abnormally, it usually indicates that some nodes lack available local Endpoints. We recommend checking the externalTrafficPolicy or internalTrafficPolicy of the related Services, pod scheduling distribution, EndpointSlice status, and pod readiness.
|
| | Shows the total number of requests per second that kube-proxy calls to the API Server. This value is calculated based on samples from the past 5 minutes and is used to observe the load of the add-on accessing the Kubernetes API. - Under normal circumstances, this value needs to match the cluster scale and resource change frequency and remain stable overall.
- If this value rises abnormally or fluctuates frequently, it usually indicates frequent changes to resource objects, increased client retries, or abnormal add-on behavior. We recommend performing troubleshooting based on the request method, response status code, API Server load, and kube-proxy logs.
|
| | Shows the proportion of requests that return 429 or 5xx responses when kube-proxy calls the API Server. This value is calculated based on samples from the past 5 minutes and is used to identify throttling and server-side exceptions. - Under normal circumstances, this proportion should be 0 or remain low.
- If this proportion rises abnormally, it usually indicates throttling, overload, and server-side errors on the API Server. We recommend checking the API Server request volume, throttling, and resource usage, and locating abnormal requests based on status codes and kube-proxy logs.
|
| | |
| | Shows the CPU usage of each kube-proxy pod and shows the top 10 Pods. This value is calculated based on samples from the past 5 minutes and is used to locate instances with high CPU consumption. - Under normal circumstances, the CPU usage of each Pod should be stable, and the difference between nodes of the same specification should not be large for a long time.
- If the CPU usage of some Pods rises abnormally or remains at the top, it usually indicates frequent rule changes, a large rule scale, or increased process processing pressure. We recommend performing troubleshooting based on the node scale, rule synchronization duration, resource limits, and kube-proxy logs.
|
Pod Memory Working Set — Top 10 | | Shows the memory working set of each kube-proxy Pod at the current time and the top 10 Pods. This is used to locate instances that actually occupy a high amount of physical memory. - Under normal circumstances, the memory working set of each Pod should be stable and below the configured memory limit.
- If the memory working set of some Pods grows abnormally or remains at the top, it usually indicates an expanded rule scale, a cache increase, or a memory leak risk. We recommend checking the Pod memory limit, rule count, process restart status, and kube-proxy logs.
|
Rule Sync & Network Programming | | |
Cluster Rule Sync Duration P50/P95/P99 | | Shows the P50, P95, and P99 duration of proxy rule synchronization in the cluster under different IP protocol families. This value is calculated based on samples from the past 5 minutes and is used to observe the overall latency distribution of rule synchronization. - Under normal circumstances, each percentile should remain stable, and P50, P95, and P99 should increase in order without the gap continuously widening.
- If P95 or P99 rises abnormally, it usually indicates that long-tail latency occurs in the synchronization of some rules. We recommend checking the rule scale, change frequency, node resource usage, number of pending changes, and kube-proxy logs.
|
Cluster Network Programming Latency P50/P95/P99 | | Shows the P50, P95, and P99 durations of network rule programming for the cluster under different IP protocol families. These values are calculated based on samples from the past 5 minutes and are used to observe the latency distribution of rules written to the data plane. - Under normal circumstances, each percentile value should remain stable, and the high-percentile duration needs not to continuously deviate significantly from the median.
- If P95 or P99 increases abnormally, it usually indicates long-tail latency in writing network rules on some nodes. We recommend checking node resources, kernel network status, rule scale, and kube-proxy logs.
|
Top 10 Nodes by Rule Sync Duration P99 | | Shows the P99 duration of proxy rule synchronization for each node and IP protocol family, and shows the top 10 nodes. The value is calculated based on samples from the past 5 minutes. This is used to locate the nodes with the slowest rule synchronization. - Under normal circumstances, the P99 duration of each node should be stable, and the difference between nodes of the same type needs not to be too large for a long time.
- If the P99 duration of some nodes increases abnormally or remains at the top, it usually indicates that these nodes have bottlenecks in rule scale, resources, or kernel processing. We recommend comparing the node load, number of pending changes, number of rules, and kube-proxy logs.
|
Top 10 Nodes by Network Programming Latency P99 | | Shows the P99 duration of network rule programming for each node and IP protocol family, and shows the top 10 nodes. This value is calculated based on samples from the past 5 minutes and is used to locate the nodes where data plane rules take effect most slowly. - Under normal circumstances, the P99 duration of each node should be stable, and the difference between nodes of the same type needs not to be too large for a long time.
- If the P99 duration of some nodes rises abnormally or remains at the top, it usually indicates that those nodes are slower at writing network rules. We recommend checking node CPU, memory, kernel network status, rule scale, and kube-proxy logs.
|
Average Endpoint/Service Change Rate per Instance | | Shows the number of Endpoint and Service changes processed per second by each kube-proxy instance and calculates the average value across all instances at the current time. The rate is calculated based on samples from the past 5 minutes and is used to observe the average rule change pressure per instance. - Under normal circumstances, the two types of change rates need to match business release and scaling activities, and fall after the changes end.
- If the change rate increases abnormally or remains high for a long time, it usually indicates frequent changes to Services, Endpoints, or EndpointSlices. We recommend checking workload releases, Pod readiness status, elastic scaling activities, and related controller events.
|
Pending Endpoint/Service Changes — Top 10 per Type | | Shows the number of pending Endpoint and Service changes on each node at the current time and shows the top 10 nodes for each type. This is used to locate nodes with a backlog of rule changes. - Under normal circumstances, the number of pending changes for both types should be close to 0 and fall back quickly after resource changes.
- If the number of pending changes on some nodes rises abnormally or does not fall back for a long time, it usually indicates that those nodes have insufficient rule synchronization capability or an abnormal synchronization process. We recommend checking the rule synchronization duration, node resources, resource change frequency, and kube-proxy logs.
|
Top 10 Nodes by Time Since Last Successful Sync | | Shows the time when the proxy rule was last synchronized for each node and IP protocol family at the current time, and shows the top 10 nodes with the longest interval. This is used to identify instances for which the rule has not been synchronized for a long time. - Under normal circumstances, this value falls back periodically with rule synchronization and does not continue growing.
- If the interval for some nodes increases abnormally or continues to grow, it usually indicates that kube-proxy has not successfully synchronized rules for a long time. We recommend checking the status of the corresponding instance, rule synchronization errors, API Server connectivity, and kube-proxy logs.
|
Services Without Local Endpoints — Top 10 Node/Policy Combinations | | Shows the number of Services without local Endpoints for each combination of node, IP protocol family, and traffic policy at the current time, and shows the top 10 combinations. This is used to locate local traffic forwarding risks. - Under normal circumstances, this value should meet the deployment expectations of the Local traffic policy and remain stable with Pod distribution.
- If the value of some combinations increases abnormally, it usually indicates that the relevant nodes lack ready local Endpoints. We recommend checking the Service traffic policy, Pod scheduling distribution, EndpointSlice status, and Pod readiness status.
|
Stale UDP Conntrack Entries Deleted (1h) — Top 10 Node/IP Family Combinations | | Shows the number of stale UDP Conntrack entries deleted by each node and IP protocol family in the past 1 hour, and shows the top 10 combinations. This is used to observe the cleanup pressure on the connection tracking table. - Under normal circumstances, this value should match the UDP business traffic and backend change scale, and not continue to surge without business changes.
- If this value increases abnormally, it usually indicates frequent changes to UDP backends, accumulation of a large number of stale connection tracking entries, or network jitter. We recommend checking UDP Service and Pod changes, Conntrack usage, and node network status.
|
Cluster Conntrack Reconciliation Duration P99 | | Shows the P99 duration of Conntrack reconciliation across different IP protocol families in the cluster. This value is calculated based on samples from the past hour and is used to observe the long-tail duration of cleaning up stale UDP connection tracking entries. - Under normal circumstances, this value should remain stable and not continuously increase significantly.
- If this value increases abnormally or remains high, it usually indicates a large Conntrack table size, increased cleanup pressure, or slower node network processing. We recommend checking Conntrack table usage, UDP business changes, node resources, and kernel network status.
|
| | |
API Server Request Rate by Method/Status Code | | Shows the number of requests per second made by kube-proxy to the API Server by request method and response status code. This value is calculated based on samples from the past 5 minutes and is used to analyze request composition and sources of error responses. - Under normal circumstances, the request rate should match the cluster resource change frequency, with successful status codes dominating.
- If the request rate or the number of requests corresponding to abnormal status codes increases abnormally, it usually indicates frequent resource changes, client retries, API Server rate limiting, or server-side exceptions. We recommend performing troubleshooting in combination with methods, status codes, API Server load, and kube-proxy logs.
|
API Server 429/5xx Response Ratio | | Shows the proportion of 429 and 5xx responses to all requests when kube-proxy calls the API Server. This value is calculated based on samples from the past 5 minutes and is used to distinguish throttling from server-side failures. - Under normal circumstances, both response proportions need to be 0% or remain low.
- If the 429 or 5xx proportion rises abnormally, it usually indicates throttling or overload on the API Server, or server-side errors. We recommend checking the API Server request volume, throttling configuration, resource usage, and logs for the corresponding status codes.
|
| | |
Top 10 Nodes by IPVS Connection Rate | | Shows the per-second rate of new IPVS connections on each node and shows the top 10 nodes. This value is calculated based on samples from the past 5 minutes and is used to locate nodes with high connection establishment pressure. - Under normal circumstances, this rate should be consistent with changes in business access volume and need not continue to rise abnormally when traffic is stable.
- If the connection rate of some nodes rises abnormally or remains at the top, it usually indicates traffic spikes, increased short connections, or uneven load distribution. We recommend checking business traffic, connection reuse, Service backend distribution, and node network status.
|
Top 10 Nodes by IPVS Packet Rate (In/Out) | | Shows the number of inbound and outbound packets per second of IPVS on each node and shows the top 10 nodes. This value is calculated based on samples from the past 5 minutes and is used to observe node forwarding packet rate. - Under normal circumstances, inbound and outbound packet rates should change synchronously with business traffic, and the overall trends should be matched.
- If the packet rate of some nodes rises abnormally, drops sharply, or the inbound and outbound packets are clearly mismatched for a long time, it usually indicates traffic spikes, packet loss, forwarding exceptions, or uneven load distribution. We recommend checking business traffic, NIC and packet loss metrics, IPVS rules, and node network status.
|
Top 10 Nodes by IPVS Throughput (In/Out) | | Shows the number of inbound and outbound bytes transmitted per second of IPVS on each node and shows the top 10 nodes. This value is calculated based on samples from the past 5 minutes and is used to observe node data plane throughput. - Under normal circumstances, inbound and outbound throughput need to change synchronously with business traffic and match node capacity.
- If the throughput of some nodes rises abnormally, drops sharply, or the inbound and outbound bytes are clearly mismatched for a long time, it usually indicates traffic spikes, network congestion, forwarding exceptions, or uneven load distribution. We recommend checking business traffic, NIC bandwidth and error metrics, IPVS rules, and node network status.
|