Управляйте своими OpenTelemetry Collectors с помощью Fleet Management в Grafana Cloud

Источник: Grafana Labs•

Управляйте своими OpenTelemetry Collectors с помощью Fleet Management в Grafana Cloud

OpAMP support in Fleet Management helps organizations running upstream collector distributions adopt centralized management without first migrating their collectors to Alloy.

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

Fleet Management в Grafana Cloud объединяет эти задачи в одном месте. С поддержкой протокола Open Agent Management Protocol (OpAMP) теперь общедоступно, вы можете включить поддерживаемые дистрибутивы OpenTelemetry Collector в Fleet Management, продолжая использовать язык конфигурации OTel и компоненты, которые вы уже знаете.

Мы начали с Grafana Alloy, дистрибутива OpenTelemetry Collector от Grafana. Поддержка OpAMP расширяет этот рабочий процесс управления для организаций, использующих дистрибутивы OTel Collector upstream, так что вы можете принять централизованное управление, не переходя сначала на Alloy.

Сохраняйте свою конфигурацию OTel, управляйте ею по всему флоту

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

Fleet Management позволяет вам определить эти конвейеры в OTel YAML и сопоставить их с коллекторами, которые должны их выполнять. Вы можете централизованно обновлять общий конвейер и применять его к соответствующим коллекторам, сокращая работу по поддержке конфигурации отдельно для каждого развертывания.

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

Вы также получаете видимость коллектора, запускающего эти конвейеры. При регистрации OTel Collector Fleet Management автоматически настраивает его на отправку метрик самонаблюдения, логов и трассировок в Grafana Cloud, независимо от его операционной системы или режима развертывания. Для коллекторов, работающих вне Kubernetes, мы также прикрепляем конвейер мониторинга хоста, чтобы вы могли исследовать базовую инфраструктуру вместе с коллектором.

Эти конвейеры мониторинга остаются под вашим контролем. Как и любой другой конвейер, вы можете их изменить, отключить или отправлять их данные в другой бекенд.

Сделайте конфигурацию OTel работающей в нескольких конвейерах

Централизованное управление OTel Collectors требует более, чем просто принятия YAML. Коллектор может получать несколько конвейеров Fleet Management вместе с его локальной конфигурацией, и эти части должны работать вместе как одна эффективная конфигурация.

Это отличается от того, как Alloy обрабатывает конфигурацию. Компоненты Alloy определяются в блоках и соединяются ссылками на их экспорты. OTel Collectors определяют компоненты на верхнем уровне конфигурации и ссылаются на них из одного или нескольких телеметрических конвейеров.

Alloy также держит локальную и удаленную конфигурацию отдельно. OTel Collectors объединяют локальную и удаленную конфигурацию в одну эффективную конфигурацию. Когда несколько источников определяют компонент с тем же именем, одно определение может переопределить другое, изменяя поведение результирующих конвейеров.

Это создает практическую проблему для переиспользуемой конфигурации. Два независимо написанных конвейера могут использовать одно и то же имя компонента, даже если каждый ожидает, что компонент будет вести себя по-разному. Командам не следует координировать каждое имя компонента во всех их конвейерах Fleet Management, чтобы использовать их вместе.

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

Это позволяет вам управлять удаленными конвейерами как отдельными, переиспользуемыми частями, пока Fleet Management обрабатывает их объединение для коллектора. Вы можете организовать конфигурацию вокруг того, что делает каждый конвейер и где он принадлежит, без ручного составления отдельного файла конфигурации для каждой комбинации конвейеров.

Используйте шаблон развертывания, подходящий для вашей инфраструктуры

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

Fleet Management работает через различные шаблоны развертывания коллектора. Для организаций, управляющих большим или смешанным флотом, стоит рассмотреть шаблон шлюза.

Разделите локальный сбор от общей обработки

Шаблон шлюза разделяет сбор на два уровня. Edge-коллекторы собирают телеметрию от сервисов, подов и узлов, затем отправляют ее на шлюзовые коллекторы. Шлюзы применяют общую обработку перед пересылкой телеметрии в бекенд.

Например, вы можете добавить метки команды к метрикам, использовать tail-sample трассировки или фильтровать логи на шлюзе. Хранение этих политик в слое шлюза позволяет управлять общей обработкой, не размещая ту же логику на каждом edge-коллекторе.

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

Внедрите шлюзы OTel в смешанный флот

Ваши edge-агенты и шлюзы не обязаны использовать одно и то же программное обеспечение. Если вы уже запускаете такие программы, как Fluent Bit или Telegraf, вы можете оставить эти агенты на edge и отправлять телеметрию на шлюзы OTel, используя совместимые протоколы.

Затем вы можете использовать Fleet Management для управления поддерживаемыми шлюзами OTel и их общей конфигурацией обработки. Это предоставляет путь внедрения для команд, которые хотят ввести OpenTelemetry, не заменяя каждый существующий агент сразу.

Шаблон шлюза не обязателен для Fleet Management. Независимо от того, отправляют ли ваши коллекторы напрямую в бекенд или обрабатывают телеметрию через слой шлюза, поддержка OpAMP позволяет вам включить поддерживаемые OTel Collectors в общий рабочий процесс управления.

Приведите ваш флот OTel в Fleet Management

Вы можете принять централизованное управление коллектором, сохраняя при этом ваши дистрибутивы OTel, конвейеры YAML и модель развертывания. Fleet Management приносит целевую конфигурацию и здоровье коллектора в Grafana Cloud, с поддержкой Terraform для команд, которые хотят управлять рабочим процессом как кодом.

Для начала зарегистрируйте OTel Collector, назначьте ему конвейер YAML и просмотрите его состояние. Оттуда вы можете расширить тот же рабочий процесс на все коллекторы и окружения, которые вы уже используете.

Grafana Assistant — самый простой способ начать работу с метриками, логами, трассировками, панелями и многим другим в Grafana Cloud. У нас есть щедрый бессрочный бесплатный уровень и планы для каждого случая использования. Зарегистрируйтесь бесплатно сейчас!

Tags

О чём эта статья

Ещё в разделе «Разработка ПО»

Все →

Ещё от Grafana Labs