• Русский
  • Обновление Alauda Service Mesh в ambient mode

    В ambient mode вы обновляете Alauda Service Mesh, повышая версию каждого ресурса компонента mesh на месте. Затем Alauda Service Mesh v2 Operator заменяет запущенный компонент на запрошенную версию. Pods приложений переключаются на обновленный прокси ZTunnel без перезапуска или перепланирования, что является ключевым операционным отличием от sidecar mode, где каждый workload должен быть перезапущен, прежде чем начнет использовать новую версию прокси.

    WARNING

    Ambient mode поддерживает только стратегию обновления InPlace. ZTunnel использует кластерную singleton-архитектуру: в кластере одновременно может работать ровно один экземпляр ZTunnel. Поэтому запускать две версии ZTunnel параллельно невозможно, а значит, канареечные обновления со стратегией RevisionBased не поддерживаются.

    NOTE

    Ambient mode по-прежнему остается функцией Technology Preview. Инструкции по установке см. в Istio ambient mode.

    Последовательность обновления

    Обновляйте компоненты mesh в следующем порядке:

    1. Istio control plane — измените версию в ресурсе Istio.
    2. Istio CNI — измените ресурс IstioCNI на ту же версию.
    3. ZTunnel — измените ресурс ZTunnel на ту же версию.

    Порядок имеет значение из-за поддерживаемого расхождения версий: плагин Istio CNI и прокси ZTunnel версии 1.x могут работать с control plane версии 1.x или 1.x+1, но не с более старой версией. Сначала обновляя control plane, вы гарантируете, что любая комбинация компонентов, возникающая во время обновления, остается в поддерживаемом диапазоне.

    Пошаговые команды см. в разделе Updating ambient mode components.

    Обработка соединений во время обновления

    В ambient mode xDS-соединение с istiod поддерживает прокси ZTunnel на уровне узла, а не каждый pod приложения. В результате обновление control plane не требует перезапуска pods приложений: ZTunnel и waypoint proxies самостоятельно переподключаются к новому control plane.

    Замена самого pod ZTunnel — это единственный шаг, который может повлиять на трафик приложений. Поскольку ZTunnel проксирует TCP-соединения на Layer 4, он не может передать установленные соединения своему преемнику, поэтому долгоживущие TCP-соединения на обновляемом узле могут быть сброшены. Чтобы понять это поведение и варианты его смягчения, см. The ZTunnel update process.

    Совместимость версий

    При планировании обновления следуйте этим рекомендациям:

    • По возможности поддерживайте одинаковую версию для Istio control plane, Istio CNI и ZTunnel.
    • Компоненты data plane никогда не должны опережать control plane. Держите waypoint proxies, плагин Istio CNI и ZTunnel в пределах одной minor-версии от control plane (та же версия или n-1).
    • Перед обновлением production-кластеров протестируйте предполагаемую комбинацию версий в непроизводственной среде.

    Высокая доступность

    Обновление InPlace перезапускает pods control plane, что может на короткое время прервать доставку конфигурации mesh. Эта рекомендация относится и к ambient mode: запускайте istiod с несколькими репликами, чтобы минимизировать окно нарушения работы. Подробнее см. Istio High Availability.