Прием данных из Splunk Universal Forwarder в Azure Data Explorer
Внимание
Этот соединитель можно использовать в аналитике в режиме реального времени в Microsoft Fabric. Используйте инструкции в этой статье со следующими исключениями:
- При необходимости создайте базы данных с помощью инструкций в статье "Создание базы данных KQL".
- При необходимости создайте таблицы с помощью инструкций в статье "Создание пустой таблицы".
- Получение URI запроса или приема с помощью инструкций в URI копирования.
- Выполнение запросов в наборе запросов KQL.
Splunk Universal Forwarder — это упрощенная версия программного обеспечения Splunk Enterprise , которая позволяет одновременно получать данные из многих источников. Он предназначен для сбора и пересылки данных журнала и данных компьютера из различных источников на центральный сервер Splunk Enterprise или развертывание Splunk Cloud. Splunk Universal Forwarder служит агентом, упрощающим процесс сбора и пересылки данных, что делает его важным компонентом в развертывании Splunk. Azure Data Explorer — это быстрая и высокомасштабируемая служба для изучения данных журналов и телеметрии.
Из этой статьи вы узнаете, как использовать соединитель универсального пересылки Kusto Splunk для отправки данных в таблицу в кластере. Сначала вы создаете сопоставление таблиц и данных, а затем направляете Splunk для отправки данных в таблицу, а затем проверяете результаты.
Необходимые компоненты
- Splunk Universal Forwarder скачан на том же компьютере, где возникают журналы.
- Кластер и база данных Azure Data Explorer. Создайте кластер и базу данных.
- Docker , установленный в системе с соединителем Универсального пересылки Kusto Splunk.
- Субъект-служба Microsoft Entra. Создайте субъект-службу Microsoft Entra.
Создание таблицы Azure Data Explorer
Создайте таблицу для получения данных из Splunk Universal Forwarder и предоставьте субъекту-службе доступ к этой таблице.
На следующих шагах вы создадите таблицу SplunkUFLogs
с одним столбцом (RawText
). Это связано с тем, что Splunk Universal Forwarder отправляет данные в необработанном текстовом формате по умолчанию. В редакторе запросов веб-интерфейса можно выполнять следующие команды.
Создайте таблицу:
.create table SplunkUFLogs (RawText: string)
Убедитесь, что таблица
SplunkUFLogs
создана и пуста:SplunkUFLogs | count
Используйте субъект-службу из необходимых компонентов, чтобы предоставить разрешение на работу с базой данных, содержащей таблицу.
.add database YOUR_DATABASE_NAME admins ('aadapp=YOUR_APP_ID;YOUR_TENANT_ID') 'Entra service principal: Splunk UF'
Настройка универсального средства пересылки Splunk
При скачивании Splunk Universal Forwarder откроется мастер настройки средства пересылки.
В мастере задайте индексатору получения указатель на систему, на котором размещен соединитель Универсального пересылки Kusto Splunk. Введите
127.0.0.1
имя узла или IP-адрес и9997
порт. Оставьте конечный индексатор пустым.Дополнительные сведения см. в разделе "Включение приемника для Splunk Enterprise".
Перейдите в папку, в которой установлен универсальный сервер пересылки Splunk, а затем в папку /etc/system/local . Создайте или измените файл inputs.conf , чтобы разрешить пересылке читать журналы:
[default] index = default disabled = false [monitor://C:\Program Files\Splunk\var\log\splunk\modinput_eventgen.log*] sourcetype = modinput_eventgen
Дополнительные сведения см. в разделе "Мониторинг файлов и каталогов с помощью inputs.conf".
Перейдите в папку, в которой установлен универсальный сервер пересылки Splunk, а затем в папку /etc/system/local . Создайте или измените файл outputs.conf , чтобы определить расположение для журналов, которое является именем узла и портом системы, в которой размещен соединитель Универсального пересылки Kusto Splunk:
[tcpout] defaultGroup = default-autolb-group sendCookedData = false [tcpout:default-autolb-group] server = 127.0.0.1:9997 [tcpout-server://127.0.0.1:9997]
Дополнительные сведения см. в разделе "Настройка пересылки с помощью outputs.conf".
Перезапустите универсальный сервер пересылки Splunk.
Настройка универсального соединителя Kusto Splunk
Чтобы настроить универсальный соединитель Kusto Splunk для отправки журналов в таблицу Azure Data Explorer:
Скачайте или клонируйте соединитель из репозитория GitHub.
Перейдите в базовый каталог соединителя:
cd .\SplunkADXForwarder\
Измените config.yml , чтобы содержать следующие свойства:
ingest_url: <ingest_url> client_id: <ms_entra_app_client_id> client_secret: <ms_entra_app_client_secret> authority: <ms_entra_authority> database_name: <database_name> table_name: <table_name> table_mapping_name: <table_mapping_name> data_format: csv
Поле Description ingest_url
URL-адрес приема для кластера Azure Data Explorer. Его можно найти в портал Azure в URI приема данных на вкладке "Обзор" кластера. Ее необходимо указать в формате https://ingest-<clusterName>.<region>.kusto.windows.net
.client_id
Идентификатор клиента регистрации приложения Microsoft Entra, созданного в разделе предварительных требований. client_secret
Секрет клиента регистрации приложения Microsoft Entra, созданный в разделе предварительных требований. authority
Идентификатор клиента, который содержит регистрацию приложения Microsoft Entra, созданного в разделе предварительных требований. database_name
Имя базы данных Azure Data Explorer. table_name
Имя целевой таблицы Azure Data Explorer. table_mapping_name
Имя сопоставления данных приема для таблицы. Если у вас нет сопоставления, это свойство можно опустить из файла конфигурации. Вы всегда можете анализировать данные в различных столбцах позже. data_format
Ожидаемый формат данных для входящих данных. Входящие данные в формате необработанного текста, поэтому рекомендуемый формат — csv
это формат, который сопоставляет необработанный текст с нулевым индексом по умолчанию.Создайте образ Docker:
docker build -t splunk-forwarder-listener
Запустите контейнер Docker:
docker run -p 9997:9997 splunk-forwarder-listener
Проверка приема данных в Azure Data Explorer
После запуска docker данные отправляются в таблицу Azure Data Explorer. Вы можете убедиться, что данные приемуются, выполнив запрос в редакторе запросов веб-интерфейса.
Выполните следующий запрос, чтобы проверить прием данных в таблицу:
SplunkUFLogs | count
Выполните следующий запрос, чтобы просмотреть данные:
SplunkUFLogs | take 100