Kube Proxy

Supported OS Linux Windows Mac OS

Integration version8.1.0

Kube_proxy Integration

Overview

Get metrics from kube_proxy service in real time to:

  • Visualize and monitor kube_proxy states
  • Be notified about kube_proxy failovers and events.

Setup

Configuration

The integration relies on the --metrics-bind-address option of the kube-proxy, by default it’s bound to 127.0.0.1:10249. Start the Agent on the host network if the kube-proxy is also on the host network (default) or start the kube-proxy with --metrics-bind-address=0.0.0.0:10249

Edit the kube_proxy.d/conf.yaml file to point to your server and port, set the masters to monitor

Note: If you edit the namespace & metrics name, or add any other metric they are considered as custom

Contribute to the integration if you want to add a relevant metric.

Validation

Run the Agent’s status subcommand and look for kube_proxy under the Checks section.

Data Collected

Metrics

kubeproxy.cpu.time
(gauge)
Total user and system CPU time spent in seconds
Shown as second
kubeproxy.mem.resident
(gauge)
Resident memory size in bytes
Shown as byte
kubeproxy.mem.virtual
(gauge)
Virtual memory size in bytes
Shown as byte
kubeproxy.rest.client.exec_plugin.certificate.rotation
(gauge)
Histogram of the number of seconds the last auth exec plugin client certificate lived before being rotated. If auth exec plugin client certificates are unused, histogram will contain no data.
Shown as second
kubeproxy.rest.client.exec_plugin.ttl
(gauge)
Gauge of the shortest TTL (time-to-live) of the client certificate(s) managed by the auth exec plugin. The value is in seconds until certificate expiry (negative if already expired). If auth exec plugins are unused or manage no TLS certificates, the value will be +INF. (alpha)
Shown as second
kubeproxy.rest.client.request.duration
(gauge)
Request latency in seconds. Broken down by verb and URL.
Shown as second
kubeproxy.rest.client.requests
(gauge)
Number of HTTP requests partitioned by status code method and host
Shown as request
kubeproxy.sync_proxy.rules.duration
(gauge)
SyncProxyRules latency in seconds (alpha)
Shown as second
kubeproxy.sync_proxy.rules.endpoint_changes.pending
(gauge)
Pending proxy rules Endpoint changes (alpha)
kubeproxy.sync_proxy.rules.endpoint_changes.total
(gauge)
Cumulative proxy rules Endpoint changes (alpha)
kubeproxy.sync_proxy.rules.iptables
(gauge)
Number of proxy iptables rules programmed (alpha)
kubeproxy.sync_proxy.rules.iptables.restore_failures
(gauge)
Cumulative proxy iptables restore failures (alpha)
kubeproxy.sync_proxy.rules.last_queued_timestamp
(gauge)
The last time a sync of proxy rules was queued (alpha)
Shown as second
kubeproxy.sync_proxy.rules.last_timestamp
(gauge)
The last time proxy rules were successfully synced (alpha)
Shown as second
kubeproxy.sync_proxy.rules.latency.count
(gauge)
SyncProxyRules latency count (alpha)
kubeproxy.sync_proxy.rules.latency.sum
(gauge)
SyncProxyRules latency sum (alpha)
Shown as microsecond
kubeproxy.sync_proxy.rules.service_changes.pending
(gauge)
Pending proxy rules Service changes (alpha)
kubeproxy.sync_proxy.rules.service_changes.total
(gauge)
Cumulative proxy rules Service changes (alpha)

Events

Kube Proxy does not include any events.

Service Checks

kubeproxy.up

Returns CRITICAL if Kube Proxy is not healthy.

Statuses: ok, critical

Troubleshooting

Need help? Contact Datadog support.