Yandex Cloud
Search
Contact UsGet started
  • Blog
  • Pricing
  • Documentation
  • All Services
  • System Status
    • Featured
    • Infrastructure & Network
    • Data Platform
    • Containers
    • Developer tools
    • Serverless
    • Security
    • Monitoring & Resources
    • ML & AI
    • Business tools
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Customer Stories
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Education and Science
    • Yandex Cloud Partner program
  • Blog
  • Pricing
  • Documentation
© 2025 Direct Cursus Technology L.L.C.
Yandex Managed Service for Kubernetes
  • Comparison with other Yandex Cloud services
  • Getting started
    • All guides
    • Connecting to a node over SSH
    • Connecting to a node via OS Login
    • Updating Kubernetes
    • Configuring autoscaling
      • Getting started with Cloud Marketplace
      • Installing Argo CD
      • Installing Chaos Mesh
      • Installing cert-manager with the Cloud DNS ACME webhook plugin
      • Installing Container Storage Interface for S3
      • Installing Crossplane
      • Installing External Secrets Operator
      • Installing ExternalDNS with a plugin for Cloud DNS
      • Installing Falco
      • Installing Filebeat OSS
      • Installing Fluent Bit
      • Installing Gatekeeper
      • Installing Gateway API
      • Installing the GitLab Agent
      • Installing GitLab Runner
      • Installing HashiCorp Vault
      • Installing Ingress NGINX
      • Installing the Application Load Balancer Ingress controller
      • Upgrading the Application Load Balancer Ingress controller
      • Installing Istio
      • Installing Jaeger
      • Installing Kruise
      • Installing Kyverno & Kyverno Policies
      • Installing Loki
      • Installing Metrics Provider
      • Installing NodeLocal DNS
      • Installing Policy Reporter
      • Installing Prometheus Operator
      • Installing Thumbor
      • Installing Velero
    • Connecting external nodes to the cluster
  • Access management
  • Pricing policy
  • Terraform reference
  • Monitoring metrics
  • Audit Trails events
  • Release notes

In this article:

  • Getting started
  • Installation using Yandex Cloud Marketplace
  • Installation using a Helm chart
  • Use cases
  1. Step-by-step guides
  2. Installing apps from Cloud Marketplace
  3. Installing Metrics Provider

Installing Metrics Provider

Written by
Yandex Cloud
Improved by
Dmitry A.
Updated at May 5, 2025
  • Getting started
  • Installation using Yandex Cloud Marketplace
  • Installation using a Helm chart
  • Use cases

Metrics Provider streams metrics of Managed Service for Kubernetes cluster objects to monitoring systems and auto scaling systems. You can also stream metrics in the opposite direction. For example, cluster objects can receive metrics from Yandex Monitoring.

The provider transforms the request to collect external metrics from a Managed Service for Kubernetes cluster object into the required Monitoring format, and also performs the reverse transformation: from Monitoring to the cluster object.

Getting startedGetting started

  1. If you do not have the Yandex Cloud CLI yet, install and initialize it.

    The folder specified when creating the CLI profile is used by default. To change the default folder, use the yc config set folder-id <folder_ID> command. You can specify a different folder using the --folder-name or --folder-id parameter.

  2. Create a service account with the monitoring.viewer role.

  3. Create an authorized access key for the service account in JSON format and save it to the sa-key.json file:

    yc iam key create \
      --service-account-name=<service_account_name> \
      --output=sa-key.json
    
  4. Make sure that the security groups for the Managed Service for Kubernetes cluster and its node groups are configured correctly. If any rule is missing, add it.

    Warning

    The configuration of security groups determines the performance and availability of the cluster and the services and applications running in it.

Installation using Yandex Cloud MarketplaceInstallation using Yandex Cloud Marketplace

  1. Go to the folder page and select Managed Service for Kubernetes.
  2. Click the name of the Managed Service for Kubernetes cluster you need and select the Marketplace tab.
  3. Under Application available for installation, select Metrics Provider and click Go to install.
  4. Configure the application:
    • Namespace: Create a new namespace, e.g., metrics-provider-space. If you leave the default namespace, Metrics Provider may work incorrectly.

    • Application name: Specify the application name.

    • Folder ID: Specify the ID of the folder where Metrics Provider will run.

    • Time window: Specify the time window to collect metrics for (in DdHhMmSs format, e.g., 5d10h30m20s).

    • (Optional) Disable decimation: Select this option not to apply a data decimation function.

    • (Optional) Aggregation function: Select a data aggregation function. The default value is AVG.

    • (Optional) Data filling: Configure filling in missing data:

      • NULL: Returns null as the metric value and timestamp as the timestamp value. Default.
      • NONE: Returns no values.
      • PREVIOUS: Returns the value from the previous data point.
    • (Optional) Maximum number of points: Specify the maximum number of points that will be returned in response to a request. The value of this parameter must be greater than 10.

    • (Optional) Decimation time window: Specify a time window (grid) in milliseconds. It is used for decimation: points inside the window are combined into a single one using the aggregation function. The value of the parameter must be greater than 0.

      Note

      Select only one of the settings: either Maximum number of points or Decimation time window. Leave both the fields blank not to use either setting. For more information, see the API documentation.

    • Secret Key: Copy and paste the contents of the sa-key.json file or create a new service account access key. The service account must have the monitoring.viewer role.

  5. Click Install.
  6. Wait for the application to change its status to Deployed.

Installation using a Helm chartInstallation using a Helm chart

  1. Install Helm v3.8.0 or higher.

  2. Install kubect and configure it to work with the new cluster.

  3. Add a repository named metric-provider:

    cat sa-key.json | helm registry login cr.yandex --username 'json_key' --password-stdin && \
    helm pull oci://cr.yandex/yc-marketplace/yandex-cloud/metric-provider/chart/metric-provider \
      --version 0.1.13 \
      --untar
    

    If you set namespace to the default namespace, Metrics Provider may work incorrectly. We recommend you to specify a value different from all existing namespaces (e.g., metrics-provider-space).

    Note

    If you are using a Helm version below 3.8.0, append the export HELM_EXPERIMENTAL_OCI=1 && \ string to the command to enable Open Container Initiative (OCI) support in the Helm client.

  4. Set up and install Metrics Provider:

    helm install \
      --namespace <namespace> \
      --create-namespace \
      --set yandexMetrics.folderId=<folder_ID> \
      --set window=<time_window> \
      --set-file yandexMetrics.token.serviceAccountJson=<path_to_file_with_service_account_authorized_key> \
      --set yandexMetrics.downsampling.gridAggregation=<aggregation_function> \
      --set yandexMetrics.downsampling.gapFilling=<data_filling> \
      --set yandexMetrics.downsampling.maxPoints=<maximum_number_of_points> \
      --set yandexMetrics.downsampling.gridInterval=<decimation_time_window> \
      --set yandexMetrics.downsampling.disabled=<data_decimation_mode> \
      metric-provider ./metric-provider/
    

    Required parameters:

    • --namespace: Namespace where the provider will be deployed.
    • yandexMetrics.folderId: ID of the folder where the provider will run.
    • window: Specify the time window to collect metrics for (in DdHhMmSs format, e.g., 5d10h30m20s).
    • yandexMetrics.token.serviceAccountJson: Path to the file with the authorized key of the service account with the monitoring.viewer role.

    Decimation (downsampling) parameters. For the provider to work, you need to select at least one of the parameters below:

    • yandexMetrics.downsampling.gridAggregation: Data aggregation function. The default value is AVG.

    • yandexMetrics.downsampling.gapFilling: Settings for filling in missing data:

      • NULL: Returns null as the metric value and timestamp as the timestamp value.
      • NONE: Returns no values.
      • PREVIOUS: Returns the value from the previous data point.
    • yandexMetrics.downsampling.maxPoints: Maximum number of points to receive in response to a request. The value of this parameter must be greater than 10.

    • yandexMetrics.downsampling.gridInterval: Time window (grid) in milliseconds. It is used for decimation: points inside the window are combined into a single one using the aggregation function. The value of this parameter must be greater than 0.

    • yandexMetrics.downsampling.disabled: Disable data decimation. Possible values: true or false.

      Note

      Use only one of these parameters: yandexMetrics.downsampling.maxPoints, yandexMetrics.downsampling.gridInterval, or yandexMetrics.downsampling.disabled. For more information about decimation parameters, see the API documentation.

Use casesUse cases

  • Metrics Provider for Managed Service for Kubernetes autoscaling
  • Using Metrics Provider to stream metrics

Was the article helpful?

Previous
Installing Loki
Next
Installing NodeLocal DNS
© 2025 Direct Cursus Technology L.L.C.