Изоляция Pod

Содержание

Введение

Изоляция Pod позволяет динамически исключать неисправные Pod из трафика сервиса при сохранении их рабочего состояния. Эта функция:

  • Предотвращает неудачные запросы к дефектным конечным точкам
  • Поддерживает доступность сервиса во время устранения неполадок
  • Обеспечивает бесшовное повторное включение после восстановления

Основная ценность: обеспечивает непрерывную надежность сервиса за счет целевого управления трафиком

Особенности

  • Исключение/включение Pod одним кликом
  • Интеграция метрик здоровья в реальном времени
  • Режим совместимости с устаревшими сервисами
  • Безопасная изоляция (Pod остается запущенным)

Изоляция Pod

Шаг 1: Доступ к управлению Pod

  1. Перейдите: Service List > Target Service
  2. Выберите вкладку Pod Group
  3. Найдите целевой Pod по метрикам или логам

Шаг 2: Выполнение изоляции

# Аннотация состояния изоляции
metadata:
  annotations:
    asm.cpaas.io/isolated: "true"
Элемент управления UIДействие
Открыть контекстное меню
Set IsolationПереключить состояние изоляции
SetПодтвердить настройку

Активация устаревшего сервиса

Требования

  • Kubernetes v1.18+
  • Сервис создан до выпуска функции изоляции
  • Привилегии администратора кластера

Обновление конфигурации

  1. Измените метки Deployment:

    metadata:
      labels:
        asm.cpaas.io/msselector: product-service
  2. Обновите селектор внутреннего маршрута:

    spec:
      selector:
        asm.cpaas.io/msselector: product-service

Мониторинг и проверка

Панель ключевых метрик

МетрикаПороговое значениеЭлемент управления обновлением
Error Rate<5%
Latency<500ms
Active Connections±10% отклонение

Проверка статуса

kubectl get endpoints <service-name> -o jsonpath='{.subsets[].notReadyAddresses}'

Операционные ограничения

  1. Ограничения по состоянию:

    • Влияет только на Pod в состоянии Running
    • Не затрагивает Pod в состояниях Completed/CrashLoopBackOff
  2. Сценарии конфликтов:

    • Отключена во время canary-релизов
    • Перекрывается событиями масштабирования (scale-in/scale-out)
  3. Сохранение состояния:

    • Изоляция сбрасывается при перезапуске Pod
    • Требуется повторная ручная изоляция после восстановления