𝕯𝖆𝖗𝖐🥰𝕬𝖓𝖌𝖊𝖑
МОДЕРАТОР
- Регистрация
- 7 Апр 2025
- Сообщения
- 10,778
- Реакции
- 81
Автор: Michael Guay
Название: Blue/Green деплой в Kubernetes с использованием Istio (2024)

Продолжительность: 0 ч 32 мин
Количество уроков: 1 Видео
Язык: Английский
Вес архива: 64 МБ
Blue/Green-деплой в Kubernetes — один из самых надёжных подходов к безопасным релизам. В этом материале вы узнаете, как использовать Istio для плавного переключения трафика между версиями приложения и минимизации рисков при обновлениях.
Что такое Blue/Green-деплой
Blue/Green — это стратегия развертывания, при которой одновременно существуют две версии приложения: Blue (текущая) и Green (новая). Переключение между ними выполняется мгновенно за счёт перенаправления трафика.
Преимущества подхода
• Минимизация простоев при релизах
• Мгновенный откат на предыдущую версию
• Прозрачное переключение для пользователей
• Возможность тестирования новой версии в продакшне
Роль Istio в реализации Blue/Green
Istio обеспечивает гибкое управление сетевым трафиком внутри кластера Kubernetes. Это позволяет задавать правила маршрутизации и направлять определённые проценты запросов на разные версии приложения.
Ключевые возможности Istio
• Маршрутизация трафика на уровне HTTP/L7
• Градиентное переключение между версиями
• Встроенные инструменты наблюдаемости и телеметрии
• Полная интеграция с Kubernetes без изменений в коде приложения
Настройка окружения для Blue/Green-деплоя
Перед началом работы необходимо подготовить кластер Kubernetes и установить Istio.
Установка Istio
Для установки можно использовать утилиту istioctl. После установки будут доступны компоненты для управления политиками трафика.
Развёртывание двух версий приложения
Создайте два Deployment и соответствующие Service с метками, по которым Istio будет определять маршрутизацию.
Настройка маршрутизации в Istio
Создание VirtualService
VirtualService определяет правила распределения трафика между версиями. Вы можете направить, например, 100% пользователей на Blue или начать постепенно переводить их на Green.
Пример конфигурации VirtualService
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: app-routing
spec:
hosts:
- my-app
http:
- route:
- destination:
host: my-app
subset: blue
weight: 100
- destination:
host: my-app
subset: green
weight: 0
Переключение трафика
Изменяя веса маршрутизации, вы можете постепенно переводить пользователей на новую версию или мгновенно выполнить переключение.
Откат изменений и безопасность релизов
Blue/Green позволяет выполнить откат моментально — достаточно вернуть вес трафика на предыдущую версию. Это делает релизы более предсказуемыми и снижает риски.
Заключение
Используя Istio и стратегию Blue/Green, вы получаете мощный инструмент для безопасного и контролируемого развертывания приложений в Kubernetes, обеспечивая стабильность и гибкость продакшн-среды.
СКАЧАТЬ:
 📥 Скрытое содержимое! Войдите или Зарегистрируйтесь