Настройка источника данных OpenTSDB
В этом документе объясняется, как настроить источник данных OpenTSDB в Grafana.
Перед началом
Прежде чем настраивать источник данных OpenTSDB, убедитесь, что у вас есть:
- Разрешения Grafana: роль администратора организации для добавления источников данных.
- Экземпляр OpenTSDB: запущенный сервер OpenTSDB (рекомендуется версия 2.1 или более поздняя).
- Сетевой доступ: сервер Grafana может достичь конечной точки HTTP API OpenTSDB (порт по умолчанию 4242).
- Метрики в OpenTSDB: для работы автодополнения метрики должны существовать в вашей базе данных OpenTSDB.
Добавление источника данных
Чтобы добавить и настроить источник данных OpenTSDB:
- Нажмите Connections в меню слева.
- Нажмите Add new connection.
- Введите
OpenTSDBв строке поиска. - Выберите OpenTSDB.
- Нажмите Add new data source в правом верхнем углу.
- Настройте параметры источника данных, как описано в следующих разделах.
Параметры конфигурации
Следующая таблица описывает доступные параметры конфигурации:
Параметры аутентификации
Настройте аутентификацию, если её требует ваш сервер OpenTSDB:
Параметры OpenTSDB
Настройте эти параметры в соответствии с версией и конфигурацией вашего сервера OpenTSDB:
Возможности, зависящие от версии
Параметр версии включает различные возможности запросов в Grafana:
Выберите версию, соответствующую вашему серверу OpenTSDB. Если вы не уверены, проверьте версию OpenTSDB с помощью конечной точки /api/version.
Безопасный прокси SOCKS
Источник данных OpenTSDB поддерживает подключение через безопасный прокси SOCKS5. Используйте это, чтобы достичь сервера OpenTSDB, размещённого в другой сети, отличной от Grafana, не открывая его в публичный интернет. Прокси настраивается на уровне экземпляра Grafana. Инструкции по настройке см. в разделе Configure a data source SOCKS5 connection proxy.
Проверка соединения
Нажмите Save & test, чтобы убедиться, что Grafana может подключиться к вашему серверу OpenTSDB. Успешная проверка подтверждает, что URL указан верно и сервер отвечает.
Если проверка не прошла, см. раздел Устранение неполадок в поисках распространённых проблем и их решений.
Провижининг источника данных
Вы можете определить и настроить источник данных в YAML-файлах в рамках системы провижининга Grafana. Подробнее о провижининге и доступных параметрах конфигурации см. в разделе Provisioning Grafana.
Пример YAML
Следующий пример провижинит источник данных OpenTSDB:
apiVersion: 1
datasources:
- name: OpenTSDB
type: opentsdb
access: proxy
url: http://localhost:4242
jsonData:
# OpenTSDB version: 1 = <=2.1, 2 = 2.2, 3 = 2.3, 4 = 2.4
tsdbVersion: 3
# Resolution: 1 = second, 2 = millisecond
tsdbResolution: 1
# Maximum results for suggest/lookup API calls
lookupLimit: 1000
Пример YAML с базовой аутентификацией
Следующий пример провижинит источник данных OpenTSDB с базовой аутентификацией:
apiVersion: 1
datasources:
- name: OpenTSDB
type: opentsdb
access: proxy
url: http://localhost:4242
basicAuth: true
basicAuthUser: <USERNAME>
jsonData:
tsdbVersion: 3
tsdbResolution: 1
lookupLimit: 1000
secureJsonData:
basicAuthPassword: <PASSWORD>
Пример YAML с пользовательскими заголовками
Следующий пример провижинит источник данных OpenTSDB с пользовательскими HTTP-заголовками:
apiVersion: 1
datasources:
- name: OpenTSDB
type: opentsdb
access: proxy
url: http://localhost:4242
jsonData:
tsdbVersion: 3
tsdbResolution: 1
lookupLimit: 1000
httpHeaderName1: X-Custom-Header
secureJsonData:
httpHeaderValue1: <HEADER_VALUE>
Следующая таблица описывает доступные поля:
Провижининг с помощью Terraform
Вы можете провижинить источник данных OpenTSDB с помощью Terraform и Grafana Terraform provider.
Подробнее о провижининге ресурсов с помощью Terraform см. в документации Grafana as code using Terraform.
Пример Terraform
Следующий пример провижинит источник данных OpenTSDB:
terraform {
required_providers {
grafana = {
source = "grafana/grafana"
version = ">= 2.0.0"
}
}
}
provider "grafana" {
url = "<YOUR_GRAFANA_URL>"
auth = "<YOUR_SERVICE_ACCOUNT_TOKEN>"
}
resource "grafana_data_source" "opentsdb" {
type = "opentsdb"
name = "OpenTSDB"
url = "http://localhost:4242"
json_data_encoded = jsonencode({
# OpenTSDB version: 1 = <=2.1, 2 = 2.2, 3 = 2.3, 4 = 2.4
tsdbVersion = 3
# Resolution: 1 = second, 2 = millisecond
tsdbResolution = 1
# Maximum results for suggest/lookup API calls
lookupLimit = 1000
})
}
Пример Terraform с базовой аутентификацией
Следующий пример провижинит источник данных OpenTSDB с базовой аутентификацией:
resource "grafana_data_source" "opentsdb_auth" {
type = "opentsdb"
name = "OpenTSDB"
url = "http://localhost:4242"
basic_auth_enabled = true
basic_auth_username = "<USERNAME>"
json_data_encoded = jsonencode({
tsdbVersion = 3
tsdbResolution = 1
lookupLimit = 1000
})
secure_json_data_encoded = jsonencode({
basicAuthPassword = "<PASSWORD>"
})
}
Замените следующие заполнители:
<YOUR_GRAFANA_URL>: URL вашего экземпляра Grafana (например,https://your-org.grafana.netдля Grafana Cloud)<YOUR_SERVICE_ACCOUNT_TOKEN>: токен сервисной учётной записи с разрешениями на источники данных<USERNAME>: имя пользователя для базовой аутентификации<PASSWORD>: пароль для базовой аутентификации
Дальнейшие шаги
Теперь, когда вы настроили OpenTSDB, вы можете:
- Запрашивать данные OpenTSDB, чтобы строить дашборды и визуализации
- Использовать переменные шаблонов для создания динамических, переиспользуемых дашбордов
- Добавлять аннотации, чтобы накладывать события на ваши графики
- Настроить алертинг, чтобы получать уведомления при пересечении метриками порогов
- Устранять неполадки, если вы столкнётесь с проблемами