Потоковая передача syslog в Ключ-АСТРОМ с Fluentd
Потоковая передача syslog в Ключ-АСТРОМ с Fluentd
Рекомендуемый способ загрузки syslog
Используйте потоковую передачу syslog через Fluentd, если вы уже собираете логи с его помощью или если конкретный вариант использования требует дополнительного компонента, например для пересылки логов в разные целевые системы. Если вы хотите воспользоваться преимуществами безопасного, надёжного пограничного компонента с корпоративной поддержкой и управлением жизненным циклом, см. раздел Загрузка syslog с помощью АктивногоШлюза. Если основной задачей является наблюдаемость syslog в системе Linux, рекомендуется развернуть ЕдиныйАгент, который автоматически обнаруживает данные syslog хоста, сохраняет контекст топологии и требует минимальной настройки и обслуживания.
Вы можете отправлять syslog в Ключ-АСТРОМ с помощью Fluentd. Настройте Fluentd для отправки syslog в API загрузки логов Ключ-АСТРОМ.
Возможности
- Syslog — это стандартный протокол для ведения логов сообщений и управления системными логами. Маршрутизаторы, принтеры, хосты, коммутаторы и другие устройства на разных платформах используют Syslog для регистрации активности пользователей, событий жизненного цикла системы и программного обеспечения, состояния или диагностики.
- При сетевом мониторинге удалённый сервер Syslog прослушивает сообщения логов клиента и консолидирует данные логирования, которые затем можно обрабатывать с помощью возможностей управления логами и аналитики Ключ-АСТРОМ на основе ИИ Ключ-АСТРОМ для анализа первопричин.
Конфигурация
Настройте поток от производителя syslog через Fluentd в Ключ-АСТРОМ, выполнив следующие шаги:
- Получите токен API Ключ-АСТРОМ с областью действия
logs.ingest(Ingest Logs). - Разверните Fluentd в соответствии с вашими предпочтениями.
- Разверните Fluentd. Fluentd также может работать как DaemonSet в кластере Kubernetes. Встроенная отказоустойчивость обеспечивает полноту и согласованность данных, даже если Fluentd или служба конечной точки временно недоступны.
- Включите Fluentd для приёма входящих сообщений syslog.
- Плагин ввода
in_syslogпозволяет Fluentd получать записи через протокол Syslog по UDP или TCP. Он включён в ядро Fluentd, поэтому на этом шаге дополнительная установка не требуется.
- Плагин ввода
- Используйте плагин Fluentd Ключ-АСТРОМ для потоковой передачи логов в кластер Ключ-АСТРОМ. Плагин Fluentd Ключ-АСТРОМ с открытым исходным кодом использует API загрузки логов для отправки логов в Ключ-АСТРОМ.
- Настройте ваши устройства на отправку syslog в Fluentd.
Отправка syslog на удалённую конечную точку
В примерах ниже вы можете отправлять syslog на удалённую конечную точку — Fluentd.
Пример 1
Настройте Rsyslog на Linux Ubuntu для пересылки syslog на удалённый сервер Fluentd. Добавьте следующую строку в файл конфигурации демона syslog /etc/rsyslog.conf (протокол UDP):
*.* @<fluentd host IP>:5140
- Конструкция
*.*указывает демону пересылать все сообщения на указанный экземпляр Fluentd, прослушивающий порт 5140. <fluentd host IP> должен указывать на IP-адрес Fluentd. - Если вы используете TCP, введите два символа
@(@@) следующим образом:
*.* @@<fluentd host IP>:5140
Пример 2
Настройте систему F5 BIG-IP для логирования на удалённый сервер syslog (11.x – 17.x). О процедурах настройки удалённого Syslog см. в документации F5 BIG-IP.
Добавление атрибутов к syslog в Fluentd
Платформа программного интеллекта Ключ-АСТРОМ и движок ИИ Ключ-АСТРОМ зависят от контекстно-богатых, качественных данных. Вы можете предоставить контекст для ваших данных, загружаемых через API загрузки логов, который поддерживает набор ключей и семантических атрибутов. Вы также можете предоставить пользовательские атрибуты, не требующие индексации в хранилище данных.
Пример 1
Добавьте атрибут log.source на основе источника syslog в Fluentd. Сообщение syslog часто нуждается в дополнительном контексте для различения источников во время анализа. В этом примере в Fluentd открыты две отдельные конечные точки syslog: одна для syslog Linux, другая для syslog F5. Это помогает декорировать потоки логов значимым атрибутом log.source. Файл конфигурации Fluentd должен выглядеть так:
<source> @type syslog port 5140 bind 0.0.0.0 tag system-linux </source> <source> @type syslog port 5141 bind 0.0.0.0 tag system-f5 </source>
Вам нужно добавить атрибут log.source на основе тега Fluentd.
<filter system-linux.**>@type record_transformer <record> log.source "linux syslogs" </record></filter>
<filter system-f5.**>
@type record_transformer <record> log.source "f5 syslogs" </record></filter>