helm-charts

Netprobe Chart

This repository is now deprecated. The latest charts are available on our new Helm repository https://helm.itrsgroup.com.

Prerequisites

Kubernetes RBAC Requirements

The netprobe runs using a service account that requires certain RBAC permissions in order to collect metrics. The service account, roles and role bindings are automatically created during installation; however it is possible to disable the automatic creation and supply your own service account and roles. Refer to the chart values for more details.

The chart will create these roles:

Examples

The following examples show chart configurations for various deployment scenarios. To see a complete list of configuration options, run helm show values itrs/netprobe.

Before installing, it is necessary to create a Docker secret for the ITRS Docker Registry.

DaemonSet Installation

Install as a DaemonSet with full metrics, events and log collection in all namespaces.

cluster: myCluster

gateway:
  host: "10.1.1.1"
  port: 7039

netprobe:
  resources:
    limits:
      cpu: "1"
      memory: "1Gi"
    requests:
      cpu: "500m"
      memory: "768Mi"  
  
agent:
  resources:
    limits:
      cpu: "1"
      memory: "1Gi"
    requests:
      cpu: "500m"
      memory: "768Mi"

Non-DaemonSet Installation

Install as a Deployment with metrics and events collection only. Log collection is not supported in this mode.

mode: Deployment
cluster: myCluster

gateway:
  host: "10.1.1.1"
  port: 7039

netprobe:
  resources:
    limits:
      cpu: "1"
      memory: "1Gi"
    requests:
      cpu: "500m"
      memory: "768Mi"  
  
agent:
  resources:
    limits:
      cpu: "1"
      memory: "1Gi"
    requests:
      cpu: "500m"
      memory: "768Mi"

Collect Metrics for Specific Namespace(s)

Same as above, but restrict collection to specific namespaces.

mode: Deployment
cluster: myCluster

gateway:
  host: "10.1.1.1"
  port: 7039

metrics:
  namespaces:
  - ns1
  - ns2

netprobe:
  resources:
    limits:
      cpu: "1"
      memory: "1Gi"
    requests:
      cpu: "500m"
      memory: "768Mi"  
  
agent:
  resources:
    limits:
      cpu: "1"
      memory: "1Gi"
    requests:
      cpu: "500m"
      memory: "768Mi"

It is possible to use a Helm template value to dynamically configure the namespace:

metrics:
  namespaces:
  - "{{ .Release.Namespace }}"

To exclude metrics that are not part of any namespace (e.g. node metrics):

metrics:
  excludeNonNamespaced: true