Особенности продукта

Service Mesh — это платформа PaaS на базе Istio, предоставляющая облачные решения для приложений и микросервисов.

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

Содержание

Полный жизненный цикл управления Service Mesh

Управление сервисной сеткой становится особенно сложным в мультикластерных средах. Полный жизненный цикл управления сервисной сеткой включает не только развертывание, обновление и удаление сервисной сетки, но и мониторинг её состояния в режиме реального времени, что позволяет операционному персоналу своевременно обнаруживать аномалии и устранять проблемы, обеспечивая тем самым стабильную и непрерывную поддержку бизнес-операций.

ОсобенностьОписание
Сервисная сетка с мульти-первичными кластерамиФункция управления сервисной сеткой с мульти-первичной архитектурой визуализирует процесс развертывания компонентов платформы управления микросервисами.
Визуальное развертывание и управление Service Mesh- Администраторы могут легко развернуть все компоненты платформы управления микросервисами, включая Istio, для каждого Kubernetes-кластера, требующего возможностей управления сервисами, используя визуальные формы для настройки ключевых параметров. При необходимости можно интегрировать внешние компоненты для обеспечения контейнеризированного управления микросервисами.
- Администраторы могут настраивать конфигурацию ресурсов компонентов сетки в зависимости от фактического масштаба бизнеса.
Мониторинг Service MeshФункция мониторинга сервисной сетки включает несколько встроенных панелей мониторинга, отображающих данные контроля и передачи данных с разных точек зрения и с разной степенью детализации, что облегчает администраторам запрос и просмотр данных в режиме реального времени.

Глобальная визуализация сервисов

ОсобенностьОписание
Топология сервисовГраф топологии сервисов наглядно отображает взаимосвязи между сервисами внутри сервисной сетки и между сервисами внутри и вне сетки (например, middleware, виртуальные машины с внедрённым OpenTelemetry Java Agent). Граф топологии помогает понять, какие компоненты взаимодействуют, и быстро определить точное место ошибки.

- Возможность фокусировки с глобального уровня на локальный и просмотра подробной информации о конкретном сервисе, включая статус сервиса, условия запросов, информацию о трафике и др.
- При настройке сервисов с политиками безопасности, circuit breaker и оповещениями эти элементы также отображаются на графе топологии специальными маркерами.
- Определение состояния здоровья подов сервиса по цвету узла.
- Определение состояния трафика между сервисами по цвету соединения.
ТрассировкаФункция трассировки платформы поддерживает поиск цепочек вызовов между сервисами в текущем namespace по имени сервиса или TraceID, мониторинг ключевых показателей, таких как статус вызова и длительность сервисов в цепочке вызовов. В сочетании с детальными логами это помогает разработчикам понять отклик каждого узла или конкретного API в цепочке бизнес-запроса для быстрой локализации и устранения проблем.

- Обеспечивает глубокий анализ вызовов между сервисами для разработчиков и операционного персонала.
- Отображает диаграмму рассеяния, абстрагированную от времени начала и длительности цепочки вызовов, для быстрого выявления узких мест с низкой производительностью.
- Поддерживает полное отслеживание цепочки вызовов (сервисы в архитектуре Service Mesh, сервисы Java 8+).
- Быстрый поиск цепочек вызовов по TraceID.
- Запрос информации по ссылкам на основе сервиса или TraceID.
Сервисный шлюзСервисный шлюз, включая egress и ingress шлюзы, работает на границе сервисной сетки, управляя трафиком, входящим и выходящим из сетки, позволяя задавать разрешённый трафик.

- Конфигурация нескольких ingress или egress шлюзов для сервисной сетки, каждый из которых допускает доступ через несколько настраиваемых портов.
- Ingress шлюз поддерживает маршрутизацию внешнего трафика к различным backend-ресурсам (группы API, сервисы) через различные сценарии маршрутизации; egress шлюз позволяет сервисам внутри сетки обращаться к внешним сервисам без влияния на опыт разработки и осуществляет мониторинг трафика.
- Поддержка различных сценариев использования, таких как сетевой изоляция между бизнес-областями, выделенные шлюзы для конкретных бизнесов и изоляция портов.
- Легкое снятие с эксплуатации ненужных шлюзов без потерь.
- Аутентификация и авторизация клиентских запросов на основе JWT.
- Настройка правил маршрутизации шлюза на основе пути запроса, заголовков запроса и переписывания URI.
- Поддержка мониторинга шлюзов на уровне подов с несколькими встроенными стратегиями оповещений для своевременного обнаружения и устранения проблем. Данные мониторинга включают CPU, память, QPS, количество соединений, метрики входящего и исходящего трафика.
Список нативных ресурсовПозволяет пользователям, знакомым с Kubernetes, просматривать нативные ресурсы Istio (YAML-файлы), сгруппированные по типу ресурса.

Управление выпуском сервисов

Интегрирован с Flagger, обеспечивает автоматизированный опыт выпуска сервисов, поддерживая несколько стратегий развертывания, таких как Canary, A/B Testing и Blue/Green.

ОсобенностьОписание
Конфигурация выпускаОпределение конфигураций выпуска сервисов для предоставления шаблонных параметров выполнения для будущих изменений, что позволяет автоматизировать развертывание и откат canary-версий Pod’ов.
Стратегия маршрутизации трафикаПредлагает гибкие стратегии маршрутизации трафика. Сервисы могут автоматически направлять трафик на основе шаблонов конфигурации выпуска или настраивать правила маршрутизации трафика для конкретных задач выпуска.
Управление выпускомПоддерживает как ручные, так и автоматизированные варианты выпуска. Пользователи могут делегировать решения по выпуску автоматизированным системам или выбирать ручной выпуск. Процесс выпуска допускает ручное вмешательство и возможность отката задач в любое время.
НаблюдаемостьОбеспечивает сравнение метрик и трассировку между основной версией и canary-версиями, что позволяет проводить анализ качества и локализацию ошибок при canary-релизах.

Управление безопасностью сервисов

В сценарии управления микросервисами вызовы сервисов переходят с локальных на вызовы по сетевому протоколу, что влечёт за собой риски безопасности.

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

Визуализированная эксплуатация и сопровождение сервисов

При сбое сервиса обычный процесс устранения неполадок включает: отслеживание аномального трафика > определение места сбоя > сужение области > анализ конкретной причины. Исходя из этого процесса, платформа предоставляет полный путь устранения проблем сервиса, помогая быстро находить подозрительные места на основе аномального трафика и оперативно решать проблемы, минимизируя влияние на бизнес.

ОсобенностьОписание
Мониторинг трафика и JVMПредоставляет многомерные панели мониторинга трафика для клиентских и серверных сервисов с детализацией до уровня API;
- Мониторинг JVM поддерживает сбор и отображение данных по различным показателям, таким как CPU/память, потоки и классы. Позволяет просматривать данные одного пода или сравнивать данные двух подов, помогая разработчикам быстро локализовать показатели и временные точки возникновения конкретных проблем.
Оповещения- Обеспечивает функции оповещения на основе распространённых показателей мониторинга, поддерживая сбор показателей, управление стратегиями, срабатывание оповещений и уведомления. В сочетании с мониторингом трафика и JVM обеспечивает полный интеллектуальный опыт эксплуатации мониторинг-оповещение-уведомление.
- Предоставляет шаблоны конфигурации стратегий оповещений, поддерживая настройку одной стратегии или быстрое создание стратегий через шаблоны.
- Позволяет просматривать информацию о ресурсах, находящихся под оповещением, через панель реального времени, фильтровать данные по уровню оповещения и просматривать детали оповещений для понимания масштаба проблемы и быстрой локализации причины.
Логи в реальном времениПредоставляет панель логов в реальном времени на уровне сервиса, позволяя быстро находить и устранять проблемы с помощью логов (включая access логи) при возникновении аномалий сервиса.
Быстрое устранение неполадокПри сбое сервиса можно комбинировать богатые визуальные данные (топология сервисов, трассировка) и данные мониторинга и эксплуатации (мониторинг, оповещения, логи) для отслеживания и локализации аномального трафика и оперативного решения проблем.

Восстановление сервисов после сбоев

В сценариях с несколькими регионами и дата-центрами, когда под сервиса в одном дата-центре выходит из строя и изолируется с помощью circuit breaking, платформа автоматически распределяет трафик клиента на поды сервиса в других дата-центрах, обеспечивая стабильное предоставление сервиса.

ОсобенностьОписание
Маршрутизация по близостиВсе вызовы сервисов по умолчанию используют маршрутизацию по близости во всех дата-центрах. При длинных цепочках вызовов это эффективно обеспечивает приоритетную обработку аварийного трафика конечной точкой сервиса того же кластера.
Пользовательский приоритет аварийного восстановленияПозволяет настраивать региональные нагрузки для индивидуальной настройки приоритета аварийного восстановления трафика между несколькими кластерами в зависимости от региона расположения кластеров.