Настройка grafana с graphite/zabbix/prometheus/mysql/influxdb/elasticsearch/cloudwatch для сбора и отображения метрик в unix/linux

5: Установка и настройка collectd

На этом этапе нужно настроить collectd для сбора метрик системы. collectd – это демон Unix, который собирает, передает и хранит данные о производительности. Он помогает поддерживать обзор доступных ресурсов для обнаружения существующих или потенциальных узких мест.

Сначала включите репозиторий EPEL (Extra Packages for Enterprise Linux):

Установите демон:

После успешной установки пакета будет создан ряд двоичных файлов, общих библиотек и файлов конфигурации. Основные файлы, о которых следует знать, это файл конфигурации collectd, /etc/collectd.conf, и основной двоичный файл демона, /usr/sbin/collectd. Сначала создайте копию исходного файла конфигурации.

Затем откройте конфигурационный файл:

Основной файл конфигурации collectd содержит множество настроек, большинство из которых по умолчанию неактивны, поскольку они закомментированы. Давайте раскомментируем и изменим некоторые из них.

В верхней части конфигурации, в разделе Global, вы увидите следующее. То, что нужно отредактировать, выделено красным.

Раскомментируйте поля Hostname, BaseDir, PIDFile, PluginDir и TypesDB, удалив символ # в начале строки. Кроме того, установите в поле Hostname значение influenxdb. В результате этот раздел файла должен выглядеть следующим образом:

Затем прокрутите вниз до раздела LoadPlugin, где в алфавитном порядке перечислено большое количество плагинов. Найдите и раскомментируйте строки LoadPlugin network и LoadPlugin uptime, удалив символ # в начале строки.

Затем нужно настроить collectd для отправки данных в InfluxDB.

Прокрутите вниз до раздела Plugin Configuration. После разделителя разделов (как показано ниже) добавьте конфигурацию сетевого плагина (она выделена красным).

Сохраните и закройте файл. Теперь нужно проверить конфигурацию и убедиться, что в ней нет ошибок или опечаток. Для этого можно использовать collectd:

Если в конфигурации collectd нет ошибок, эта команда не вернет вывода. Если в файле обнаружены какие-либо ошибки, они будут перечислены в терминале.

Как только в конфигурации будут исправлены все ошибки, перезапустите collectd, чтобы активировать новую конфигурацию. Это может занять некоторое время.

Специфичные концепции баз данных временных рядов

Кроме высокой скорости приёма, базы данных временных рядов вводят концепции, очень специфичные для этих технологий.

Одной из них является организация хранения данных. В традиционной РБД данные хранятся постоянно до тех пор, пока вы не решите их удалить. Учитывая сценарии использования БД временных рядов, вы можете не хранить ваши данные слишком долго: это или слишком дорого, или данные со временем теряют актуальность.

Системы вроде InfluxDB могут позаботиться об удалении данных через определённое время, используя концепцию, называемую политикой хранения (подробно описанной во второй части). Вы можете выполнять непрерывные запросы к оперативным данным для выполнения определённых операций.

В реляционной БД можно найти эквивалентные операции (например «задания» в SQL), которые могут выполняться по заданному расписанию.

Совершенно другая экосистема

БД временных рядов сильно различаются, когда речь заходит об их экосистемах. Как правило, реляционные базы данных окружены приложениями, которые подключаются к ним для получения информации или добавления новых записей.

Часто база данных ассоциируется с одной системой. Клиенты подключаются к веб-сайту, который обращается к базе данных для получения информации. БД временных рядов созданы под множество клиентов (программ). Здесь нет простого сервера, обращающегося к БД, но есть куча разных сенсоров (к примеру), выполняющих вставку данных одновременно.

Как следствие, инструменты были разработаны для того, чтобы иметь эффективные способы выработки данных или их использования.

Потребление данных

Потребление данных часто осуществляется с помощью инструментов мониторинга вроде или . Эти клиенты имеют встроенные решения для визуализации данных и даже создания пользовательских предупреждений.

Эти инструменты часто используются для создания живых панелей мониторинга, которые могут быть показаны графиками, гистограммами, датчиками или картами окружающего мира.

Производство данных

Производство данных осуществляется агентами, которые нацеливаются на специальные элементы в инфраструктуре и извлекают из них метрики. Такие агенты называются «агентами мониторинга». Вы можете легко настроить их для запроса данных за определённый промежуток времени. Примерами являются (который является официальным агентом мониторинга), или .

Теперь вы лучше понимаете, что такое базы данных временных рядов и чем они отличаются от реляционных. Пришло время углубиться в конкретные концепции InfluxDB.

Hosting InfluxDB OSS on AWS

Hardware requirements for InfluxDB

We recommend using two SSD volumes, using one for the and the other for the .
Depending on your load, each volume should have around 1k-3k provisioned IOPS.
The volume should have more disk space with lower IOPS and the volume should have less disk space with higher IOPS.

Each machine should have a minimum of 8GB RAM.

We’ve seen the best performance with the R4 class of machines, as they provide more memory than either of the C3/C4 class and the M4 class.

Configuring InfluxDB OSS instances

This example assumes that you are using two SSD volumes and that you have mounted them appropriately.
This example also assumes that each of those volumes is mounted at and .
For more information on how to do that see the Amazon documentation on how to Add a Volume to Your Instance.

Authentication and Authorization

For all AWS deployments, we strongly recommend authentication be enabled. Without this, it is possible that your InfluxDB
instance may be publicly available to any unauthenticated user. The default settings do NOT enable
authentication and authorization. Further, authentication and authorization should not be solely relied upon to prevent access
and protect data from malicious actors. If additional security or compliance features are desired, InfluxDB should be run
behind additional services offered by AWS.
Review the authentication and authorization settings.

InfluxDB OSS permissions

When using non-standard directories for InfluxDB data and configurations, also be sure to set filesystem permissions correctly:

For InfluxDB 1.7.6 or later, you must give owner permissions to the file. To do this, run the following script in your directory:

Support and feedback

Thank you for being part of our community!
We welcome and encourage your feedback and bug reports for InfluxDB and this documentation.
To find support, the following resources are available:

  • InfluxData Community
  • InfluxDB Community Slack

InfluxDB Cloud and InfluxDB Enterprise customers can contact InfluxData Support.

Edit this page
Submit docs issue
Submit InfluxDB issue

Будет ли меньше хранимых данных после проверки стратегии изменения?

Стратегия хранения по умолчанию для базы данных Telegraf — всегда хранить данные без ограничений. Итак, чтобы сохранить хранилище данных, я создам политику хранения на один час, затем удалю политику по умолчанию и буду наблюдать, уменьшаются ли сохраненные данные.

3.1 Размер хранилища данных до изменения политики

Перед изменением стратегии я намеренно запустил службу сбора данных на несколько дней и проверил текущий размер данных хранилища следующим образом:

Вы можете видеть, что имеется 69 миллионов сохраненных данных.

3.3 После удаления старой политики подтвердите размер хранилища данных.

Исходя из приведенных выше результатов, вам нужно только настроить стратегию хранения данных управления, чтобы контролировать пространство для хранения данных.

`graphite`

Этот раздел управляет одним или несколькими слушателями для данных Graphite. Смотрите README на GitHub для получения дополнительной информации.

Установите значение , чтобы включить ввод графита.

Переменная среды:

Имя базы данных,в которую вы хотите написать.

Переменная среды:

политика удержания = «»

Соответствующая политика хранения. Пустая строка эквивалентна политике хранения в базе данных .

Переменная среды:

Порт по умолчанию.

Переменная среды:

Установите или .

Переменная среды:

consistency-level = «один»

Количество узлов, которые должны подтвердить запись. Если требование не выполняется, возвращаемое значение будет либо если некоторые точки в пакете не работают, либо если все точки в пакете не работают. Дополнительные сведения см. В разделе «Параметры строки запроса для записи» в Справочнике по синтаксису линейного протокола .

Переменная среды:

Следующие три параметра управляют работой пакетной обработки. Вы должны включить это, иначе вы можете потерять метрики или снизить производительность. Пакетная обработка буферизует точки в памяти, если у вас их много.

При буферизации этого количества точек вход будет промыт.

Переменная среды:

Количество партий,которые могут находиться в памяти.

Переменная среды:

batch-timeout = «1 с»

Входные данные будут сбрасываться по крайней мере так часто, даже если они не достигли настроенного размера пакета.

Переменная среды:

udp-read-buffer=0

UDP Размер буфера чтения,0 означает значение по умолчанию операционной системы.UDP-приемник не будет работать,если задать значение выше OS max.

Переменная среды:

разделитель = «.»

Эта строка объединяет несколько совпадающих значений «измерения», обеспечивая больший контроль над окончательным названием измерения.

Переменная среды:

II — Настройка сервера InfluxDB

Прежде чем продолжить, вам необходимо настроить свой экземпляр InfluxDB для Windows .

Нас по существу интересуют четыре раздела в файле конфигурации.

a — Мета-раздел

Здесь будет храниться ваша база данных плотов. Он хранит метаданные о вашем экземпляре InfluxDB.

Создание мета — папку в директории InfluxDB (помните , в моем случае это был Program Files).

Измените следующий раздел в файле конфигурации.

# Where the metadata/raft database is stored
dir = "C:\\Program Files\\InfluxDB\\meta"

б — Раздел данных

InfluxDB хранит файлы TSM и WAL как часть своего внутреннего хранилища. Здесь ваши данные будут храниться на вашем компьютере.

Создайте в своей папке папку data и wal . Опять же, соответствующим образом измените файл конфигурации.

# The directory where the TSM storage engine stores TSM files.
dir = "C:\\Program Files\\InfluxDB\\data"

# The directory where the TSM storage engine stores WAL files.
wal-dir = "C:\\Program Files\\InfluxDB\\wal

Важно: путь нужно заключать в двойные кавычки!

c — HTTP-раздел

Есть много способов вставить данные в базу данных InfluxDB.

Вы можете использовать клиентские библиотеки для использования в приложениях Python, Java или Javascript. Или вы можете напрямую использовать конечную точку HTTP.

InfluxDB предоставляет конечную точку, которую можно использовать для взаимодействия с базой данных. Он находится на port 8086 .

Вернемся к вашему конфигурационному файлу. Настройте раздел HTTP следующим образом:

# Determines whether HTTP endpoint is enabled.
enabled = true

# The bind address used by the HTTP service.
bind-address = ":8086"

# Determines whether HTTP request logging is enabled.
log-enabled = true

Не стесняйтесь менять порт, если он не взаимодействует с портами, уже используемыми на вашем компьютере или сервере Windows.

d — Раздел журнала

Раздел ведения журнала используется для определения, какие уровни журнала будут храниться для вашего сервера InfluxDB. Параметр по умолчанию — «информация» , но вы можете изменить его, если, например, вы хотите получать уведомления только о сообщениях «об ошибках».

# Determines which log encoder to use for logs. Available options
# are auto, logfmt, and json. auto will use a more a more user-friendly
# output format if the output terminal is a TTY, but the format is not as
# easily machine-readable. When the output is a non-TTY, auto will use
# logfmt.
# format = "auto"

# Determines which level of logs will be emitted. The available levels
# are error, warn, info, and debug. Logs that are equal to or above the
# specified level will be emitted.
level = "error"

e — Быстрый тест

Прежде чем настраивать InfluxDB как службу, давайте проведем быстрый сухой тест, чтобы убедиться, что все в порядке.

В командной строке выполните исполняемый файл Infxd. Примите разрешение брандмауэра, если вам будет предложено это сделать.

Теперь, когда ваш сервер InfluxDB запущен, запустите новую утилиту командной строки и выполните следующую команду .

C:\Users\Antoine>curl -sl -I http://localhost:8086/ping
HTTP/1.1 204 No Content
Content-Type: application/json
Request-Id: 7dacef6d-8c2f-11e9-8018-d8cb8aa356bb
X-Influxdb-Build: OSS
X-Influxdb-Version: 1.7.6
X-Request-Id: 7dacef6d-8c2f-11e9-8018-d8cb8aa356bb
Date: Tue, 11 Jun 2019 09:58:41 GMT

/ Ping конечная точка используется для проверки , если ваш сервер работает или нет.

Поздравляю!

Теперь вам просто нужно запустить его как службу, и все будет готово.

[subscriber]

Этот раздел контролирует, как Kapacitor будет получать данные.

Установите значение , чтобы отключить услугу подписчика.

Переменная среды:

http-timeout = «30 с»

Контролирует,как долго будет выполняться http-запрос на абонентское обслуживание до его завершения.

Переменная среды:

небезопасный пропустить проверку=ложный

Позволяет небезопасные HTTPS соединения для абонентов.Это полезно при тестировании с самоподписными сертификатами.

Переменная среды:

ca-certs = «»

Путь к PEM закодированному файлу CA certs.Если пустая строка,будут использоваться системные сертификаты по умолчанию.

Переменная среды:

Количество пишущих горутинов,обрабатывающих канал записи.

Переменная среды:

Создаём Continuous Query

Continuous query — механизм InfluxDB, позволяющий автоматически выполнять заданный запрос через указанные промежутки времени. Что более ценно, результат запроса может быть записан в другой со своей . Именно так всё и работает, мы создаём запрос на получение агрегированных данных какого-нибудь датчика за последний час или полчаса и сохраняем его в новый , с более продолжительным периодом хранения данных.
Нет нужды говорить, что можно создать несколько , например, хранить минутные данные в течение недели, часовые данные в течение месяца и, например, дневные данные — бесконечно. Схема ограничена только вашей фантазией.

Если за определённый час от какого-то датчика не было получено данных, по умолчанию continuous query вернёт пустую запись. Мы используем чтобы вместо отсутствующего использовалось предыдущее известное значение.

Убедимся, что CQ была создана:

Дело сделано, нужно подождать несколько часов и новый measurement year.temperature будет наполняться усреднёнными почасовыми данными температуры.

Больше про создание Continuous Query можно узнать из официальной документации.

Команда chmod

Права устанавливаются командой chmod. Команда chmod поддерживает установку прав как в восьмеричном представлении, так и в символьном (маска режима доступа).

Синтаксис команды прост:

chmod <опции> <права> <объект или регулярное выражение>

Опции

Из самых полезных и часто используемых опций можно выделить одну:

-R — рекурсивное назначение прав. Т.е. назначить права всем объектам, руководствуясь регулярным выражением.

Например:

  • chmod -R 755 * — Назначение прав всем объектам текущего каталога, включая подкаталоги.
  • chmod -R 700 z* — Назначить полные права для владельца и исключить права для группы и всех остальных для всех объектов, которые начинаются именоваться на z, находящиеся в текущем каталоге и его подкаталогах.

Права

Права можно записывать как в восьмеричном представлении так и в символьном. В восьмеричном представлении, для стандартных прав, указываются 3 восьмеричные цифры (1-я для владельца, 2-я для группы, 3-я для всех остальных. См. таблицу выше).

Например:

  • chmod 744 koshka.txt — установит права для файла koshka.txt — (r w x r — — r — -);
  • chmod -R 775 sobaki — установит права на каталог sobaki и на все объекты, что внутри этого каталога, включая содержимое подкаталогов (r w x r w x r — x);
  • chmod 700 * — установит права только для владельца на все файлы и каталоги в текущем каталоге, включая подкаталоги и их объекты (rwx — — — — — -).

Другой способ назначения прав — это использование маски режима доступа (символьное представление). Помимо прав задается еще кому мы собираемся эти права выставлять:

  • u — владельцу объекта;
  • g — группе объекта;
  • o — пользователю «все остальные»;
  • a — все вышеперечисленное.

Для назначения прав используются три знака: минус, плюс или равно:

  • — — убрать указанные права с объекта;
  • + — добавить указанные права к существующим правам объекта;
  • = — заменить права объекта на указанные.

Пример:

chmod g+w koshki.txt — Добавить пользователям группы файла koshki.txt права на запись в этот файл;

chmod a=rwx sobaki.doc — Заменит существующие права на файле sobaki.doc на полные права всем;

chmod o-w test.cgi — Уберет права на запись для пользователя «Все остальные».

chmod ug=rw spisok.doc — Выставить права на чтение и запись файлу spisok.doc для владельца и группы

Обратите внимание, что если у пользователя «все остальные» были какие-либо права, они сохранятся в неизменном виде.. Использование символьного представления позволяет редактировать права файлов более гибко:

Использование символьного представления позволяет редактировать права файлов более гибко:

  • chmod u+x,g+w-x koshki.txt — Добавить владельцу файла koshki.txt права на его выполнение, пользователям группы разрешить запись и запретить выполнение и оставить права остальных пользователей без изменений;
  • chmod u=rwx,g+w,go-x sobaki.doc — Установить полные права для владельца файла, разрешить пользователям группы запись и запретить выполнение всем пользователям, кроме владельца файла.

Символьное назначение окажет неоценимую услугу, если требуется добавить права на объект к уже существующим правам.

Массовое назначение прав

Иногда, бывает, нужно массово установить права на определенный тип объектов, например, только на каталоги или только на файлы. Простое использование опции -R (рекурсия) здесь не поможет т.к. chmod будет проходить по всем объектам удовлетворяющим маске, что иногда вовсе не то, что нужно.

Итак, чтобы массово установить права на определенный тип объектов можно использовать один из вариантов (вообще, их очень много):

chmod -R 770 $(find . -type d)

где -type d — каталоги, -type f — файлы. В данном примере chmod установит, начиная от текущего каталога, права на все каталоги (включая подкаталоги) разрешения 770 (rwx rwx- — -) при этом не трогая права на другие объекты.

Более длинный вариант аналогичной операции:

find ./ -type f -exec sudo chmod 775 {} \;

где -type d — каталоги, -type f — файлы. В данном варианте chmod установит разрешения 775 на все файлы включая файлы в подкаталогах начиная от текущего.

Installing InfluxDB OSS

For users who don’t want to install any software and are ready to use InfluxDB,
you may want to check out our
managed hosted InfluxDB offering.

Verify the authenticity of downloaded binary (optional)

For added security, follow these steps to verify the signature of your InfluxDB download with .

(Most operating systems include the command by default.
If is not available, see the GnuPG homepage for installation instructions.)

  1. Download and import InfluxData’s public key:

  2. Download the signature file for the release by adding to the download URL.
    For example:

  3. Verify the signature with :

    The output from this command should include the following:

Концепции InfluxDB

В этом разделе будут объяснены ключевые концепции InfluxDB и ключевой запрос, связанный с этим. InfluxDB встраивает свой собственный язык запросов и это заслуживает отдельного пояснения.

Язык запросов InfluxDB

Прежде чем начать, важно знать, какую версию InfluxDB вы используете в настоящее время. По состоянию на апрель 2019 года InfluxDB выпускается в двух версиях: v1.7+ и v2.0

InfluxDB v2.0 в настоящее время (на октябрь 2019 года) является альфа-версией и воздвигает язык Flux в центр платформы. InfluxDB v1.7 оснащён языком InfluxQL (а также Flux, если его активировать).

Для начала можно по-прежнему использовать InfluxQL, так как Flux не полностью установлен в текущей версии платформы.

InfluxQL — это язык запросов, который очень похож на SQL, и позволяет любому пользователю запрашивать свои данные и фильтровать их. Вот пример запроса InfluxQL:

InfluxDB OSS installation requirements

Installation of the InfluxDB package may require or administrator privileges in order to complete successfully.

InfluxDB OSS networking ports

By default, InfluxDB uses the following network ports:

  • TCP port is available for client-server communication using the InfluxDB API.
  • TCP port is available for the RPC service to perform back up and restore operations.

In addition to the ports above, InfluxDB also offers multiple plugins that may
require custom ports.
All port mappings can be modified through the configuration file,
which is located at for default installations.

Network Time Protocol (NTP)

InfluxDB uses a host’s local time in UTC to assign timestamps to data and for
coordination purposes.
Use the Network Time Protocol (NTP) to synchronize time between hosts; if hosts’
clocks aren’t synchronized with NTP, the timestamps on the data written to InfluxDB
can be inaccurate.

I — Загрузка InfluxDB

а — Скачивание архива

Скачать InfluxDB очень просто.

Перейдите на страницу загрузок InfluxDB. Там вы увидите следующие четыре поля.

Они являются частью TICK stack . ( Telegraf, I nfluxDB, Chronograf и Kapacitor).

У каждого из этих инструментов есть очень специфическая роль: сбор показателей, хранение данных, визуализация временных рядов или выполнение определенных функций постобработки ваших данных.

В этом руководстве мы сосредоточимся на InfluxDB (компонент базы данных временных рядов TICK).

В своих предыдущих статьях я ответил на основное различие между двумя версиями, но вот главное различие, которое вам нужно запомнить.

Поскольку версия 2.0 все еще является экспериментальной, мы выберем версию 1.7.6 .

Нажмите кнопку v1.7.6.

Еще одно окно откроется со всеми операционными системами. Прокрутите, пока не увидите двоичные файлы Windows (64-разрядная версия).

Просто щелкните URL-адрес в белом поле, и загрузка автоматически начнется в вашем браузере.

Храните его где хотите, в моем случае он будет в папке Program Files .

Разархивируйте архив с помощью вашей любимой утилиты для архивирования (в моем случае — 7-Zip) или выполните следующую команду в командной строке PowerShell.

Expand-Archive -Force C:\path\to\archive.zip C:\where\to\extract\to

Хорошо! Давайте посмотрим, что у вас здесь.

б — Просмотр архива

Внутри вашей папки теперь есть 5 двоичных файлов и 1 файл конфигурации:

  • Influx.exe : интерфейс командной строки, используемый для выполнения команд IFQL и перехода к вашим базам данных.
  • Influx_inspect.exe: получите некоторую информацию о шардах InfluxDB (в многоузловой среде)
  • Influx_stress.exe: используется для стресс-тестирования вашей базы данных InfluxDB
  • Influx_tsm.exe: Утилита InfluxDB с временным деревом слияния (здесь не актуальна)
  • Influxd.exe : используется для запуска вашего сервера InfluxDB
  • Influxdb.conf : используется для настройки вашего экземпляра InfluxDB.

Соответствующие двоичные файлы были выделены жирным шрифтом.

Ключевые концепты InfluxDB

Рассмотрим список основных терминов, которые необходимо знать для работы с InfluxDB в 2019 году.

База данных

База данных — само по себе простое для понимания понятие, потому что вы привыкли использовать этот термин в реляционных базах данных. В SQL-среде БД будет содержать набор таблиц и схем и будет представлять один экземпляр самостоятельно.

В InfluxDB БД содержит набор измерений. Однако один экземпляр InfluxDB может содержать несколько баз данных. В этом его отличие от традиционных систем. Эта логика подробно представлена на графике ниже:

Наиболее распространённые способы взаимодействия с базами данных — это либо их создание (), либо переход в них () для просмотра коллекций (вы должны быть «в базе данных», чтобы запрашивать коллекции, иначе это не сработает).

Измерение

Как показано выше, база данных хранит несколько измерений (measurement). Для простоты восприятия думайте об измерении как о таблице SQL. Она хранит данные и даже метаданные в разные моменты времени. Данные, которые должны сосуществовать вместе, должны храниться в одном измерении.

SELECT * FROM cpu_metrics WHERE temperature=’40’;

Теги и поля

Обратите внимание, есть тонкая разница между тегами и полями. Для тех, кто впервые начинает работать с InfluxDB, будет трудно понять, почему теги и поля различаются

Они похожи на «столбцы», где вы можете хранить точно такие же данные. Определяя новый «столбец» в InfluxDB, вы можете либо объявить его как тег, либо как значение, и между ними есть различия

Для тех, кто впервые начинает работать с InfluxDB, будет трудно понять, почему теги и поля различаются. Они похожи на «столбцы», где вы можете хранить точно такие же данные. Определяя новый «столбец» в InfluxDB, вы можете либо объявить его как тег, либо как значение, и между ними есть различия.

Самая большая разница между ними заключается в том, что теги индексируются, а значения — нет. Теги можно рассматривать как метаданные, определяющие данные в измерении. Это подсказки, дающие дополнительную информацию о данных, но не сами данные. Поля — это сами данные. В прошлом примере столбец «температура» был бы полем.

Вернёмся к примеру . Допустим, вы хотели добавить столбец с именем «location», определяющий местоположение датчика.

Должны ли вы добавить его в качестве тега или поля?

В данном случае это будет добавлено как тег. Необходимо, чтобы столбец «местоположение» индексировался и учитывался при выполнении запроса к местоположению.

Хорошим советом будет держать ваши измерения относительно небольшими, когда речь идёт о количестве полей. Всё большее количество полей часто связано с меньшей производительностью. Вы можете создать другие измерения, чтобы сохранить другое поле и правильно его проиндексировать.
Теперь, когда мы добавили метку местоположения в измерение, немного углубимся в таксономию.

Набор тега называется «tag-set». Имя столбца в теге называется «tag key». Значения тега называются «tag values». Та же систематика повторяется для полей. Вернёмся к чертежам.

Временная метка

Временная метка (timestamp) — наверное, самое простое для определения ключевое слово. В InfluxDB — это дата и время, определённые в формате RFC3339. При использовании InfluxDB очень часто определяют ваш столбец времени как метку в Unix-времени, выраженную в наносекундах.

Вы можете выбрать формат наносекунд для временного столбца и позже снизить точность, добавляя нули в конец значения, чтобы оно соответствовало формату наносекунд.

Политика хранения

Политика хранения определяет, как долго вы собираетесь хранить ваши данные. Политики хранения определяются для каждой базы данных и их может быть несколько. По умолчанию политика хранения будет и хранит ваши данные вечно. Как правило, базы данных имеют несколько политик хранения, которые используются для разных целей.

Представим, что вы используете InfluxDB для оперативного мониторинга всей инфраструктуры.

Например, вы хотите знать, когда сервер отключается. В этом случае вас интересуют данные, поступающие с этого сервера в настоящий момент или за несколько минут до этого. Вы не заинтересованы в хранении данных в течение нескольких месяцев, поэтому хотите определить небольшую политику хранения: например один или два часа.

Предположим, вы используете InfluxDB для IoT, например для сбора данных, поступающих из резервуара для воды. Позже вы захотите поделиться своими данными с группой научных специалистов, чтобы они могли их проанализировать. В этом случае вы можете хранить данные дольше: например пять лет.

Точка

Точка (point) — это просто набор полей с одинаковой отметкой времени. В SQL это будет выглядеть как строка или как уникальная запись в таблице. Здесь нет ничего особенного.

Set up InfluxDB

The initial setup process for InfluxDB walks through creating a default organization,
user, bucket, and Operator API token.
The setup process is available in both the InfluxDB user interface (UI) and in
the command line interface (CLI).

Operator token permissions

The Operator token created in the InfluxDB setup process has
full read and write access to all organizations in the database.
To prevent accidental interactions across organizations, we recommend
creating an All-Access token
for each organization and using those to manage InfluxDB.

After you’ve installed InfluxDB, you’re ready to get started working with your data in InfluxDB.

Support and feedback

Thank you for being part of our community!
We welcome and encourage your feedback and bug reports for InfluxDB and this documentation.
To find support, the following resources are available:

  • InfluxData Community
  • InfluxDB Community Slack

InfluxDB Cloud and InfluxDB Enterprise customers can contact InfluxData Support.

Edit this page
Submit docs issue
Submit InfluxDB issue

Бонус: самые распространенные ошибки в процессе

Я столкнулся с этой ошибкой, когда пытался настроить InfluxDB как службу с помощью SC. Поскольку в Google и на Youtube существует множество решений, я решил это с помощью NSSM.

Пытался настроить реестр Windows, но это было не очень полезно.

Обычно разрешается только одно использование каждого адреса сокета (протокол / сетевой адрес / порт).

Все просто: программа или служба уже прослушивают 8086. Вы должны изменить порт по умолчанию в файле конфигурации и выбрать тот, который разрешен и не используется.

У меня нет такой же реакции завитков

Ответ 204 на команду curl — единственный признак того, что ваш InfluxDB работает правильно. Если вы не получите тот же результат, вам следует вернуться и дважды проверить предыдущие шаги.

В моем файле конфигурации есть ошибка синтаксического анализа!

Помните, что в системах Windows необходимо избегать обратной косой черты. Это двойная обратная косая черта в путях вашего файла конфигурации InfluxDB.

Если ваш путь содержит пробелы, например «Program Files», обязательно заключите его в кавычки.

Заключение

InfluxDB – это мощный инструмент для хранения и анализа данных временных рядов, например данных, генерируемых при мониторинге производительности работающей системы. Связка InfluxDB с Grafana обеспечивает решение для эффективного хранения и визуализации таких данных.

Выполнив этот мануал, вы получили общее представление о InfluxDB: как установить этот инструмент, как настроить базу данных и отправить в нее данные. Кроме того, вы можете настроить Grafana и использовать ее для создания универсальных дашбордов.

InfluxDB и Grafana имеют много дополнительных возможностей и вариантов использования. Вы можете выполнить более глубокий анализ поведения ваших систем, используя агрегатные функции InfluxDB. Возможно, вы также захотите начать сбор данных из распределенных систем, чтобы сравнить производительность по нескольким системам, или провести анализ других метрик несистемного уровня (например, количество вызовов API для конечной точки REST). В официальной документации InfluxDB вы найдете ряд полезных инструментов и библиотек.

CentOSCentOS 7collectdGrafanaInfluxDB

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: