Yandex Cloud
  • Сервисы
  • Решения
  • Почему Yandex Cloud
  • Сообщество
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Language / Region
Проект Яндекса
© 2023 ООО «Яндекс.Облако»
Yandex Managed Service for Kubernetes
  • Сопоставление с другими сервисами Yandex Cloud
  • Начало работы
  • Пошаговые инструкции
    • Все инструкции
    • Подключение к узлу по SSH
    • Обновление Kubernetes
    • Настройка автомасштабирования
    • Подключение к кластеру
      • Обзор способов подключения
      • Настройка групп безопасности
      • Создание статического файла конфигурации
    • Установка приложений из Cloud Marketplace
      • Основы работы с Cloud Marketplace
      • Установка Argo CD
      • Установка Container Storage Interface для S3
      • Установка Crossplane
      • Установка External Secrets Operator
      • Установка Falco
      • Установка Filebeat
      • Установка Fluent Bit
      • Установка Gateway API
      • Установка GitLab Agent
      • Установка GitLab Runner
      • Установка HashiCorp Vault
      • Установка Ingress-контроллера Application Load Balancer
      • Установка Jaeger
      • Установка Kyverno & Kyverno Policies
      • Установка Loki
      • Установка Metrics Provider
      • Установка NodeLocal DNS
      • Установка Policy Reporter
      • Установка Thumbor
    • Сетевые сценарии
      • Обеспечение доступа к приложению, запущенному в кластере Kubernetes
      • Настройка контроллера сетевых политик Calico
      • Настройка контроллера сетевых политик Cilium
      • Настройка NodeLocal DNS для контроллера сетевых политик Cilium
    • Работа с постоянными томами
      • Динамическая подготовка тома
      • Статическая подготовка тома
      • Управление классами хранилищ
      • Увеличение размера тома для подов
      • Увеличение размера тома для контроллера StatefulSet
      • Подключение тома в блочном режиме
      • Интеграция с Object Storage
    • Управление кластером Kubernetes
      • Получение информации о кластере Kubernetes
      • Создание кластера Kubernetes
      • Изменение кластера Kubernetes
      • Создание пространства имен в кластере Kubernetes
      • Удаление кластера Kubernetes
    • Управление группой узлов
      • Информация об имеющихся группах узлов
      • Создание группы узлов
      • Подключение к узлу по SSH
      • Настройка автомасштабирования
      • Изменение группы узлов
      • Управление метками узлов кластера Kubernetes
      • Удаление группы узлов
    • Подключение внешних узлов к кластеру
  • Практические руководства
    • Все руководства
    • Создание нового Kubernetes-проекта в Yandex Cloud
    • Интеграция с Container Registry
    • Подпись и проверка Docker-образов Container Registry
    • Сканирование уязвимостей Container Registry при непрерывном развертывании приложений с помощью GitLab
    • Запуск рабочих нагрузок с GPU
    • Установка Ingress-контроллера NGINX с Let's Encrypt®
    • Установка Ingress-контроллера NGINX с сертификатом из Certificate Manager
    • Резервное копирование в Object Storage
    • Горизонтальное масштабирование приложения в кластере
    • Вертикальное масштабирование приложения в кластере
    • Развертывание и нагрузочное тестирование gRPC-сервиса с масштабированием
    • Работа со снапшотами
    • Интеграция с корпоративной зоной DNS
    • Автоматическое масштабирование DNS по размеру кластера
    • Настройка локального кеширования DNS
    • Проверка DNS Challenge для сертификатов Let's Encrypt®
    • Мониторинг кластера с помощью Prometheus и Grafana
    • Непрерывное развертывание контейнеризованных приложений с помощью GitLab
    • Изменение параметров сервера метрик (Metrics Server)
    • Использование продуктов Cloud Marketplace
      • Интеграция с Argo CD
      • Интеграция с Crossplane
      • Синхронизация с секретами Yandex Lockbox
      • Настройка Fluent Bit для работы с Cloud Logging
      • Настройка Gateway API
      • Настройка Application Load Balancer Ingress-контроллера
      • Использование Jaeger для трассировки запросов в Managed Service for YDB
      • Настройка Kyverno & Kyverno Policies
      • Использование Metrics Provider для трансляции метрик
  • Концепции
    • Взаимосвязь ресурсов сервиса
    • Релизные каналы и обновления
    • Шифрование секретов
    • Использование объектов API Kubernetes
      • Том
      • Сервис
    • Группа узлов
      • Автоматическое масштабирование группы узлов
      • Расселение подов с узла
      • Динамическое резервирование ресурсов для узла
      • Группы узлов с GPU
    • Сеть в Managed Service for Kubernetes
    • Внешние узлы кластера
    • Сетевые настройки и политики кластера
    • Автоматическое масштабирование
    • Квоты и лимиты
    • Рекомендации по использованию Managed Service for Kubernetes
  • Управление доступом
  • Правила тарификации
  • Справочник API
    • Аутентификация в API
    • gRPC (англ.)
      • Overview
      • ClusterService
      • NodeGroupService
      • VersionService
      • OperationService
    • REST (англ.)
      • Overview
      • Cluster
        • Overview
        • create
        • delete
        • get
        • list
        • listNodeGroups
        • listNodes
        • listOperations
        • start
        • stop
        • update
      • NodeGroup
        • Overview
        • create
        • delete
        • get
        • list
        • listNodes
        • listOperations
        • update
      • Version
        • Overview
        • list
  • Вопросы и ответы
    • Общие вопросы
    • Хранилище данных
    • Настройка и обновление
    • Автоматическое масштабирование
    • Ресурсы
    • Логи
    • Все вопросы на одной странице
  1. Пошаговые инструкции
  2. Установка приложений из Cloud Marketplace
  3. Установка Thumbor

Установка Thumbor

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

Thumbor — проект с открытым исходным кодом, предназначенный для обработки изображений по запросу. Thumbor работает как HTTP-сервис и выполняет такие преобразования как обрезка изображений, масштабирование, наложение фильтров и многие другие.

Возможности Thumbor:

  • Поддержка всех популярных форматов изображений.
  • Умная обрезка и масштабирование.
  • Ускорение обработки изображений за счет кэширования.
  • Поддержка различных типов хранилищ (локальный диск, Yandex Object Storage и другие).
  • Распознавание лиц и предметов (очки, особенности внешности) на базе технологии компьютерного зрения.
  • Интеграция с различными языками программирования.

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

  1. Создайте бакет в Object Storage.

  2. Загрузите изображения в бакет.

  3. Создайте сервисный аккаунт, необходимый для работы Thumbor.

  4. Создайте для него статический ключ и сохраните в файл sa-key.json:

    yc iam access-key create \
      --service-account-name <имя сервисного аккаунта для Thumbor> \
      --format json > sa-key.json
    
  5. Задайте права доступа на чтение объектов бакета для сервисного аккаунта.

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

  1. Перейдите на страницу каталога и выберите сервис Managed Service for Kubernetes.
  2. Нажмите на имя нужного кластера Kubernetes и выберите вкладку Marketplace.
  3. В разделе Доступные для установки приложения выберите Thumbor и нажмите кнопку Использовать.
  4. Задайте настройки приложения:
    • Пространство имен — выберите пространство имен для Thumbor или создайте новое.
    • Название приложения — укажите название приложения.
    • Имя бакета — укажите имя бакета, созданного ранее.
    • Статический ключ для доступа к Object Storage — вставьте содержимое файла sa-key.json.
    • (опционально) Ключ безопасности — укажите ключ безопасности для подписывания URL.
    • Разрешить URL без подписи (unsafe) — выберите эту опцию, если вы не указывали ключ безопасности на предыдущем шаге.
    • Подкаталог в бакете — укажите имя каталога в бакете (без завершающего символа /), в котором находятся изображения.
  5. Нажмите кнопку Установить.
  6. Дождитесь перехода приложения в статус Deployed.

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

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

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

  3. Для установки Helm-чарта с Thumbor выполните команду:

    URL без подписи разрешены
    URL без подписи запрещены
    export HELM_EXPERIMENTAL_OCI=1 && \
    helm pull oci://cr.yandex/yc-marketplace/yandex-cloud/thumbor/thumbor/chart/thumbor \
      --version <версия Helm-чарта> \
      --untar && \
    helm install \
      --namespace <пространство имен для Thumbor> \
      --create-namespace \
      --set bucket_name='<имя бакета Object Storage>' \
      --set allow_unsafe_url='true' \
      --set root_path='<имя подкаталога в бакете>' \
      --set-file saAccessKeyFile='sa-key.json' \
     thumbor ./thumbor
    
    export HELM_EXPERIMENTAL_OCI=1 && \
    helm pull oci://cr.yandex/yc-marketplace/yandex-cloud/thumbor/thumbor/chart/thumbor \
      --version <версия Helm-чарта> \
      --untar && \
    helm install \
      --namespace <пространство имен для Thumbor> \
      --create-namespace \
      --set bucket_name='<имя бакета Object Storage>' \
      --set allow_unsafe_url='false' \
      --set security_key='<ключ безопасности для подписывания URL>' \
      --set root_path='<имя подкаталога в бакете>' \
      --set-file saAccessKeyFile='sa-key.json' \
     thumbor ./thumbor
    

    Актуальную версию Helm-чарта можно посмотреть на странице приложения.

Получение доступа к приложению

После установки приложения будет автоматически развернут сетевой балансировщик нагрузки Yandex Network Load Balancer. Доступ к приложению осуществляется по протоколу HTTP.

Примечание

Перед использованием приложения убедитесь, что для вашего кластера настроены корректные правила для подключения к сервисам из интернета.

Консоль управления
CLI
  1. Перейдите на страницу каталога и выберите сервис Network Load Balancer.
  2. Узнайте IP-адрес для балансировщика с описанием cluster <имя вашего кластера>, service <пространство имен>/thumbor.
  3. В адресной строке браузера откройте ссылку http://<IP-адрес балансировщика>/unsafe/<имя изображения в бакете>.
  1. Узнайте IP-адрес балансировщика с помощью команды:

    kubectl get svc \
      --namespace <пространство имен> \
      --output jsonpath='{.status.loadBalancer.ingress[0].ip}' thumbor
    
  2. В адресной строке браузера откройте ссылку http://<IP-адрес балансировщика>/unsafe/<имя изображения в бакете>.

Подробнее о работе с изображениями см. в документации Thumbor.

См. также

  • Документация Thumbor
  • Документация Object Storage
  • Документация Network Load Balancer

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

Language / Region
Проект Яндекса
© 2023 ООО «Яндекс.Облако»
В этой статье:
  • Перед началом работы
  • Установка с помощью Yandex Cloud Marketplace
  • Установка с помощью Helm-чарта
  • Получение доступа к приложению
  • См. также