Источники#
В состав коллекции ansible.eda
входят следующие расширения, позволяющие работать с источниками событий:
alertmanager
#
Источник alertmanager
позволяет обращаться к точкам доступа API системы мониторинга Prometheus Alertmanager.
Источник предоставляет следующие настройки:
host
– IP-адрес или URL веб-обработчика (webhook) Alertmanager.Значение по умолчанию –
localhost
.port
– номер порта веб-обработчика Alertmanager.Значение по умолчанию –
5000
.data_alerts_path
– выражение в формате JSONPath для поиска данных для оповещения.Значение по умолчанию –
alerts
.data_host_path
– JSONPath внутри данных оповещения для поиска узла, являющегося источником данных.Значение по умолчанию –
labels.instance
.data_path_separator
– разделитель, используемый при разбореdata_alerts_path
иdata_host_path
.Значение по умолчанию –
.
.Пример использования
data_path_separator
Допустим, Alertmanager отправляет следующий JSON:
Если
data_alerts_path = "alerts"
иdata_host_path = "labels.instance"
, аdata_path_separator = "."
, то система извлечет узелserver1.example.com
из путиalerts[0].labels.instance
. Если быdata_path_separator
был, например,/
, то тот же путь записывался бы какalerts/0/labels/instance
.В
data_path_separator
можно задать любой символ, который будет использоваться для разделения путей внутри JSON:skip_original_data
– управляет добавлением исходных данных в очередь.Возможные значения:
true
– в очередь добавляются только данные оповещения.false
– в очередь последовательно добавляются как полученные исходные данные, так и каждый разобранный элемент оповещения.
Значение по умолчанию –
false
.
azure_service_bus
#
Источник azure_service_bus
позволяет получать события из службы Azure Service Bus.
Источник предоставляет следующие настройки:
conn_str
– строка подключения к Azure Service Bus.Обязательный параметр.
queue_name
– название очереди сообщений.Обязательный параметр.
logging_enable
– журналирование.true
– включено;false
– включено.
Значение по умолчанию –
true
.
file
#
Источник file
загружает факты Ansible из файлов YAML при запуске и при изменении содержимого файлов.
Список файлов укажите в настройке files
.
file_watch
#
Источник file_watch
отслеживает изменения в файловой системе.
Источник предоставляет следующие настройки:
path
– каталог для наблюдения за изменениями.Обязательный параметр.
ignore_regexes
– список регулярных выражений для игнорирования изменений. Файлы и каталоги, имена которых удовлетворяют указанному выражению, не отслеживаются.recursive
– отслеживание изменений не только в указанном каталоге, но и в его подкаталогах.Обязательный параметр.
kafka
#
Источник kafka
позволяет получать события из брокера Kafka.
Источник предоставляет следующие настройки:
host
– IP-адрес сервера Kafka.Обязательный параметр.
port
– порт сервера Kafka.Обязательный параметр.
cafile
– путь к файлу сертификата, используемого для подписи сертификатов брокеров Kafka.certfile
– путь к файлу клиентского сертификата, содержащему сертификат клиента и сертификаты CA, необходимые для подтверждения подлинности.keyfile
– путь к файлу приватного ключа клиента.password
– пароль для загрузки цепочки сертификатов.check_hostname
– включение проверки имени узла для SSL.Значение по умолчанию –
true
.verify_mode
– режим проверки сертификатов других участников.Возможные значения:
CERT_NONE
– проверка сертификатов отключена. Соединение устанавливается без проверки подлинности сертификата сервера.CERT_OPTIONAL
– если сервер предоставляет сертификат, то он будет проверен. Если сертификат недействителен или отсутствует, соединение все равно будет установлено.CERT_REQUIRED
– сертификат сервера должен быть предоставлен и проверен. Если сертификат отсутствует или недействителен, соединение разрывается.
Значение по умолчанию –
CERT_REQUIRED
.encoding
— кодировка сообщений.Значение по умолчанию –
utf-8
.topic
– название топика.group_id
– идентификатор группы Kafka.Значение по умолчанию –
null
.offset
– начальная позиция чтения.Возможные значения:
latest
– контроллер EDA начнет чтение с последнего сообщения.earliest
– контроллер EDA начнет чтение с самого раннего сообщения.
Значение по умолчанию –
latest
.security_protocol
– протокол безопасности для связи с брокерами.Возможные значения:
PLAINTEXT
– незашифрованный протокол для связи с Kafka-брокерами, не обеспечивающий аутентификацию или шифрование данных.SSL
– протокол с шифрованием данных с использованием SSL/TLS, обеспечивающий конфиденциальность.SASL_PLAINTEXT
– протокол с аутентификацией через SASL, но без шифрования данных.SASL_SSL
– протокол с аутентификацией через SASL и шифрованием данных через SSL/TLS, обеспечивающий максимальную безопасность соединения.
Значение по умолчанию –
PLAINTEXT
.sasl_mechanism
– механизм аутентификации при настройкеsecurity_protocol
.Возможные значения:
PLAIN
– название учетной записи и пароль передаются в виде обычного текста.GSSAPI
– использование Kerberos для централизованного управления доступом.SCRAM-SHA-256
– для защиты паролей используется хеширование по алгоритму SHA-256.SCRAM-SHA-512
– для защиты паролей используется хеширование по алгоритму SHA-512.OAUTHBEARER
– использование OAuth 2.0 и токенов доступа для интеграции с внешними системами.
Значение по умолчанию –
PLAIN
.sasl_plain_username
– название учетной записи для аутентификации SASL PLAIN.sasl_plain_password
– пароль для аутентификации SASL PLAIN.
range
#
Источник range
генерирует события с увеличивающимся индексом.
Источник предоставляет единственную настройку limit
, в которой необходимо указать верхний предел диапазона индекса.
Значение по умолчанию – 0
.
tick
#
Источник tick
генерирует события с увеличивающимся индексом без завершения.
Источник предоставляет единственную настройку delay
, в которой необходимо указать задержку (в секундах) между событиями.
Значение по умолчанию – 1
.
url_check
#
Источник url_check
проверяет URL-адреса и создает события: event.successful = "up"
при успехе (код 200) и event.successful = "down"
при ошибке.
Источник предоставляет следующие настройки:
urls
– список URL-адресов для опроса.Обязательный параметр.
delay
– задержка (в секундах) между опросами.Значение по умолчанию –
1
.verify_ssl
– проверка SSL-сертификата.Значение по умолчанию –
true
.
webhook
#
Источник webhook
получает события через веб-обработчики.
Содержимое, присланное через webhook
, доступно в событии через поле payload
.
Источник предоставляет следующие настройки:
host
– IP-адрес сетевого интерфейса, на котором контейнер с источником ожидает входящие соединения.Значение по умолчанию –
0.0.0.0
(источник слушает все сетевые интерфейсы).port
– порт для прослушивания.Обязательный параметр.
token
– токен аутентификации, ожидаемый от клиента.certfile
– путь к файлу сертификата для включения TLS.keyfile
– путь к файлу сертификата, используемому вместе сcertfile
.password
– пароль для загрузки цепочки сертификатов.cafile
– путь к файлу с сертификатами удостоверяющего центра для проверки клиентских сертификатов.capath
– путь к каталогу с сертификатами удостоверяющего центра (используется для mTLS).hmac_secret
– секретный ключ HMAC для проверки полезной нагрузки клиента.hmac_algo
– алгоритм HMAC для вычисления хеша полезной нагрузки.Примечание
Полный список возможных значений определяется используемой версией библиотеки
hashlib
и хранится в переменнойalgorighms_available
.Значение по умолчанию –
sha256
.hmac_header
– заголовок HMAC, отправляемый клиентом с подписью полезной нагрузки.Значение по умолчанию –
x-hub-signature-256
.hmac_format
– формат подписи HMAC.Возможные значения:
hex
;base64
.
Значение по умолчанию –
hex
.