Запуск мониторинга Kubernetes/OpenShift: различия между версиями
ENetrebin (обсуждение | вклад) |
ENetrebin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
Есть разные способы активировать Ключ-АСТРОМ в Kubernetes. Каждый способ имеет свои преимущества. Мы рекомендуем эти стратегии развертывания с точки зрения полноты функций и отсутствия ограничений. | Есть разные способы активировать Ключ-АСТРОМ в Kubernetes/Openshift/OKD. Каждый способ имеет свои преимущества. Мы рекомендуем эти стратегии развертывания с точки зрения полноты функций и отсутствия ограничений. | ||
Вы можете перейти с устаревшего оператора ЕдиныйАгент на новый оператор Ключ-АСТРОМ, который управляет жизненным циклом нескольких компонентов Ключ-АСТРОМ, таких как ЕдиныйАгент, маршрутизация и монитор API Kubernetes. Инструкции по миграции см. в разделе Миграция с оператора ЕдиныйАгент на оператор Ключ-АСТРОМ в Kubernetes/OpenShift с помощью kubectl/oc . | Вы можете перейти с устаревшего оператора ЕдиныйАгент на новый оператор Ключ-АСТРОМ, который управляет жизненным циклом нескольких компонентов Ключ-АСТРОМ, таких как ЕдиныйАгент, маршрутизация и монитор API Kubernetes. Инструкции по миграции см. в разделе Миграция с оператора ЕдиныйАгент на оператор Ключ-АСТРОМ в Kubernetes/OpenShift/OKD с помощью kubectl/oc . | ||
== Классическое инжектирование полного стека == | == Классическое инжектирование полного стека (Classic full-stack) == | ||
''Рекомендации'': | ''Рекомендации'': | ||
Руководство по установке см. в разделе Настройка мониторинга Kubernetes . | Руководство по установке см. в разделе Настройка мониторинга Kubernetes . | ||
'''Примечание.''' Если вы предпочитаете использовать Helm, см . раздел Настройка мониторинга Kubernetes/OpenShift с помощью Helm . | '''Примечание.''' Если вы предпочитаете использовать Helm, см . раздел Настройка мониторинга Kubernetes/OpenShift/OKD с помощью Helm . | ||
=== Возможности и ограничения === | === Возможности и ограничения === | ||
Строка 28: | Строка 28: | ||
'''Примечание.''' Для классического внедрения полного стека требуется ''доступ'' на запись из модуля ЕдиныйАгент к файловой системе узла Kubernetes для обнаружения и внедрения во вновь развернутые контейнеры. | '''Примечание.''' Для классического внедрения полного стека требуется ''доступ'' на запись из модуля ЕдиныйАгент к файловой системе узла Kubernetes для обнаружения и внедрения во вновь развернутые контейнеры. | ||
== Облачное внедрение полного стека == | == Облачное внедрение полного стека (Cloud full-stack) == | ||
Руководство по установке см. в разделе Настройка мониторинга Kubernetes . | Руководство по установке см. в разделе Настройка мониторинга Kubernetes . | ||
Строка 73: | Строка 73: | ||
[[Файл:kub3.png]] | [[Файл:kub3.png]] | ||
== Мониторинг только приложений: автоматический ввод == | == Мониторинг только приложений (Application only): автоматический ввод == | ||
Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus . | Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus . | ||
Строка 95: | Строка 95: | ||
[[Файл:kub4.png]] | [[Файл:kub4.png]] | ||
== Мониторинг только приложений: внедрение модуля во время выполнения == | == Мониторинг только приложений (Application only): внедрение модуля во время выполнения == | ||
Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus . | Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus . | ||
Строка 106: | Строка 106: | ||
[[Файл:kub5.png]] | [[Файл:kub5.png]] | ||
== Мониторинг только приложений: внедрение контейнера во время сборки == | == Мониторинг только приложений (Application only): внедрение контейнера во время сборки == | ||
Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus . | Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus . | ||
Строка 161: | Строка 161: | ||
<sup>4</sup> Сборщик мусора удаляет старые версии ЕдиногоАгента, которые больше не используются, в течение 60 минут. | <sup>4</sup> Сборщик мусора удаляет старые версии ЕдиногоАгента, которые больше не используются, в течение 60 минут. | ||
== OKD == | |||
Обратите внимания на особенности мониторинга OKD. | |||
В связи с особенностями работы операционной системы на которой развернут OKD кластер, необходимо убедиться, что все необходимые пререквизиты выполнены: | |||
1) Убедитесь, что на нодах, на которых будет развернут оператор '''SELinux''' переведен в режим '''permissive'''. |
Текущая версия на 12:02, 19 декабря 2023
Есть разные способы активировать Ключ-АСТРОМ в Kubernetes/Openshift/OKD. Каждый способ имеет свои преимущества. Мы рекомендуем эти стратегии развертывания с точки зрения полноты функций и отсутствия ограничений.
Вы можете перейти с устаревшего оператора ЕдиныйАгент на новый оператор Ключ-АСТРОМ, который управляет жизненным циклом нескольких компонентов Ключ-АСТРОМ, таких как ЕдиныйАгент, маршрутизация и монитор API Kubernetes. Инструкции по миграции см. в разделе Миграция с оператора ЕдиныйАгент на оператор Ключ-АСТРОМ в Kubernetes/OpenShift/OKD с помощью kubectl/oc .
Классическое инжектирование полного стека (Classic full-stack)
Рекомендации:
Руководство по установке см. в разделе Настройка мониторинга Kubernetes .
Примечание. Если вы предпочитаете использовать Helm, см . раздел Настройка мониторинга Kubernetes/OpenShift/OKD с помощью Helm .
Возможности и ограничения
Возможности:
- Бесшовная интеграция с хостом (узлом Kubernetes). Инструментированные модули сохраняют свои таксономические отношения с хостами и метриками хостов. Агенты хоста дополняют модули кода обнаружением OOM, мониторингом дисков и хранилищ, мониторингом сети и т. д.
- Всесторонность. Этот комплексный подход включает в себя мониторинг кластера Kubernetes, распределенную трассировку, изоляцию домена сбоя и глубокое понимание на уровне кода с использованием единой конфигурации развертывания для ваших кластеров.
Ограничения: существует зависимость запуска между контейнером, в котором развернут ЕдиныйАгент, и контейнерами приложений, которые должны быть инструментированы (например, контейнерами, в которых включен глубокий мониторинг процессов). Контейнер ЕдиногоАгента должен быть запущен, а oneagenthelper
процесс должен быть запущен до запуска контейнера приложения, чтобы приложение могло быть правильно инструментировано.
Развернутые ресурсы
Ключ-АСТРОМ Operator управляет классической инъекцией полного стека после развертывания следующих ресурсов.
- ЕдиныйАгент , развернутый как DaemonSet, собирает метрики хоста с узлов Kubernetes. Он также обнаруживает новые контейнеры и внедряет модули кода ЕдиныйАгент в модули приложений.
- Ключ-АСТРОМ АктивныйШлюз используется для маршрутизации, а также для мониторинга объектов Kubernetes путем сбора данных (метрики, события, статус) из Kubernetes API.
- Сервер веб-перехватчиков Ключ-АСТРОМ проверяет правильность определений Dynakube.
Примечание. Для классического внедрения полного стека требуется доступ на запись из модуля ЕдиныйАгент к файловой системе узла Kubernetes для обнаружения и внедрения во вновь развернутые контейнеры.
Облачное внедрение полного стека (Cloud full-stack)
Руководство по установке см. в разделе Настройка мониторинга Kubernetes .
Примечание. Если вы предпочитаете использовать Helm, см . раздел Настройка мониторинга Kubernetes/OpenShift с помощью Helm .
Возможности и ограничения
Возможности:
- Предлагает аналогичную функциональность, как классическое внедрение полного стека (см. ограничения ниже).
- Использует изменяющиеся веб-перехватчики для внедрения модулей кода в модули приложений.
Ограничения:
- Файлы диагностики ("архивы поддержки") для модулей приложений пока не поддерживаются.
- Правила мониторинга контейнеров пока не поддерживаются (параметр селектора меток Dynakube предоставляет аналогичную функциональность).
- Сетевые зоны пока не поддерживаются.
- Трассировка дополнительных модулей Istio и входных шлюзов, а также любых других экземпляров прокси-сервера Envoy не поддерживается.
Развернутые ресурсы
Ключ-АСТРОМ Operator управляет облачной инъекцией полного стека после развертывания следующих развернутых ресурсов.
- ЕдиныйАгент , развернутый как DaemonSet, собирает метрики хоста с узлов Kubernetes.
- Сервер веб-перехватчиков Ключ-АСТРОМ изменяет определения модулей, чтобы включить модули кода Ключ-АСТРОМ для наблюдения за приложениями.
- Драйвер Ключ-АСТРОМ CSI, развернутый как DaemonSet, предоставляет доступное для записи хранилище томов для ЕдиныйАгент и двоичных файлов ЕдиныйАгент для модулей.
- Ключ-АСТРОМ АктивныйШлюз используется для маршрутизации, а также для мониторинга объектов Kubernetes путем сбора данных (метрики, события, статус) из Kubernetes API.
Мониторинг хоста
Руководство по установке см. в разделе Настройка мониторинга Kubernetes .
Примечание. Если вы предпочитаете использовать Helm, см . раздел Настройка мониторинга Kubernetes/OpenShift с помощью Helm .
Возможности и ограничения
Возможности: собирает метрики узлов и обрабатывает данные.
Ограничения. Диагностические файлы («архивы поддержки») для модулей приложений еще не поддерживаются для файловых систем, доступных только для чтения.
Развернутые ресурсы
Ключ-АСТРОМ Operator управляет мониторингом хоста после развертывания следующих развернутых ресурсов:
- Сервер веб-перехватчиков Ключ-АСТРОМ только проверяет DynaKube и проверяет его правильность, не изменяя определения модулей.
- Драйвер Ключ-АСТРОМ CSI обеспечивает доступное для записи объемное хранилище для ЕдиныйАгент.
- Ключ-АСТРОМ АктивныйШлюз используется для маршрутизации, а также для мониторинга объектов Kubernetes путем сбора данных (метрики, события, статус) из Kubernetes API.
Мониторинг только приложений (Application only): автоматический ввод
Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus .
Руководство по установке см. в разделе Автоматическая инъекция только для приложений .
Примечание. Если вы предпочитаете использовать Helm, см . раздел Настройка мониторинга Kubernetes/OpenShift с помощью Helm .
Возможности и ограничения
Возможности:
- Он разработан для Kubernetes. Ключ-АСТРОМ внедряет данные в модули с помощью контроллера допуска Kubernetes, который внедряет модуль кода Ключ-АСТРОМ в контейнеры приложений.
- Гибкость. Вы получаете детальный контроль над инструментированными модулями с помощью пространств имен и аннотаций. Вы можете легко направлять метрики pod в разные среды Ключ-АСТРОМ в одном кластере Kubernetes.
Ограничения. При развертывании в режиме только для приложений ЕдиныйАгент отслеживает память, диск, ЦП и сетевые процессы только внутри контейнера. Показатели хоста не отслеживаются. Топология ограничена модулями и контейнерами.
Развернутые ресурсы
Ключ-АСТРОМ Operator управляет автоматическим инжектированием только для приложений после развертывания следующих ресурсов.
- Сервер веб-перехватчиков Ключ-АСТРОМ изменяет определения модулей, чтобы включить модули кода Ключ-АСТРОМ для наблюдения за приложениями.
- Ключ-АСТРОМ АктивныйШлюз используется для маршрутизации, а также для мониторинга объектов Kubernetes путем сбора данных (метрики, события, статус) из Kubernetes API.
Мониторинг только приложений (Application only): внедрение модуля во время выполнения
Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus .
Руководство по установке см . в разделе Внедрение пода во время выполнения .
Возможности
- Это родной Kubernetes. Модули кода Ключ-АСТРОМ внедряются в модули с помощью контейнеров инициализации Kubernetes.
- Гибкость. Различные образы контейнеров могут содержать отдельные конфигурации для разных сред Ключ-АСТРОМ.
Мониторинг только приложений (Application only): внедрение контейнера во время сборки
Вы можете использовать стратегию внедрения только для приложений для модулей приложений. Вы не устанавливаете модули ЕдиныйАгент и не можете собирать метрики узлов с узлов Kubernetes. Вы можете собирать альтернативные метрики узлов из других источников, таких как Prometheus .
Руководство по установке см. в разделе Внедрение контейнера во время сборки .
Возможности
- Он имеет инъекцию статического контейнера. Модули кода Ключ-АСТРОМ встраиваются в образы контейнеров по мере их создания.
- Он гибкий. Различные образы контейнеров могут содержать отдельные конфигурации для разных сред Ключ-АСТРОМ. Вы можете использовать эти образы на любой контейнерной платформе или PaaS в дополнение к Kubernetes.
Классическое ручное инжектирование полного стека
Вы можете использовать классическую стратегию ручного внедрения полного стека для ручного развертывания ЕдиныйАгент DaemonSet и Kubernetes API без оператора Ключ-АСТРОМ.
Требования к хранению
В следующей таблице показаны требования к хранилищу для типов развертывания Ключ-АСТРОМ Operator.
Тип развертывания | Без драйвера CSI | С драйвером CSI1 | С драйвером CSI и изображением кодовых модулей |
---|---|---|---|
classicFullStack
|
~1,3 ГБ для конфигурации/бинарных файлов ЕдиногоАгента2 (непосредственно на узле) | неприменимо | неприменимо |
hostMonitoring
|
~1,3 ГБ для конфигурации/бинарных файлов ЕдиныйАгент2 (непосредственно на узле) | ~1,3 ГБ для конфигурации/бинарных файлов ЕдиныйАгент2 (на узле, управляемом драйвером CSI) | неприменимо |
applicationMonitoring
|
~650 МБ на отслеживаемый модуль3 (во временном хранилище, непосредственно на модуле) | - ~650 МБ на одного арендатора и работающей версии ЕдиногоАгента4
- ~0,2 МБ (и логи во время выполнения) на внедренный модуль |
- ~650 МБ на работающий версии ЕдиногоАгента4
- ~0,2 МБ (и журналы во время выполнения) на внедренный модуль |
cloudNativeFullStack
|
неприменимо (требуется драйвер CSI) | Комбинация из следующего:
- |
Комбинация из следующего:
- |
1 Используется для поддержки файловой системы только для чтения (по умолчанию для мониторинга узлов и облачных развертываний с полным стеком).
2 Новые версии ЕдиногоАгента перезаписывают старые версии ЕдиногоАгента.
3 Если модуль уничтожен, ЕдиныйАгент автоматически удаляется.
4 Сборщик мусора удаляет старые версии ЕдиногоАгента, которые больше не используются, в течение 60 минут.
OKD
Обратите внимания на особенности мониторинга OKD.
В связи с особенностями работы операционной системы на которой развернут OKD кластер, необходимо убедиться, что все необходимые пререквизиты выполнены:
1) Убедитесь, что на нодах, на которых будет развернут оператор SELinux переведен в режим permissive.