Модуль community.grafana.grafana_datasource — управление источниками данных Grafana
Примечание
Этот модуль входит в коллекцию community.grafana (версия 2.3.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.grafana.
Чтобы использовать её в плейбуке, укажите: community.grafana.grafana_datasource.
Краткое описание
- Создание, обновление и удаление источников данных Grafana через API.
Параметры
Параметр | Комментарии |
|---|---|
access string | Режим доступа для этого источника данных. Варианты:
|
additional_json_data dictionary | Определённые данные используются для jsonData источника данных Данные могут быть переопределены параметрами, заданными явно (например, zabbix_user) По умолчанию: |
additional_secure_json_data dictionary | Определённые данные используются для secureJsonData источника данных Данные могут быть переопределены параметрами, заданными явно (например, tls_client_cert) Сохранено как защищённые данные; см. По умолчанию: |
alertmanager_handle_grafana_alerts boolean | Следует ли Grafana отправлять оповещения в этот alertmanager. Варианты:
|
alertmanager_implementation string | Реализация, которую следует задать для типа источника данных alertmanager. Варианты:
|
aws_access_key string | Ключ доступа AWS для типа источника данных CloudWatch, когда Сохранено как защищённые данные; см. По умолчанию: |
aws_assume_role_arn string | ARN роли AWS IAM, которую следует принять для типа источника данных CloudWatch, когда По умолчанию: |
aws_auth_type string | Тип аутентификации AWS для типа источника данных CloudWatch (authType в API Grafana) Варианты:
|
aws_credentials_profile string | Профиль учётных данных AWS для типа источника данных CloudWatch, когда По умолчанию: |
aws_custom_metrics_namespaces string | Пространства имён пользовательских метрик для типа источника данных CloudWatch |
aws_default_region string | Регион AWS по умолчанию для типа источника данных CloudWatch Варианты:
|
aws_secret_key string | Секретный ключ AWS для типа источника данных CloudWatch, когда Сохранено как защищённые данные; см. По умолчанию: |
azure_client string | Идентификатор приложения/клиента для регистрации приложения Azure AD, используемый для аутентификации. |
azure_cloud string | Национальное облако для вашей учётной записи Azure Варианты:
|
azure_secret string | Секрет клиента приложения для регистрации приложения Azure AD, используемый для аутентификации |
azure_tenant string | Идентификатор каталога/тенанта для регистрации приложения Azure AD, используемый для аутентификации |
basic_auth_password string | Пароль для базовой аутентификации источника данных, когда Сохранено как защищённые данные; см. |
basic_auth_user string | Имя пользователя для базовой аутентификации источника данных. Задание этого параметра вместе с basic_auth_password включает базовую аутентификацию. |
client_cert path | Файл цепочки сертификатов в формате PEM для аутентификации клиента SSL. Этот файл также может содержать ключ; если ключ включён, параметр client_key не требуется |
client_key path | Файл в формате PEM, содержащий ваш закрытый ключ для аутентификации клиента SSL. Если client_cert содержит и сертификат, и ключ, этот параметр не требуется. |
database string | Имя базы данных для источника данных. Этот параметр обязателен, если По умолчанию: |
ds_type string | Тип источника данных. Обязателен, если Варианты:
|
ds_url string | URL источника данных. Обязателен, если |
enforce_secure_data boolean | По умолчанию защищённые данные не обновляются (см. примечания!) Чтобы обновить защищённые данные, необходимо включить этот параметр! При включении этого параметра задача всегда будет сообщать changed=True Варианты:
|
es_version string | Версия Elasticsearch (только для Версия 56 предназначена для Elasticsearch 5.6+, где можно указать параметр Варианты:
|
grafana_api_key string | Ключ API Grafana. Если задан, |
interval string | Для Варианты:
|
is_default boolean | Сделать этот источник данных источником по умолчанию. Варианты:
|
max_concurrent_shard_requests integer | Начиная с Elasticsearch 5.6 можно указать максимальное количество параллельных запросов к шардам. По умолчанию: |
name string / обязательный | Имя источника данных. |
org_id integer | Идентификатор организации Grafana, в которой следует создать источник данных. Не используется, если задан Не может использоваться одновременно с По умолчанию: |
org_name string | Имя организации Grafana, в которой следует создать источник данных. Не используется, если задан Не может использоваться одновременно с |
password string | Пароль источника данных. Сохранено как защищённые данные; см. По умолчанию: |
sslmode string | Режим SSL для типа источника данных Варианты:
|
state string | Состояние источника данных Варианты:
|
time_field string | Имя поля времени в источнике данных Elasticsearch. Например, По умолчанию: |
time_interval string | Минимальный интервал группировки для источников данных Например, |
tls_ca_cert string | Сертификат центра сертификации TLS для самоподписанных сертификатов. Используется, только если заданы Сохранено как защищённые данные; см. |
tls_client_cert string | Клиентский сертификат TLS. Если заданы Начинается с ----- BEGIN CERTIFICATE ----- Сохранено как защищённые данные; см. |
tls_client_key string | Закрытый ключ клиента TLS Начинается с ----- BEGIN RSA PRIVATE KEY ----- Сохранено как защищённые данные; см. |
tls_servername string | Имя сервера используется для проверки имени хоста в полученном сертификате |
tls_skip_verify boolean | Пропустить проверку сертификата TLS источника данных. Варианты:
|
trends boolean | Использовать ли тренды для типа источника данных zabbix. Варианты:
|
tsdb_resolution string | Разрешение времени opentsdb. Варианты:
|
tsdb_version integer | Версия opentsdb. Используйте Варианты:
|
uid string | UID источника данных. |
url псевдонимы: grafana_url string / обязательный | URL Grafana. |
url_password псевдонимы: grafana_password string | Пароль Grafana для аутентификации через API. По умолчанию: |
url_username псевдонимы: grafana_user string | Имя пользователя Grafana для аутентификации через API. По умолчанию: |
use_proxy boolean | Если Варианты:
|
user string | Имя пользователя для входа в источники данных influxdb. По умолчанию: |
validate_certs boolean | Если Устанавливайте это значение в Варианты:
|
with_credentials boolean | Следует ли отправлять учетные данные, например cookie или заголовки авторизации, с межсайтовыми запросами. Варианты:
|
zabbix_password string | Пароль для API Zabbix |
zabbix_user string | Пользователь для API Zabbix |
Примечания
Примечание
- Защищенные данные шифруются с помощью API Grafana, поэтому их нельзя сравнить при последующих запусках. Чтобы обойти это ограничение, защищенные данные не обновляются после первоначального создания! Чтобы принудительно обновить защищенные данные, необходимо задать enforce_secure_data=True.
- Обратите внимание: поскольку
enforce_secure_dataвсегда сообщает changed=True, можно выполнить одну задачу для обновления источника данных без защищенных данных, а в отдельном плейбуке/задаче изменить защищенные данные. Так рабочий процесс не будет нарушен.
Примеры
---
- name: Create elasticsearch datasource
community.grafana.grafana_datasource:
name: "datasource-elastic"
grafana_url: "https://grafana.company.com"
grafana_user: "admin"
grafana_password: "xxxxxx"
org_id: "1"
ds_type: "elasticsearch"
ds_url: "https://elastic.company.com:9200"
database: "[logstash_]YYYY.MM.DD"
basic_auth_user: "grafana"
basic_auth_password: "******"
time_field: "@timestamp"
time_interval: "1m"
interval: "Daily"
es_version: 56
max_concurrent_shard_requests: 42
tls_ca_cert: "/etc/ssl/certs/ca.pem"
- name: Create influxdb datasource
community.grafana.grafana_datasource:
name: "datasource-influxdb"
grafana_url: "https://grafana.company.com"
grafana_user: "admin"
grafana_password: "xxxxxx"
org_id: "1"
ds_type: "influxdb"
ds_url: "https://influx.company.com:8086"
database: "telegraf"
time_interval: ">10s"
tls_ca_cert: "/etc/ssl/certs/ca.pem"
- name: Create influxdbv2 datasource using fluxql
community.grafana.grafana_datasource:
name: "datasource-influxdb-flux"
grafana_url: "https://grafana.company.com"
grafana_user: "admin"
grafana_password: "xxxxxx"
org_id: "1"
ds_type: "influxdb"
ds_url: "https://influx.company.com:8086"
additional_json_data:
version: "Flux"
organization: "organization"
defaultBucket: "bucket"
tlsSkipVerify: false
additional_secure_json_data:
token: "token"
- name: Create postgres datasource
community.grafana.grafana_datasource:
name: "datasource-postgres"
grafana_url: "https://grafana.company.com"
grafana_user: "admin"
grafana_password: "xxxxxx"
org_id: "1"
ds_type: "postgres"
ds_url: "postgres.company.com:5432"
database: "db"
user: "postgres"
sslmode: "verify-full"
additional_json_data:
postgresVersion: 12
timescaledb: false
additional_secure_json_data:
password: "iampgroot"
- name: Create cloudwatch datasource
community.grafana.grafana_datasource:
name: "datasource-cloudwatch"
grafana_url: "https://grafana.company.com"
grafana_user: "admin"
grafana_password: "xxxxxx"
org_id: "1"
ds_type: "cloudwatch"
ds_url: "http://monitoring.us-west-1.amazonaws.com"
aws_auth_type: "keys"
aws_default_region: "us-west-1"
aws_access_key: "speakFriendAndEnter"
aws_secret_key: "mel10n"
aws_custom_metrics_namespaces: "n1,n2"
- name: grafana - add thruk datasource
community.grafana.grafana_datasource:
name: "datasource-thruk"
grafana_url: "https://grafana.company.com"
grafana_user: "admin"
grafana_password: "xxxxxx"
org_id: "1"
ds_type: "sni-thruk-datasource"
ds_url: "https://thruk.company.com/sitename/thruk"
basic_auth_user: "thruk-user"
basic_auth_password: "******"
# handle secure data - workflow example
# this will create/update the datasource but dont update the secure data on updates
# so you can assert if all tasks are changed=False
- name: create prometheus datasource
community.grafana.grafana_datasource:
name: openshift_prometheus
ds_type: prometheus
ds_url: https://openshift-monitoring.company.com
access: proxy
tls_skip_verify: true
additional_json_data:
httpHeaderName1: "Authorization"
additional_secure_json_data:
httpHeaderValue1: "Bearer ihavenogroot"
# in a separate task or even play you then can force to update
# and assert if each datasource is reporting changed=True
- name: update prometheus datasource
community.grafana.grafana_datasource:
name: openshift_prometheus
ds_type: prometheus
ds_url: https://openshift-monitoring.company.com
access: proxy
tls_skip_verify: true
additional_json_data:
httpHeaderName1: "Authorization"
additional_secure_json_data:
httpHeaderValue1: "Bearer ihavenogroot"
enforce_secure_data: true
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
datasource dictionary | Источник данных, созданный или обновленный модулем Возвращается: если состояние изменилось Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/grafana/grafana_datasource_module.html