Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for Kubernetes
  • Сопоставление с другими сервисами Yandex Cloud
  • Начало работы
    • Все инструкции
    • Подключение к узлу по SSH
    • Подключение к узлу через OS Login
    • Обновление Kubernetes
    • Настройка автомасштабирования
    • Подключение Terraform-провайдера Kubernetes
    • Установка приложений из Yandex Cloud Marketplace с помощью Terraform
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

В этой статье:

  • Перед началом работы
  • Подключение провайдера
  • Установка приложений с помощью Terraform
  1. Пошаговые инструкции
  2. Установка приложений из Yandex Cloud Marketplace с помощью Terraform

Установка приложений из Yandex Cloud Marketplace с помощью Terraform

Статья создана
Yandex Cloud
Обновлена 13 октября 2025 г.
  • Перед началом работы
  • Подключение провайдера
  • Установка приложений с помощью Terraform

Terraform-провайдер Helm позволяет устанавливать в кластер Yandex Managed Service for Kubernetes приложения из Cloud Marketplace и любые другие helm-чарты с помощью манифестов Terraform.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform.

Перед началом работыПеред началом работы

  1. Создайте кластер Managed Service for Kubernetes любым удобным способом.

  2. Установите kubectl и настройте его на работу с созданным кластером.

Подключение провайдераПодключение провайдера

  1. В отдельной директории создайте файл provider.tf с настройками провайдера Helm:

    terraform {
      required_providers {
        helm = {
          source  = "hashicorp/helm"
          version = "~> 2.13"
        }
      }
      required_version = ">= 1.4.0"
    }
    
    provider "helm" {
      kubernetes {
        config_path = "~/.kube/config"
        config_context = "<имя_контекста>"
      }
    }
    

    Получить список всех контекстов можно с помощью команды kubectl config get-contexts, узнать текущий контекст — с помощью команды kubectl config current-context.

  2. Инициализируйте провайдер Helm:

    terraform init
    

Установка приложений с помощью TerraformУстановка приложений с помощью Terraform

Для установки приложений используется ресурс Terraform helm_release.

В качестве примера рассматривается установка приложения GitLab Runner.

  1. В директории, где находится файл provider.tf, создайте файл gitlab-runner.tf:

    resource "helm_release" "gitlab_runner" {
      name             = "gitlab-runner"
      chart            = "oci://cr.yandex/yc-marketplace/yandex-cloud/gitlab-org/gitlab-runner/chart/gitlab-runner"
      version          = "0.54.0-8"
      namespace        = "gitlab-runner"
      create_namespace = true
    
    
      values = [yamlencode({
        gitlabDomain            = "https://***.gitlab.yandexcloud.net"
        runnerRegistrationToken = "<регистрационный_токен>"
    
        replicas     = 2
        nodeSelector = { nodepool = "runners" }
        resources = {
          requests = { cpu = "200m", memory = "256Mi" }
          limits   = { cpu = "500m", memory = "512Mi" }
        }
      })]
    }
    

    Где:

    • name — название приложения.

    • chart — ссылка на Helm-чарт.

    • version — версия приложения.

    • namespace — новое пространство имен, в котором будет установлено приложение. Если вы укажете пространство имен по умолчанию, GitLab Runner может работать некорректно.

    • values — параметры из конфигурационного файла values.yaml Helm-чарта:

      • gitlabDomain — домен инстанса GitLab.
      • runnerRegistrationToken — регистрационный токен. Подробнее о получении токена.
      • replicas — количество подов приложения.
      • nodeSelector — назначение подов узлам с меткой nodepool = "runners".
      • resources — минимальное и максимальное количество ресурсов, которые будут выделены приложению.

    Запросить список всех параметров из values.yaml можно с помощью команды:

    helm show values <ссылка_на_Helm-чарт> --version <версия_приложения>
    
  2. Установите приложение:

    1. Посмотрите планируемые изменения:

      terraform plan
      
    2. Если изменения устраивают, примените их:

      terraform apply
      

Совет

Для установки приложений из Cloud Marketplace также можно использовать модуль Terraform от Yandex Cloud.

Подробнее о работе с модулями.

Была ли статья полезна?

Предыдущая
Подключение Terraform-провайдера Kubernetes
Следующая
Обзор способов подключения
Проект Яндекса
© 2025 ООО «Яндекс.Облако»