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.