Prometheus - это приложение с открытым исходным кодом для мониторинга событий и оповещения на основе метрик, первоначально разработанное в SoundCloud и более широко принятое впоследствии различными компаниями и организациями. Prometheus имеет собственную систему хранения, в которой хранятся и управляются собранные метрики в реальном времени. В Prometheus метод сбора данных известен как «списание», а инструмент, который он использует для этой цели, называется «экспортером.”
В этой статье будет продемонстрировано, как установить и настроить Prometheus в Ubuntu 20.04 Системы LTS (Focal Fossa). В статье также будет объяснено, как добавить экспортера в Prometheus, чтобы расширить его полезность.
Примечание: процедура и команды в этой статье были выполнены с использованием Ubuntu 20.04 LTS (фокальная ямка).
Предпосылки
Перед установкой Prometheus обязательно выполните следующие требования.
1. Установить Nginx
Чтобы установить Nginx, выполните следующие действия:
Используйте следующую команду в Терминале, чтобы обновить индекс системного репозитория
$ sudo подходящее обновлениеЗатем введите следующую команду для установки Nginx:
$ sudo apt установить nginxПосле установки Nginx используйте следующие команды, чтобы убедиться, что служба Nginx запущена:
$ sudo systemctl start nginxЕсли служба Nginx не запущена, вы можете запустить службу, введя следующую команду:
$ sudo systemctl start nginx2. Создать пользователей Prometheus
Введите следующее, чтобы создать учетные записи пользователей Prometheus, которые будут использоваться в качестве учетных записей пользователей службы в целях безопасности и администрирования. Эти учетные записи не будут использоваться для входа в систему. Используйте следующие команды в Терминале для создания учетных записей пользователей службы.
$ sudo useradd --no-create-home --shell / bin / false prome$ sudo useradd --no-create-home --shell / bin / false node_exporter
3. Создать каталоги Prometheus
Введите следующее, чтобы создать несколько каталогов, которые будут использоваться для хранения файлов и данных:
$ sudo mkdir / etc / prometheus$ sudo mkdir / var / lib / прометей
Скачивание и установка Prometheus
Как только все эти предварительные условия будут выполнены, ваша система будет готова к установке Prometheus. Ниже приведена процедура загрузки и установки Prometheus.
Загрузите последнюю стабильную версию Prometheus с помощью команды wget.
$ wget https: // github.com / Прометей / Прометей / релизы / скачать / v2.0.0 /Прометей-2.0.0.linux-amd64.деготь.gz
Распакуйте архив Prometheus, используя следующую команду:
$ tar xvf прометей-2.0.0.linux-amd64.деготь.gzИз извлеченной папки скопируйте двоичные файлы в каталог / usr / local / bin и смените владельца.
Используйте следующие команды, чтобы скопировать двоичные файлы «prometheus» и «promtool» в / USR / местные / бен.
$ sudo cp Прометей-2.0.0.Linux-AMD64 / Прометей / USR / местные / бен /$ sudo cp Прометей-2.0.0.Linux-amd64 / promtool / usr / местный / бен /
Затем измените владельца файлов, введя команды ниже.
$ sudo chown prome: прометей / usr / local / bin / prometheus$ sudo chown prome: prome / usr / local / bin / promtool
После копирования двоичных файлов скопируйте необходимые библиотеки в каталог / etc / prometheus. Для этого используйте следующие команды в Терминале:
$ sudo cp -r прометей-2.0.0.Linux-amd64 / консоли / и т. д. / Прометей$ sudo cp -r прометей-2.0.0.Linux-amd64 / библиотеки_консоля / и т. д. / prometheus
Затем используйте следующие команды, чтобы изменить владельца файлов.
$ sudo chown -R prome: prome / etc / prometheus / консоли$ sudo chown -R prome: prome / etc / prometheus / console_libraries
Конфигурация Прометея
В этом разделе мы создадим файл конфигурации с именем Прометей.yml в / и т.д. / Прометей каталог, созданный на предыдущих шагах. Выполните следующую команду в Терминале, чтобы отредактировать Prometheus.yml файл:
$ судо нано / и т.д. / Прометей / Прометей.ymlЗатем скопируйте и вставьте в терминал следующие строки:
Глобальный:scrape_interval: 15 с
scrape_configs:
- job_name: 'Прометей'
scrape_interval: 5 с
static_configs:
- цели: ['localhost: 9090']
Нажмите Ctrl + o, чтобы сохранить, и Ctrl + x, чтобы выйти из файла.
Теперь мы создадим еще один файл для службы systemd. Для этого введите в Терминале следующую команду:
$ судо нано / и т. д. / systemd / system / prometheus.услугаЗатем скопируйте и вставьте в терминал следующие строки:
[Ед. изм]Описание = Прометей
Хочет = сеть-онлайн.цель
После = сеть-онлайн.цель
[Услуга]
Пользователь = prome
Группа = prome
Тип = простой
ExecStart = / usr / local / bin / prometheus \
--config.файл / etc / prometheus / prometheus.yml \
--место хранения.tsdb.путь / var / lib / prometheus / \
--сеть.приставка.шаблоны = / etc / prometheus / consoles \
--сеть.приставка.библиотеки = / etc / prometheus / console_libraries
[Установить]
WantedBy = многопользовательский.цель
Нажмите Ctrl + o, чтобы сохранить файл, и Ctrl + x, чтобы выйти из файла.
Как только вы закончите с вышеуказанными конфигурациями, перезагрузите systemd, используя следующую команду:
$ sudo systemctl демон-перезагрузкаЗапустите службу Prometheus, введя следующую команду:
$ sudo systemctl start prometheusЧтобы включить Прометей service при загрузке системы, используйте следующую команду:
$ sudo systemctl включить ПрометейПосле запуска Сервис Prometheus, используйте следующую команду для просмотра статуса сервиса:
$ sudo systemctl status ПрометейНа следующем снимке экрана показано, что служба Prometheus активна и работает.
Доступ к веб-интерфейсу Prometheus
Затем попробуйте получить доступ к веб-интерфейсу Prometheus. Откройте веб-браузер и перейдите по следующему адресу:
http: // ip-адрес: 9090
Заменить термин «айпи адрес»С фактическим IP-адресом вашей системы. Вы можете получить доступ к веб-интерфейсу Prometheus из любой системы в вашей локальной сети. Вы также можете использовать localhost или же 127.0.0.1 для доступа к сайту Prometheus в вашей локальной системе. Однако в этом случае вы не сможете получить к нему доступ из любой другой системы в сети.
На этом этапе Prometheus показывает только метрики о себе, что может быть бесполезно. В следующем разделе будет показано, как расширить возможности Prometheus, добавив экспортеров.
Добавить экспортеров
Чтобы сделать Прометея более полезным для вас, попробуйте добавить экспортеров. Некоторые из наиболее часто используемых экспортеров включают следующее:
- Node_exporter-
- Blackbox_exporter
- rabbitmq_exporter
- Mysqld_exporter
Здесь мы добавим node_exporter в систему Прометей. Node_exporter генерирует метрики о таких ресурсах, как ЦП, память, использование диска и т. Д.
Сначала загрузите node_exporter в вашу систему с помощью следующей команды:
$ wget https: // github.com / prometheus / node_exporter / релизы / скачать /v0.15.1 / node_exporter-0.15.1.linux-amd64.деготь.gz
Распакуйте архив с помощью следующей команды:
$ tar xvf node_exporter-0.15.1.linux-amd64.деготь.gzСудо нано / и т. д. / Прометей / Прометей.yml
Из извлеченной папки скопируйте двоичные файлы в каталог / usr / local / bin и измените владельца. Выполните следующую команду, чтобы скопировать двоичные файлы node_exporter в / USR / местные / бен каталог.
$ sudo cp node_exporter-0.15.1.Linux-amd64 / node_exporter / usr / локальный / бенУстановите владельца каталога с помощью следующей команды:
$ sudo chown node_exporter: node_exporter / usr / локальный / bin / node_exporterСоздайте служебный файл для экспортера, используя the следующая команда:
$ sudo nano / и т. д. / systemd / system / node_exporter.услугаЗатем скопируйте и вставьте в терминал следующие строки:
[Ед. изм]Описание = Прометей
Хочет = сеть-онлайн.цель
После = сеть-онлайн.цель
[Услуга]
Пользователь = node_exporter
Группа = node_exporter
Тип = простой
ExecStart = / usr / local / bin / prometheus \
--config.файл / etc / prometheus / prometheus.yml \
--место хранения.tsdb.путь / var / lib / prometheus / \
--сеть.приставка.шаблоны = / etc / prometheus / consoles \
--сеть.приставка.библиотеки = / etc / prometheus / console_libraries
[Установить]
WantedBy = многопользовательский.цель
Нажмите Ctrl + o, чтобы сохранить, и Ctrl + x, чтобы выйти из файла.
Перезагрузите systemd, используя следующую команду:
$ sudo systemctl демон-перезагрузкаВыполните следующую команду, чтобы запустить служба node_exporter:
$ sudo systemctl start node_exporterЧтобы включить службу node_exporter при загрузке, введите следующую команду:
$ sudo systemctl включить node_exporterНастройка Prometheus для node_exporter
В этом разделе мы настроим Prometheus для очистки node_exporter. Выполните следующую команду в Терминале, чтобы отредактировать файл конфигурации:
$ судо нано и т. д. / Прометей / Прометей.ymlСкопируйте и вставьте в терминал следующие строки:
- имя_задания: 'node_exporter'scrape_interval: 5 с
static_configs:
- цели: ['localhost: 9100']
Нажмите Ctrl + o, чтобы сохранить, и Ctrl + x, чтобы выйти из файла. Перезапустите сервис Prometheus, используя следующую команду:
$ sudo systemctl перезапустить ПрометейВы можете проверить статус службы Prometheus, чтобы убедиться, что она работает правильно, введя следующую команду: $ sudo systemctl status prometheus Попробуйте получить доступ к Prometheus, открыв любой веб-браузер и перейдя по следующему адресу:
http: // ip-адрес: 9090
Когда откроется веб-интерфейс, используйте стрелку раскрывающегося списка, чтобы выбрать любую метрику, и щелкните значок Выполнять кнопка для просмотра графика.
Если вы пойдете в Статус> Цель в меню вверху страницы вы увидите как Prometheus, так и node_exporter, перечисленные там, поскольку мы настроили Prometheus для очистки как самого себя, так и node_exporter.
Заключение
Это все, что нужно для этого! В этой статье вы узнали, как установить Prometheus в Ubuntu 20.04 LTS (Focal Fossa), а также как использовать экспортер узлов в Prometheus. Я надеюсь, что после прочтения этой статьи вы теперь достаточно комфортно можете установить Prometheus и программу экспорта для создания показателей ресурсов вашего сервера.