Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for Kubernetes
  • Сопоставление с другими сервисами Yandex Cloud
  • Начало работы
    • Все инструкции
    • Подключение к узлу по SSH
    • Подключение к узлу через OS Login
    • Обновление Kubernetes
    • Настройка автомасштабирования
      • Основы работы с Cloud Marketplace
      • Установка Argo CD
      • Установка Chaos Mesh
      • Установка cert-manager c плагином Cloud DNS ACME webhook
      • Установка Container Storage Interface для S3
      • Установка Crossplane
      • Установка External Secrets Operator
      • Установка ExternalDNS c плагином для Cloud DNS
      • Установка Falco
      • Установка Filebeat OSS
      • Установка Fluent Bit
      • Установка Gatekeeper
      • Установка Gateway API
      • Установка GitLab Agent
      • Установка GitLab Runner
      • Установка HashiCorp Vault
      • Установка Ingress NGINX
      • Установка Ingress-контроллера Application Load Balancer
      • Обновление Ingress-контроллера Application Load Balancer
      • Установка Istio
      • Установка Jaeger
      • Установка Kruise
      • Установка Kyverno & Kyverno Policies
      • Установка Loki
      • Установка Metrics Provider
      • Установка NodeLocal DNS
      • Установка Policy Reporter
      • Установка Prometheus Operator
      • Установка Thumbor
      • Установка Velero
    • Подключение внешних узлов к кластеру
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

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

  • Перед началом работы
  • Установка с помощью Yandex Cloud Marketplace
  • Установка с помощью Helm-чарта
  • Примеры использования
  • См. также
  1. Пошаговые инструкции
  2. Установка приложений из Cloud Marketplace
  3. Установка Ingress-контроллера Application Load Balancer

Установка Ingress-контроллера Application Load Balancer

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 апреля 2025 г.
  • Перед началом работы
  • Установка с помощью Yandex Cloud Marketplace
  • Установка с помощью Helm-чарта
  • Примеры использования
  • См. также

Для балансировки нагрузки и распределения трафика между приложениями Kubernetes используйте Ingress-контроллер Yandex Application Load Balancer. Он запускает L7-балансировщик и необходимые вспомогательные ресурсы, когда пользователь создает ресурс Ingress в кластере Managed Service for Kubernetes.

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

  1. Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

    По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  2. Убедитесь, что группы безопасности для кластера Managed Service for Kubernetes и его групп узлов настроены корректно. Если отсутствует какое-либо из правил — добавьте его.

    Также убедитесь, что настроены группы безопасности, необходимые для работы Application Load Balancer.

    Важно

    От настройки групп безопасности зависит работоспособность и доступность кластера, а также запущенных в нем сервисов и приложений.

  3. Создайте сервисный аккаунт, необходимый для работы Ingress-контроллера, и назначьте ему роли на каталог:

    • alb.editor — для создания необходимых ресурсов Application Load Balancer.
    • vpc.publicAdmin — для управления внешней сетевой связностью.
    • certificate-manager.certificates.downloader — для работы с сертификатами, зарегистрированными в сервисе Yandex Certificate Manager.
    • compute.viewer — для использования узлов кластера Managed Service for Kubernetes в целевых группах L7-балансировщика.
    • smart-web-security.editor — (опционально) для подключения к виртуальному хосту L7-балансировщика профиля безопасности Yandex Smart Web Security.
  4. Создайте авторизованный ключ доступа для сервисного аккаунта в формате JSON и сохраните его в файл sa-key.json:

    yc iam key create \
      --service-account-name <имя_сервисного_аккаунта_для_Ingress-контроллера> \
      --output sa-key.json
    

Установка с помощью Yandex Cloud MarketplaceУстановка с помощью Yandex Cloud Marketplace

  1. Перейдите на страницу каталога и выберите сервис Managed Service for Kubernetes.

  2. Нажмите на имя нужного кластера и выберите вкладку Marketplace.

  3. В разделе Доступные для установки приложения выберите ALB Ingress Controller и нажмите кнопку Перейти к установке.

  4. Задайте настройки приложения:

    • Пространство имен — создайте новое пространство имен (например, alb-ingress-controller-space). Если вы оставите пространство имен по умолчанию, ALB Ingress Controller может работать некорректно.

    • Название приложения — укажите название приложения.

    • Идентификатор каталога — укажите идентификатор каталога.

    • Идентификатор кластера — укажите идентификатор кластера.

    • Ключ сервисного аккаунта — вставьте содержимое файла sa-key.json.

    • Включить проверки работоспособности по умолчанию — выберите опцию, чтобы в сети группы узлов установить ресурс DaemonSet для проверок состояния приложений.

      Ресурс добавляет поды с агентами мониторинга трафика на каждый узел. В результате изоляция узлов и пространств имен не влияет на мониторинг, поэтому информация о мониторинге трафика точная. DaemonSet добавляет или убирает агенты мониторинга в зависимости от того, увеличивается или уменьшается число узлов в кластере.

      Если вам не нужны проверки работоспособности кластера или вы используете свои, опцию можно не включать. Подробнее о настройке проверок вручную см. в разделе Проверка состояния приложений в кластере Yandex Managed Service for Kubernetes с помощью L7-балансировщика Yandex Application Load Balancer.

  5. Нажмите кнопку Установить.

  6. Дождитесь перехода приложения в статус Deployed.

Установка с помощью Helm-чартаУстановка с помощью Helm-чарта

  1. Установите менеджер пакетов Helm версии не ниже 3.8.0.

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

  3. Установите утилиту jq для потоковой обработки JSON-файлов:

    sudo apt update && sudo apt install jq
    
  4. Для установки Helm-чарта с Ingress-контроллером выполните команду:

    cat sa-key.json | helm registry login cr.yandex --username 'json_key' --password-stdin && \
    helm pull oci://cr.yandex/yc-marketplace/yandex-cloud/yc-alb-ingress/yc-alb-ingress-controller-chart \
      --version v0.2.23 \
      --untar && \
    helm install \
      --namespace <пространство_имен> \
      --create-namespace \
      --set folderId=<идентификатор_каталога> \
      --set clusterId=<идентификатор_кластера> \
      --set enableDefaultHealthChecks=<true_или_false> \
      --set-file saKeySecretKey=sa-key.json \
      yc-alb-ingress-controller ./yc-alb-ingress-controller-chart/
    

    Примечание

    Если вы используете версию Helm ниже 3.8.0, добавьте в начало команды строку export HELM_EXPERIMENTAL_OCI=1 && \, чтобы включить поддержку Open Container Initiative (OCI) в клиенте Helm.

    Если вы укажете в параметре namespace пространство имен по умолчанию, ALB Ingress Controller может работать некорректно. Рекомендуем указывать значение, отличное от всех существующих пространств имен (например, alb-ingress-controller-space).

    Параметр enableDefaultHealthChecks включает проверки состояния приложений в кластере. Для этого Ingress-контроллер устанавливает ресурс DaemonSet в сети группы узлов.

    Ресурс добавляет поды с агентами мониторинга трафика на каждый узел. В результате изоляция узлов и пространств имен не влияет на мониторинг, поэтому информация о мониторинге трафика точная. DaemonSet добавляет или убирает агенты мониторинга в зависимости от того, увеличивается или уменьшается число узлов в кластере.

    Если вам не нужны проверки работоспособности кластера или вы используете свои, опцию можно не включать. Подробнее о настройке проверок вручную см. в разделе Проверка состояния приложений в кластере Yandex Managed Service for Kubernetes с помощью L7-балансировщика Yandex Application Load Balancer.

Примеры использованияПримеры использования

  • Практическое руководство по настройке Ingress-контроллера Application Load Balancer.
  • Практическое руководство по настройке логирования для Ingress-контроллеров Application Load Balancer.

См. такжеСм. также

  • Описание Ingress-контроллеров в документации:
    • Kubernetes.
    • Application Load Balancer.
  • Ограничения при обновлении ALB Ingress Controller.

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

Предыдущая
Установка Ingress NGINX
Следующая
Обновление Ingress-контроллера Application Load Balancer
Проект Яндекса
© 2025 ООО «Яндекс.Облако»