Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.nebius.com/llms.txt

Use this file to discover all available pages before exploring further.

Nebius Observability Agent for Kubernetes is a Helm chart developed and maintained by Nebius AI Cloud, specifically designed for Managed Service for Kubernetes® clusters. Nebius Observability Agent for Kubernetes provides:
  • Out-of-the-box metrics collection with minimal configuration
  • Built-in metric enrichment (e.g., adds cluster ID and other metadata)
  • High reliability and tight integration with Nebius AI Cloud
  • Unified observability agent that can collect logs, metrics and traces

Installation

Basic installation

  1. Connect to your Managed Service for Kubernetes cluster.
  2. Install the Nebius Observability Agent for Kubernetes:
    helm install nebius-observability-agent oci://cr.nebius.cloud/observability/public/nebius-observability-agent-helm \
      --version $(curl https://nebius-observability-agent.storage.eu-north1.nebius.cloud/nebius-observability-agent-helm/latest-release) \
      --namespace observability --create-namespace
    
    To use a specific agent version, change the --version value, for example:
    helm install nebius-observability-agent oci://cr.nebius.cloud/observability/public/nebius-observability-agent-helm \
      --version 1.0.4 \
      --namespace observability --create-namespace
    
  3. Check the installation:
    kubectl get pods --namespace observability
    

Installation with custom configuration

To customize the agent configuration, create a values.yaml file and install the agent with custom settings:
helm install nebius-observability-agent oci://cr.nebius.cloud/observability/public/nebius-observability-agent-helm \
  --version $(curl https://nebius-observability-agent.storage.eu-north1.nebius.cloud/nebius-observability-agent-helm/latest-release) \
  --namespace observability --create-namespace \
  --values values.yaml

Configuration

Basic configuration

You can customize the Nebius Observability Agent for Kubernetes behavior by creating a values.yaml file:
config:
  logs:
    enabled: true
    collectAgentLogs: false
    excludedNamespaces:
      - kube-system

  metrics:
    enabled: true
    collectAgentMetrics: false
    collectK8sClusterMetrics: false

Configuration parameters

Log collection settings

  • config.logs.enabled: Enable or disable log collection. Default: true.
  • config.logs.collectAgentLogs: Parameter to collect logs from the Nebius Observability Agent for Kubernetes itself. Default: false.
  • config.logs.excludedNamespaces: List of namespaces to exclude from log collection.

Metrics collection settings

  • config.metrics.enabled: Enable or disable metrics collection. Default: true.
  • config.metrics.collectAgentMetrics: Parameter to collect metrics from the Nebius Observability Agent for Kubernetes itself. Default: false.
  • config.metrics.collectK8sClusterMetrics: Parameter to collect Kubernetes cluster-level metrics. Default: false.
  • config.metrics.excludedNamespaces: List of namespaces to exclude from metrics collection.

Traces collection settings

  • config.traces.enabled: Enable or disable trace collection. Default: true.
When traces are enabled, the agent exposes an OTLP endpoint for receiving traces from your applications:
nebius-observability-agent.<namespace>.svc.cluster.local:4317
Where <namespace> is the namespace where the agent is installed (e.g., observability).

Full observability configuration

To collect logs, metrics and traces, configure the values.yaml file in the following way:
config:
  logs:
    enabled: true
    collectAgentLogs: false
    excludedNamespaces:
      - kube-system

  metrics:
    enabled: true
    collectAgentMetrics: false
    collectK8sClusterMetrics: false

  traces:
    enabled: true

Logs-only configuration

To collect only logs, configure the values.yaml file in the following way:
config:
  logs:
    enabled: true
    collectAgentLogs: false
    excludedNamespaces:
      - kube-system

  metrics:
    enabled: false

Metrics-only configuration

To collect only metrics, configure the values.yaml file in the following way:
config:
  logs:
    enabled: false

  metrics:
    enabled: true
    collectAgentMetrics: false
    collectK8sClusterMetrics: false

Combined logs and metrics configuration

To collect both logs and metrics, configure the values.yaml file in the following way:
config:
  logs:
    enabled: true
    collectAgentLogs: false
    excludedNamespaces:
      - kube-system

  metrics:
    enabled: true
    collectAgentMetrics: false
    collectK8sClusterMetrics: false

Traces-only configuration

To collect only traces, configure the values.yaml file in the following way:
config:
  logs:
    enabled: false

  metrics:
    enabled: false

  traces:
    enabled: true

Namespace exclusions

By default, the agent excludes the kube-system namespace to avoid collecting system-level logs and metrics. You can exclude additional namespaces by adding them to the excludedNamespaces list:
config:
  logs:
    excludedNamespaces:
      - kube-system
      - monitoring
      - cert-manager
      - istio-system

  metrics:
    excludedNamespaces:
      - kube-system
      - monitoring
      - cert-manager
      - istio-system

Updating the agent

To update the Nebius Observability Agent for Kubernetes to a newer version, use the following command:
helm upgrade nebius-observability-agent oci://cr.nebius.cloud/observability/public/nebius-observability-agent-helm \
  --version $(curl https://nebius-observability-agent.storage.eu-north1.nebius.cloud/nebius-observability-agent-helm/latest-release) \
  --namespace observability \
  --values values.yaml

Uninstalling the agent

To remove the Nebius Observability Agent for Kubernetes, use the following command:
helm uninstall nebius-observability-agent --namespace observability

Troubleshooting

If you encounter issues with the agent:
  1. Check the agent pod status:
    kubectl get pods --namespace observability
    kubectl describe pod <Pod_name> --namespace observability
    
  2. View agent logs:
    kubectl logs <Pod_name> --namespace observability
    
  3. Verify the configuration:
    helm get values nebius-observability-agent --namespace observability
    

See also