Данный документ предоставляет краткий обзор различных компонентов сервисной сети и их ролей в платформе.
Компоненты контрольной плоскости
Название компонента | Описание |
---|---|
Istio | |
istiod | Компонент контрольной плоскости Istio, название которого различает различные основные версии Istio. |
istio-cni | Узловой агент Istio CNI, используемый для настройки перенаправления трафика для Pod в сети. Этот компонент не развертывается по умолчанию, если не используются часы OpenShift. |
tier2-gateway | Гейтвей Tier2 в сочетании с гейтвеем Tier1 предоставляет усовершенствованные функции управления трафиком, такие как серые релизы и маршрутизацию сервисов для входящего трафика в сети. |
istio-eastwestgateway | Восточно-западный гейтвей в Istio для связи сервисной сети между несколькими кластерами. Его основная функция - обеспечить возможность взаимодействия сервисов в различных кластерах. Этот компонент развертывается только в сервисных сетях multi-network и multi-cluster . |
asm-core | Компонент, предоставляющий глобальное ограничение скорости для Istio. Он разворачивается по умолчанию, но работает только в том случае, если сервисная сеть интегрирована с Redis. |
OpenTelemetry | |
asm-otel-collector | Компонент решения OpenTelemetry для получения, обработки и экспорта данных наблюдаемости. Поддерживает открытые форматы данных, такие как Jaeger и Prometheus. Данные трассировки отправляются в Jaeger, в то время как данные Метрики отправляются в Prometheus или VictoriaMetrics. |
asm-otel-collector-lb | Обеспечивает балансировку нагрузки для компонента asm-otel-collector. Собранные данные наблюдаемости, проведенные OTel Java Agent, передаются в asm-otel-collector через этот компонент. |
Jaeger | |
jaeger-prod-collector | Компонент коллектора Jaeger, собирающий данные распределенной трассировки от sidecars и asm-otel-collector, и взаимодействующий с Elasticsearch для хранения данных трассировки. |
jaeger-prod-query | Компонент запроса данных Jaeger, запрашивающий данные трассировки из Elasticsearch. |
Flagger | |
flagger | Обеспечивает функциональность серых релизов и интегрируется с Istio для реализации стратегий постепенной доставки для сервисов. |
Другие | |
asm-controller | Управляет и координирует различные ресурсы внутри сервисной сети. |
Компоненты плоскости данных
Название компонента | Описание |
---|---|
Ingress Gateway | Независимый прокси Envoy, работающий на краю сети. Позволяет настраивать публичные порты и протоколы для указания разрешенного трафика в сеть. |
Egress Gateway | Независимый прокси Envoy, работающий на краю сети. Позволяет мониторинг, ведение журналов и соблюдение политик безопасности для трафика, покидающего сеть. |
Sidecar | Обычно разворачивается в том же Pod, что и контейнер приложения. Обрабатывает сетевые запросы от приложения, включая управление трафиком, соблюдение политики безопасности, балансировку нагрузки и обнаружение сервисов. |
OpenTelemetry Java Agent | Автоматизированный инструмент для сбора данных распределенной трассировки и метрик внутри Java приложений. Инжекция OpenTelemetry Java Agent позволяет выполнить распределенную трассировку маршрутов запросов и сбор данных о производительности без изменения кода приложения. |
Этот раздел описывает минимально рекомендуемые вычислительные ресурсы для компонентов сервисной сети в кластере.
Выделение CPU и памяти для каждого компонента настраиваемое.
Перед созданием сервисной сети убедитесь, что узлы кластера имеют достаточное количество CPU и памяти для запуска всех компонентов сервисной сети.
Важная заметка:
Таблица ниже подводит итоги рекомендуемых минимальных запросов ресурсов и ограничений для CPU и памяти для каждого компонента сервисной сети.
В Kubernetes запросы ресурсов указывают, что рабочая нагрузка не будет развернута на узле, если только этот узел не имеет хотя бы указанного объема доступной памяти и CPU. Если рабочая нагрузка превышает лимиты CPU или памяти, она может быть завершена или исключена из узла. Для получения дополнительной информации о управлении ограничениями ресурсов контейнера смотрите документацию Kubernetes.
Компонент | Запрос CPU | Запрос памяти | Лимит CPU | Лимит памяти |
---|---|---|---|---|
Istio | ||||
istiod | 500m | 512Mi | 2000m | 2048Mi |
ingress gateway | 250m | 128Mi | 2000m | 1024Mi |
egress gateway | 250m | 128Mi | 2000m | 1024Mi |
sidecar | 100m | 128Mi | 500m | 512Mi |
tier2-gateway | 250m | 128Mi | 2000m | 1024Mi |
istio-eastwestgateway | 250m | 128Mi | 2000m | 1024Mi |
asm-core | 250m | 128Mi | 1000m | 512Mi |
OpenTelemetry | ||||
asm-otel-collector | 250m | 512Mi | 2000m | 1Gi |
asm-otel-collector-lb | 250m | 512Mi | 1000m | 1Gi |
Jaeger | ||||
jaeger-prod-collector | 250m | 512Mi | 3000m | 512Mi |
jaeger-prod-query | 250m | 512Mi | 1000m | 512Mi |
Flagger | ||||
flagger | 250m | 128Mi | 1000m | 512Mi |
Другие | ||||
asm-controller | 250m | 512Mi | 1000m | 512Mi |