ENetrebin (обсуждение | вклад) (Новая страница: «Dynatrace автоматически извлекает теги из ваших ярлыков Kubernetes / OpenShift. Это позволяет автомати...») |
Нет описания правки |
||
(не показаны 4 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
'''''[[Применение АппОптима]] / [[Мониторинг контейнерных платформ]] / [https://doc.ruscomtech.ru/index.php/Мониторинг_Red_Hat_OpenShift OpenShift] / Организуйте развертывание OpenShift по тегам''''' | |||
АппОптима автоматически извлекает теги из ваших ярлыков Kubernetes / OpenShift. Это позволяет автоматически организовывать и фильтровать все отслеживаемые компоненты приложения Kubernetes / OpenShift. | |||
== Рекомендация == | == Рекомендация == | ||
Рекомендуется определить дополнительные метаданные в развернутой системе. Для приложений на основе Kubernetes вы можете просто использовать аннотации Kubernetes . | Рекомендуется определить дополнительные метаданные в развернутой системе. Для приложений на основе Kubernetes вы можете просто использовать аннотации Kubernetes . АппОптима автоматически обнаруживает и извлекает все аннотации Kubernetes и OpenShift для модулей, которые отслеживаются с помощью модуля кода ЕдиныйАгент. Это позволяет использовать правила автоматической пометки на основе существующих или настраиваемых метаданных для определения наборов фильтров для диаграмм, предупреждений и т. Д. Эти теги и правила можно изменить и адаптировать в любое время, и они будут применяться практически сразу, без каких-либо изменений в контролируемой среде или приложениях. | ||
== Автоматическое определение свойств и аннотаций Kubernetes == | == Автоматическое определение свойств и аннотаций Kubernetes == | ||
АппОптима обнаруживает свойства и аннотации Kubernetes. Такие свойства и аннотации можно использовать при указании автоматических тегов на основе правил . | |||
Кроме того | Кроме того АппОптима обнаруживает следующие свойства , которые могут быть использованы для автоматизированных правил на основе тегов и правил обнаружения процесса группы на основе свойств . | ||
* Имя базового модуля Kubernetes: предоставленное пользователем имя модуля, которому принадлежит контейнер. | * Имя базового модуля Kubernetes: предоставленное пользователем имя модуля, которому принадлежит контейнер. | ||
Строка 15: | Строка 17: | ||
* UID модуля Kubernetes: уникальный идентификатор соответствующего модуля. | * UID модуля Kubernetes: уникальный идентификатор соответствующего модуля. | ||
== Используйте ярлыки Kubernetes в | == Используйте ярлыки Kubernetes в АппОптима == | ||
Теги на основе Kubernetes доступны для поиска через поиск | Теги на основе Kubernetes доступны для поиска через поиск АппОптима. Это позволяет вам легко находить и проверять результаты мониторинга связанных процессов, запущенных в вашей среде Kubernetes или OpenShift. Вы также можете использовать теги Kubernetes для настройки детализированных профилей предупреждений . Теги Kubernetes также отлично интегрируются с фильтрами АппОптима . | ||
== Импортируйте свои ярлыки и аннотации == | == Импортируйте свои ярлыки и аннотации == | ||
Вы можете указать метки OpenShift в определении объекта Pod вашего приложения или вы можете обновить метки ваших ресурсов OpenShift с помощью команды oc label . | Вы можете указать метки OpenShift в определении объекта Pod вашего приложения или вы можете обновить метки ваших ресурсов OpenShift с помощью команды oc label . | ||
АппОптима автоматически обнаруживает все ярлыки, прикрепленные к модулям, во время развертывания приложения. Все, что вам нужно сделать, это предоставить подам достаточные привилегии, позволяющие читать метаданные из конечной точки Kubernetes REST API. Таким образом, модули кода ЕдиныйАгент могут считывать эти метки прямо из модуля. | |||
Примечание. В модулях OpenShift можно пометить только модули кода. | Примечание. В модулях OpenShift можно пометить только модули кода. | ||
Строка 28: | Строка 30: | ||
В OpenShift каждый модуль связан с учетной записью службы, которая используется для аутентификации запросов модуля к Kubernetes API. Если не указано иное, модуль использует <code>default</code>служебную учетную запись своего проекта OpenShift. | В OpenShift каждый модуль связан с учетной записью службы, которая используется для аутентификации запросов модуля к Kubernetes API. Если не указано иное, модуль использует <code>default</code>служебную учетную запись своего проекта OpenShift. | ||
Каждый проект OpenShift имеет свой собственный набор учетных записей служб и, следовательно, также собственную <code>default</code>учетную запись службы в рамках проекта . Ярлыки каждого модуля, служебная учетная запись которого имеет разрешения на просмотр, будут автоматически импортированы в | Каждый проект OpenShift имеет свой собственный набор учетных записей служб и, следовательно, также собственную <code>default</code>учетную запись службы в рамках проекта . Ярлыки каждого модуля, служебная учетная запись которого имеет разрешения на просмотр, будут автоматически импортированы в АппОптима. | ||
Следующие шаги показывают, как добавить права просмотра <code>default</code>учетной записи службы в <code>project1</code>проекте. Вам необходимо повторить эти шаги для всех сервисных учетных записей и проектов, которые вы хотите включить для | Следующие шаги показывают, как добавить права просмотра <code>default</code>учетной записи службы в <code>project1</code>проекте. Вам необходимо повторить эти шаги для всех сервисных учетных записей и проектов, которые вы хотите включить для АппОптима. | ||
Создайте следующее <code>Role</code>, это позволит учетной записи службы просматривать необходимые метаданные о вашем пространстве имен <code>project1</code>через Kubernetes REST API: | Создайте следующее <code>Role</code>, это позволит учетной записи службы просматривать необходимые метаданные о вашем пространстве имен <code>project1</code>через Kubernetes REST API: | ||
< | <# oneagent-metadata-viewer.yaml | ||
kind: Role | kind: Role | ||
apiVersion: rbac.authorization.k8s.io/v1 | apiVersion: rbac.authorization.k8s.io/v1 | ||
metadata: | metadata: | ||
namespace: project1 | namespace: project1 | ||
name: | name: oneagent-metadata-viewer | ||
rules: | rules: | ||
- apiGroups: [""] | - apiGroups: [""] | ||
Строка 44: | Строка 46: | ||
verbs: ["get"]</code> | verbs: ["get"]</code> | ||
<code>oc -n project1 create -f | <code>oc -n project1 create -f oneagent-metadata-viewer.yaml</code> | ||
Привяжите <code>Role</code>к <code>default</code>учетной записи службы, <code>Role</code>чтобы действие вступило в силу: | Привяжите <code>Role</code>к <code>default</code>учетной записи службы, <code>Role</code> чтобы действие вступило в силу: | ||
<code>oc -n project1 policy add-role-to-user | <code>oc -n project1 policy add-role-to-user oneagent-metadata-viewer --role-namespace="project1" -z default</code> | ||
В качестве альтернативы OpenShift также позволяет привязать <code>Role</code>ко всем учетным записям служб в проекте. | В качестве альтернативы OpenShift также позволяет привязать <code>Role</code>ко всем учетным записям служб в проекте. | ||
<code>oc -n project1 policy add-role-to-group | <code>oc -n project1 policy add-role-to-group oneagent-metadata-viewer --role-namespace="project1" system:serviceaccounts:project1</code> | ||
Ваши ярлыки OpenShift будут автоматически прикреплены как теги Kubernetes ко всем отслеживаемым процессам OpenShift в вашей среде | Ваши ярлыки OpenShift будут автоматически прикреплены как теги Kubernetes ко всем отслеживаемым процессам OpenShift в вашей среде АппОптима (см. Пример ниже). |
Текущая версия от 14:07, 26 декабря 2024
Применение АппОптима / Мониторинг контейнерных платформ / OpenShift / Организуйте развертывание OpenShift по тегам
АппОптима автоматически извлекает теги из ваших ярлыков Kubernetes / OpenShift. Это позволяет автоматически организовывать и фильтровать все отслеживаемые компоненты приложения Kubernetes / OpenShift.
Рекомендация
Рекомендуется определить дополнительные метаданные в развернутой системе. Для приложений на основе Kubernetes вы можете просто использовать аннотации Kubernetes . АппОптима автоматически обнаруживает и извлекает все аннотации Kubernetes и OpenShift для модулей, которые отслеживаются с помощью модуля кода ЕдиныйАгент. Это позволяет использовать правила автоматической пометки на основе существующих или настраиваемых метаданных для определения наборов фильтров для диаграмм, предупреждений и т. Д. Эти теги и правила можно изменить и адаптировать в любое время, и они будут применяться практически сразу, без каких-либо изменений в контролируемой среде или приложениях.
Автоматическое определение свойств и аннотаций Kubernetes
АппОптима обнаруживает свойства и аннотации Kubernetes. Такие свойства и аннотации можно использовать при указании автоматических тегов на основе правил .
Кроме того АппОптима обнаруживает следующие свойства , которые могут быть использованы для автоматизированных правил на основе тегов и правил обнаружения процесса группы на основе свойств .
- Имя базового модуля Kubernetes: предоставленное пользователем имя модуля, которому принадлежит контейнер.
- Контейнер Kubernetes: имя контейнера, в котором выполняется процесс.
- Полное имя модуля Kubernetes: полное имя модуля, которому принадлежит контейнер.
- Kubernetes namespace: пространство имен, которому назначен контейнерный процесс.
- UID модуля Kubernetes: уникальный идентификатор соответствующего модуля.
Используйте ярлыки Kubernetes в АппОптима
Теги на основе Kubernetes доступны для поиска через поиск АппОптима. Это позволяет вам легко находить и проверять результаты мониторинга связанных процессов, запущенных в вашей среде Kubernetes или OpenShift. Вы также можете использовать теги Kubernetes для настройки детализированных профилей предупреждений . Теги Kubernetes также отлично интегрируются с фильтрами АппОптима .
Импортируйте свои ярлыки и аннотации
Вы можете указать метки OpenShift в определении объекта Pod вашего приложения или вы можете обновить метки ваших ресурсов OpenShift с помощью команды oc label .
АппОптима автоматически обнаруживает все ярлыки, прикрепленные к модулям, во время развертывания приложения. Все, что вам нужно сделать, это предоставить подам достаточные привилегии, позволяющие читать метаданные из конечной точки Kubernetes REST API. Таким образом, модули кода ЕдиныйАгент могут считывать эти метки прямо из модуля.
Примечание. В модулях OpenShift можно пометить только модули кода.
Предоставить роль наблюдателя сервисным учетным записям
В OpenShift каждый модуль связан с учетной записью службы, которая используется для аутентификации запросов модуля к Kubernetes API. Если не указано иное, модуль использует default
служебную учетную запись своего проекта OpenShift.
Каждый проект OpenShift имеет свой собственный набор учетных записей служб и, следовательно, также собственную default
учетную запись службы в рамках проекта . Ярлыки каждого модуля, служебная учетная запись которого имеет разрешения на просмотр, будут автоматически импортированы в АппОптима.
Следующие шаги показывают, как добавить права просмотра default
учетной записи службы в project1
проекте. Вам необходимо повторить эти шаги для всех сервисных учетных записей и проектов, которые вы хотите включить для АппОптима.
Создайте следующее Role
, это позволит учетной записи службы просматривать необходимые метаданные о вашем пространстве имен project1
через Kubernetes REST API:
<# oneagent-metadata-viewer.yaml kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: namespace: project1 name: oneagent-metadata-viewer rules: - apiGroups: [""] resources: ["pods"] verbs: ["get"]
oc -n project1 create -f oneagent-metadata-viewer.yaml
Привяжите Role
к default
учетной записи службы, Role
чтобы действие вступило в силу:
oc -n project1 policy add-role-to-user oneagent-metadata-viewer --role-namespace="project1" -z default
В качестве альтернативы OpenShift также позволяет привязать Role
ко всем учетным записям служб в проекте.
oc -n project1 policy add-role-to-group oneagent-metadata-viewer --role-namespace="project1" system:serviceaccounts:project1
Ваши ярлыки OpenShift будут автоматически прикреплены как теги Kubernetes ко всем отслеживаемым процессам OpenShift в вашей среде АппОптима (см. Пример ниже).