k8s_kubeproxy

package
v0.40.0 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2022 License: GPL-3.0 Imports: 7 Imported by: 1

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.

Charts

It produces the following charts:

  • Sync Proxy Rules in events/s
  • Sync Proxy Rules Latency in observes/s
  • Sync Proxy Rules Latency Percentage in %
  • REST Client HTTP Requests By Status Code in requests/s
  • REST Client HTTP Requests By Method in requests/s
  • HTTP Requests Duration in 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