k8s_kubeproxy

package
v0.0.0-...-6ade924 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 8, 2022 License: GPL-3.0 Imports: 7 Imported by: 0

README

Kube-proxy monitoring with Netdata

Kube-proxy is a network proxy that runs on each node in your cluster, implementing part of the Kubernetes Service.

This module will monitor one or more kube-proxy instances, depending on your configuration.

Metrics

All metrics have "k8s_kubeproxy." prefix.

Metric Scope Dimensions Units
kubeproxy_sync_proxy_rules global sync_proxy_rules events/s
kubeproxy_sync_proxy_rules_latency_microsecond global 0.001, 0.002, 0.004, 0.008, 0.016, 0.032, 0.064, 0.128, 0.256, 0.512, 1.024, 2.048, 4.096, 8.192, 16.384, +Inf observes/s
kubeproxy_sync_proxy_rules_latency global 0.001, 0.002, 0.004, 0.008, 0.016, 0.032, 0.064, 0.128, 0.256, 0.512, 1.024, 2.048, 4.096, 8.192, 16.384, +Inf percentage
rest_client_requests_by_code global a dimension per HTTP status code requests/s
rest_client_requests_by_method global a dimension per HTTP method requests/s
http_request_duration global 0.5, 0.9, 0.99 microseconds

Configuration

Edit the go.d/k8s_kubeproxy.conf configuration file using edit-config from the Netdata config directory, which is typically at /etc/netdata.

cd /etc/netdata # Replace this path with your Netdata config directory
sudo ./edit-config go.d/k8s_kubeproxy.conf

Needs only url to kube-proxy metric-address. Here is an example for several instances:

jobs:
  - name: local
    url: http://127.0.0.1:10249/metrics

  - name: remote
    url: http://203.0.113.1:10249/metrics

For all available options please see module configuration file.

Troubleshooting

To troubleshoot issues with the k8s_kubeproxy collector, run the go.d.plugin with the debug option enabled. The output should give you clues as to why the collector isn't working.

  • Navigate to the plugins.d directory, usually at /usr/libexec/netdata/plugins.d/. If that's not the case on your system, open netdata.conf and look for the plugins setting under [directories].

    cd /usr/libexec/netdata/plugins.d/
    
  • Switch to the netdata user.

    sudo -u netdata -s
    
  • Run the go.d.plugin to debug the collector:

    ./go.d.plugin -d -m k8s_kubeproxy
    

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Charts

type Charts = module.Charts

Charts is an alias for module.Charts

type Config

type Config struct {
	web.HTTP `yaml:",inline"`
}

Config is the KubeProxy module configuration.

type Dim

type Dim = module.Dim

Dim is an alias for module.Dim

type Dims

type Dims = module.Dims

Dims is an alias for module.Dims

type KubeProxy

type KubeProxy struct {
	module.Base
	Config `yaml:",inline"`
	// contains filtered or unexported fields
}

KubeProxy is KubeProxy module.

func New

func New() *KubeProxy

New creates KubeProxy with default values.

func (KubeProxy) Charts

func (kp KubeProxy) Charts() *Charts

Charts creates Charts.

func (*KubeProxy) Check

func (kp *KubeProxy) Check() bool

Check makes check.

func (KubeProxy) Cleanup

func (KubeProxy) Cleanup()

Cleanup makes cleanup.

func (*KubeProxy) Collect

func (kp *KubeProxy) Collect() map[string]int64

Collect collects metrics.

func (*KubeProxy) Init

func (kp *KubeProxy) Init() bool

Init makes initialization.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL