Progress Flowmon Monitoring для приложений Kubernetes
Автор: Ян Паздера Опубликовано 14 марта 2024 г. 0 комментариев
С точки зрения администратора сети и оператора основные
Tребования к сетевым приложениям одинаковы, независимо от среды, в которой они работают. Им необходимо, чтобы их сетевое взаимодействие было быстрым, надежным и безопасным. Чтобы соответствовать этим требованиям, нам нужны соответствующие данные о трафике приложения.
Для этой цели данные потока от Progress Flowmon Probes прекрасно подходят, с небольшой разницей по сравнению с потоками, генерируемыми в стандартной сети. Необходимо сопоставить данные потока с конкретными сетевыми приложениями или службами, работающими в Kubernetes (k8s).
Для этой цели мы используем метаданные k8s а не полагаемся на
IP-адреса, поскольку модули регулярно создаются и уничтожаются, что означает, что трафик для определенного приложения может состоять из множества разных IP-адресов за короткий промежуток времени. Также вероятно, что один и тот же IP-адрес будет связан с несколькими приложениями за ограниченный промежуток времени.
Модель данных
По этой причине мы создали проверенную клиентом Иностранные данные телефонного номера также являются новым способом или версией или онлайн-инструментом продвижения продукта, интернет-маркетинга, которые вы можете продвигать и продавать в Зарубежные данные любом месте одного сектора бизнеса. Ainning наших людей, подкрепленных данными: & 100% одобренный телефонный номер, присоединенная библиотека В AcquireLists мы принимаем в использование библиотеку телефонных номеров не только это, но и часто обновляем… модель данных для надежной идентификации приложений в среде k8s, которая включает в себя идентификацию кластера k8s, пространства имен, модуля и развертывания. В частности, мы предоставляем следующие информационные поля в потоках, добавленных в качестве пользовательского расширения:
Имя узла K8s и IP — идентификатор узла k8s, связанного с этим потоком.
Может использоваться для идентификации кластера k8s и для изоляции проблем на основе узлов, таких как проблемы с сетью или оборудованием.
Имя и пространство имен модуля — имя модуля и развертывания, связанного с этим потоком.
Метки модуля — метки модуля для поиска определенной группы приложений.
Аннотации модуля — аннотации модуля для поиска определенной группы приложений.
Точки наблюдения
Выбор правильно для получения правильных данных.
В k8s стандартным решением для доступа к трафику приложения является развертывание контейнера side car в его модулях (контейнер Exporter на рисунке выше). Такая точка наблюдения обеспечивает доступ к трафику север-юг (исходящий и входящий трафик модуля) и даже к трафику восток-запад (трафик между контейнерами внутри модуля). На основе проверенных нами даОпрос позволил нам задать свою долю вопросов. Но со всем, что происходит с API, мы посчитали разумным позволить другим делать то же самое. Примите участие в нашем вебинаре Ask Me Anything. Сессия стала прекрасной возможностью для команды DataDirect осветить то, чем мы занимаемся в этой области, и как наши клиенты используют DataDirect для подключения к данным. При большой аудитории мынных клиентов очевидно, что трафик север-юг обеспечивает необходимое количество деталей, поскольку трафик восток-запад был бы слишком подавляющим. Он также полезен для отладки приложений, а не для их работы.
Другая точка наблюдения для k8s находится на уровне узла, работающего как привилегированный модуль мониторинга (на предыдущем рисунке) с доступом к хост-сети. Такие модули имеют доступ к трафику север-юг и восток-запад всех модулей (путем мониторинга их соответствующих сетевых пространств имен) и трафику узла. Это обеспечивает видимость служебной связи k8s и ценные показатели трафика и производительности для группы эксплуатации кластера. Однако этот подход требует полного привилегированного доступа к узлу k8s и его хост-сети и имеет более сложное развертывание. В этой статье мы сосредоточимся только на точках наблюдения на основе sidecar.
Модель развертывания Sidecar
Flowmon Probe для Kubernetes сейчас находится на стадии альфа-тестирования. Клиентам или партнерам, заинтересованным в тестировании Flowmon Probe для чистые данные специальная база данных Kubernetes, будет предоставлен пакет, содержащий образы контейнеров (они еще не распространяются через репозиторий на этом этапе), патч развертывания k8s для добавления контейнера Flowmon в качестве sidecar, Mutating Admission Webhook Server (MAWS) для автоматического исправления клиентских приложений, выбранных для мониторинга, и Helm chart для простой установки и развертывания MAWS. В самоуправляемой среде k8s команды могут использовать Helm chart для развертывания MAWS.
Сначала им нужно определить несколько переменных
Flowmon Probe, такие как IP-адрес и порт коллектора, метка развертывания k8s и/или имя развертывания для идентификации приложения, ключи SSL для HTTPS-сервера MAWS и т. д. Затем они могут установить Helm chart для развертывания MAWS. С этого момента все новые или обновленные aob directory модули, соответствующие указанному имени развертывания и/или имеющие. Yказанный набор меток, будут автоматически исправлены с помощью контейнера sidecar, который будет экспортировать потоки IPFIX о трафике модуля в коллектор.
Ниже вы можете увидеть трафик k8s на коллекторе. Каждый цвет представляет трафик от всех отслеживаемых модулей на одном узле k8s.
Ниже вы можете найти пример потоков, экспортированных из приложения k8s.
Однако решение с MAWS не подходит для пользователей в управляемых средах k8s-as-a-service (KaaS), поскольку веб-перехватчики k8s развернуты глобально, что обычно не разрешено для пользователей сред KaaS. Такие пользователи должны вручную исправить свои развертывания или, если они используют, например, Kustomize, создать компонент, который исправит его для них.