вторник, 21 июня 2016 г.

Splunk. Устанавливаем Splunk DB Connect.

Приветствую, уважаемый читатель!


Для продолжения темы подключения списков публичных прокси-серверов и TOR-серверов к Splunk, необходимо немного расширить его функционал, а конкретнее – научить работать с реляционными базами данных. Экспериментировать будем с СУБД MySQL, а доступ из Splunk будем осуществлять через приложение Splunk DB Connect.





Начнём с настройки Splunk. Для корректной работы с СУБД необходимо выполнить следующие действия:
  • установить на сервер Splunk среду Java Runtime Environment;
  • установить приложение Splunk DB Connect;
  • скачать Java Database Connectivity (JDBC) драйвер для нужной СУБД;
  • прописать учетные данные для подключения к СУБД.


Теперь всё вышеописанное по пунктам J

1)  Необходимо скачать и установить на сервер Java Runtime Environment (скачать можно тут - http://www.oracle.com/technetwork/java/javase/downloads/index.html ).

После установки прописать переменные окружения:
export JAVA_HOME = /usr/lib/jvm/jdk1.8.0/
export JRE_HOME = /usr/lib/jvm/jdk1.8.0/jre


2) Установить само приложение «Splunk DB Connect». Для этого в разделе «Apps» Splunk-сервера нажмите на кнопку «Browse more apps» и в строке поиска вбейте название.

Скачать приложение также можно на сайте Splunk - https://splunkbase.splunk.com/app/2686/#/overview. Для установки приложения из файла нажмите на кнопку «Install app from file» и укажите путь к файлу с приложением.


После установки перезапустите Splunk (/opt/splunk/bin/splunk restart).

3)  После перезагрузки в основной панели управления появится иконка нового приложения.


В самом приложении на вкладке «Settings» необходимо указать каталог с установленной JRE.


4)  Теперь необходимо скачать драйвер для СУБД MySQL и поместить его в директорию - /opt/splunk/etc/apps/splunk_app_db_connect/bin/lib

Скачать драйвер можно тут - http://dev.mysql.com/downloads/connector/j/ . Если всё прошло успешно, то в приложении «Splunk DB Connect» в разделе «Settings» на вкладке «Drivers» вы увидите установленный драйвер.



 5)                  Для успешной работы нам осталось выполнить 2 вещи: создать набор учетных данных для подключения к СУБД и создать подключение к самой СУБД.

Для создания набора учетных данных в приложении «Splunk DB Connect» в разделе «Explorer» кликните на иконку «+» рядом с пунктом «Identities».



Для создания нового подключения к СУБД  в разделе «Explorer» кликните на иконку «+» рядом с пунктом «Connections» и заполните данные для подключения к СУБД (IP,tcp-порт, тип базы данных и учётные данные под которыми цепляться).

Если всё прошло успешно, то появится новое подключение, а в верхней части окна появится заветное «Valid Connection».


Проверить доступность данных в СУБД можно не отходя от кассы J 
Для этого на вкладке «Query» можно сразу вбить SQL-запрос в следующем формате:

SELECT * FROM `<имя БД>`.`<имя таблицы>`  


Вообще, синтаксис splunk-запросов к СУБД немного отличается от привычных SPL-запросов, но об этом в другой раз.

Лирические отступления

Плюсы и минусы подключения СУБД? Плюсы подключения СУБД, думаю, очевидны. Мы получаем ещё один очень мощный источник событий для запросов. Но есть и минусы, например, запросы в БД достаточно долго обрабатываются сервером splunk и Java отъедает очень много оперативной памяти. Если запустить 10-20 тяжёлых SQL-запросов с различными выборками одновременно, то сервер splunk встанет. По этой причине, запросы через DB Connect редко используют в real-time дашбордах. Выход из этого – создание средствами splunk запроса в БД, который выполняется каждые 15 минут и выгружает в csv-файл нужные поля, в дальнейших запросах используются значения этого файла.

Возможности DB Connect? Средствами приложения «Splunk DB Connect» можно не только читать данные из СУБД, но и вносить изменения (Update, Delete, Insert). Для этого в процессе создания соединения с БД не отмечайте галочкой пункт «Readonly».

Комментариев нет:

Отправить комментарий