Домой Без рубрики Как установить и настроить Prometheus в Linux? (Ubuntu и CentOS)

Как установить и настроить Prometheus в Linux? (Ubuntu и CentOS)

641
0

Содержание

Что такое Прометей?

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

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

Специальных требований к хранению данных нет, так как Prometheus использует Time Series DB (TSDB) часть его собственной установки .

В этом уроке мы установим Prometheus в Linux Ubuntu и CentOS с очень простыми шагами.

Давайте начнем:

Шаг 1 Проверьте версию ОС Linux

Команда: cat /etc/os-release

1
2
3
4
5
6
7
8
9
10
11
12
13
root @ localhost : ~ # cat / etc / os-release
NAME = Ubuntu
VERSION = 19.04 (Disco Dingo)
ID = Ubuntu
ID_LIKE = debian
PRETTY_NAME = Ubuntu 19.04
VERSION_ID = 19.04
HOME_URL = https://www.ubuntu.com/
SUPPORT_URL = https://help.ubuntu.com/
BUG_REPORT_URL = https://bugs.launchpad.net/ubuntu/
PRIVACY_POLICY_URL = https://www.ubuntu.com/legal/terms-and-policies/privacy-policy
VERSION_CODENAME = дискотека
UBUNTU_CODENAME = дискотека

Следующие шаги относятся к Ubuntu Linux OS ,

Шаг 2 Создание данных Prometheus и папки конфигурации

Команды :

1
2
3
root @ localhost : ~ # sudo mkdir / crunchify / prometheus / conf
root @ localhost : ~ # sudo mkdir / crunchify / prometheus / data

Давайте проверим обе папки:

1
2
3
4
5
6
7
8
9
корень @ локальный: / crunchify / Prometheus # PWD
/ Crunchify / Prometheus
корень @ локальный: / crunchify / Prometheus # Ls -ltra
Всего 16
drwxrхтх 2 корень корень 4096 август 25 23 : 37 конф
drwxrхтх 3 корень корень 4096 август 25 23 : 37 , ,
drwxrхтх 2 корень корень 4096 август 25 23 : 37 данные
drwxrхтх 4 корень корень 4096 август 25 23 : 37 ,

Шаг 3 Смена владельца папки данных

Это необходимо, чтобы избежать проблем с разрешениями на последующих этапах.

1
корень @ локальный: / crunchify / Prometheus # Судо Чаун 65534: 65534 / crunchify / Prometheus / данные /

Шаг 4 Создайте файл prometheus.yml

Перейти в папку /crunchify/prometheus/conf и создать файл prometheus.yml ,

1
2
3
root @ localhost : / # cd / crunchify / prometheus / conf
корень @ локальный: / crunchify / Prometheus / конф # VI prometheus.yml

Содержание файла prometheus.yml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# мой глобальный конфиг
глобальный :
   scrape_interval :      15s # Установите интервал очистки на каждые 15 секунд. По умолчанию каждая 1 минута.
   оценка_интервала : 15s # Оценивайте правила каждые 15 секунд. Значение по умолчанию — каждая 1 минута.
   Для # scrape_timeout установлено глобальное значение по умолчанию (10 с).
# Настройка Alertmanager
оповещение :
   оповещения менеджеров :
   static_configs :
     цели :
       # — alertmanager: 9093
# Загружать правила один раз и периодически оценивать их в соответствии с глобальным'valuation_interval '.
rule_files :
   # — first_rules.yml
   # — second_rules.yml
# Конфигурация очистки, содержащая ровно одну конечную точку для очистки:
# Здесь это сам Прометей.
scrape_configs :
   # Имя задания добавляется как метка `job = <имя-задания> в любой временной ряд, извлеченный из этой конфигурации.
   job_name : 'Прометей'
     # metrics_path по умолчанию '/ metrics'
     # схема по умолчанию 'http'.
     static_configs :
     цели : [ '65 .19.71.11: 9090 ' ]

Note: В приведенном выше файле — замените IP на ваш IP хоста / виртуальной машины.

Вот Directory structure для этого урока:

Шаг 5 Убедитесь, что на вашей виртуальной машине установлен Docker.

Как проверить, установлен ли Docker или нет?

1
2
3
root @ localhost : ~ # докер
команда «Докер» не найденный

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

Шаг 6 Установите Docker Compose

Pre-requisite сначала установить Docker перед выполнением следующих шагов. (Шаг 5)

Выполните ниже три команды :

1
2
3
4
5
6
7
8
9
root @ localhost : ~ # sudo curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s) — $ (uname -m) — o / usr / local / bin / docker-compose
   % Всего      % Получено % Xferd Средняя скорость Время Время Время Текущий
                                 Dload Upload Всего отработанных левых скоростей
100    617      0    617      0      0    2448        0 :: :: ::   2448
100 15.4m    100 15.4m      0      0    11,2 млн        0    0 : 00 : 01    0 : 00 : 01 :: 15.7M
root @ localhost : ~ # sudo chmod + x / usr / local / bin / docker-compose
root @ localhost : ~ # sudo ln -s / usr / local / bin / docker-compose / usr / bin / docker-compose

Шаг 7 Проверьте версию Docker Compose

1
2
3
root @ localhost : ~ # docker-compose —version
докерсоставить версию 1.24.1 , строить 4667896b

Поздравляю — программа docker compose успешно установлена на вашей виртуальной машине.

Шаг 8 Создайте файл docker-compose.yml

Перейдите в папку / crunchify / prometheus.

1
2
3
root @ localhost : / crunchify # cd / crunchify / prometheus /
корень @ локальный: / crunchify / Prometheus # VI докер-compose.yml

Содержание файла docker-compose.yml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
версия : 3
услуги :
   Прометей :
     изображение : Пром / Прометей : последние
     имя контейнера : Прометей
     объемы :
       / Crunchify / Prometheus / конф: / и т.д. / Prometheus
       / Crunchify / Prometheus / данные: / Prometheus
     команда :
       '—config.file = / и т.д. / Prometheus / prometheus.yml'
       '—storage.tsdb.path = / Prometheus'
     порты :
       9090: 9090

Шаг 9 Установите Prometheus Start / Stop как часть системы управления.

Создать файл vi /etc/systemd/system/prometheus.service

Содержание файла prometheus.service:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[ Блок ]
Описание = Контейнер- докер Prometheus для мониторинга
После = докер . оказание услуг
BindsTo = докер . оказание услуг
[ Сервис ]
Restart = всегда
WorkingDirectory = / crunchify / Prometheus /
# Ubuntu
ExecStart = / USR / бен / Докерсоставить до
ExecStop = / USR / бен / Докерсочинить вниз
# CentOS
# ExecStart = / usr / bin / docker-compose up
# ExecStop = / usr / bin / docker-compose down
[ Установить ]
WantedBy = мультипользователь. цель

Шаг-10 Запустите сервис Прометей

1
2
3
4
5
6
корень @ локальный: / crunchify / Prometheus / конфигурация # Судо systemctl демон-перезарядка
корень @ локальный: / crunchify / Prometheus / конфигурация # Судо включить Прометей systemctl
Создана символическая ссылка / etc / systemd / system / multiuser . цель. хочет / прометей . оказание услуг / etc / systemd / system / prometheus . сервис .
корень @ локальный: / crunchify / Prometheus / конфигурация # Судо systemctl начать Прометей

Сервер Prometheus запущен в Linux:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
корень @ локальный: / crunchify / Prometheus # Судо systemctl начать Прометей
Создание сети prometheus_default с по умолчанию Водитель
Тянет Прометей ( выпускной / прометей : последний ) . , ,
последний : Тянет с выпускного / прометея
8e674ad76dce : Вытащить завершено
e77d2419d1c2 : Вытащить завершено
d7c0a2a2ca7e : Вытащить завершено
bd46de67c79d : Вытащить завершено
35f6078df7e9 : Вытащить завершено
8b3f04e26151 : Вытащить завершено
9d234d9c8a77 : Вытащить завершено
1a8a2a4f314d : Вытащить завершено
62e28fd716ec : Вытащить завершено
Дайджест : sha256 : cd93b8711bb92eb9c437d74217311519e0a93bc55779aa664325dc83cd13cb32
Статус : Скачал более новое изображение для Пром / Прометей : последние
Создание Прометея , , , сделанный
Прикрепление к Прометей
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.796Z вызывающий абонент = главный . go : 293 msg = не установлено время или размер, поэтому используется время по умолчанию продолжительность = 15 дней
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.797Z вызывающий абонент = главный . go : 329 msg = Стартовый Прометей версия = (версия = 2.12.0, ветвь = HEAD, редакция = 43acd0e2e93f9f70c49b2267efa0124f1e759e86)
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.798Z вызывающий абонент = главный . go : 330 build_context = (go = go1.12.8, user = root @ 7a9dbdbe0cc7, date = 20190818-13: 53: 16)
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.798Z вызывающий абонент = главный . go : 331 host_details = (Linux 5.0.0-13-generic # 14-Ubuntu SMP, понедельник, 15 апреля 14:59:14 UTC 2019 x86_64 d870070a8ec7 (нет))
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.799Z вызывающий абонент = главный . go : 332 fd_limits = (soft = 1048576, hard = 1048576)
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.799Z вызывающий абонент = главный . go : 333 vm_limits = (мягкая = неограниченная, жесткая = неограниченная)
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.803Z вызывающий абонент = главный . go : 654 msg = Запуск TSDB …
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.813Z звонящий = голова . go : 509 component = tsdb msg = Воспроизведение WAL, это может занять некоторое время
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.815Z звонящий = голова . go : 557 component = tsdb msg = WAL сегмент загружен сегмент = 0 maxSegment = 0
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.818Z вызывающий абонент = главный . go : 669 fs_type = EXT4_SUPER_MAGIC
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.819Z вызывающий абонент = главный . go : 670 msg = TSDB запущен
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.819Z вызывающий абонент = главный . go : 740 msg = Загрузка файла конфигурации имя файла = / etc / prometheus / prometheus . YML
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.823Z вызывающий абонент = главный . go : 768 msg = Завершена загрузка файла конфигурации имя файла = / etc / prometheus / prometheus . YML
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.823Z вызывающий абонент = главный . go : 623 msg = Сервер готов к приему веб-запросов.
Прометей      | уровень = информация ts = 20190826T02 : 57 : 48.824Z звонящий = веб . go : 448 component = web msg = Начать прослушивание соединений адрес = 0.0.0.0 : 9090

Поздравляю !! Вы успешно запустили Prometheus на своем хосте.

Давайте играть с Prometheus Dashboard и пользовательским интерфейсом


Как проверить, правильно ли работает Прометей?

1
URL : http : //65.19.71.11:9090/metrics


Как проверить работоспособность хоста или виртуальной машины с помощью Prometheus?

1
URL : http : //65.19.71.11:9090/targets


Как проверить конфигурацию Prometheus в браузере?


Прометей Информация о времени выполнения

1
URL : http : //65.19.71.11:9090/status
Uptime 2019-08-26 03: 07: 24.244852166 +0000 UTC
Рабочий каталог /Прометей
Перезагрузка конфигурации успешный
Последняя успешная перезагрузка конфигурации 2019-08-26 03:07:24 +0000 UTC
Головные куски 533
Главный временной ряд 533
WAL коррупции 0
Goroutines 36
GOMAXPROCS 1
GOGC
GODEBUG
Хранение Хранение 15d

Прометей Информация о сборке

Версия 2.12.0
пересмотр 43acd0e2e93f9f70c49b2267efa0124f1e759e86
Ветка ГОЛОВА
BuildUser корень @ 7a9dbdbe0cc7
Дата постройки 20190818-13: 53: 16
GoVersion go1.12.8

Флаги командной строки Прометея:

1
URL : http : //65.19.71.11:9090/flags
alertmanager.notification-очереди емкости 10000
alertmanager.timeout 10s
config.file /etc/prometheus/prometheus.yml
log.format logfmt
log.level Информация
query.lookback-дельта
query.max-параллелизм 20
query.max-образцы 50000000
query.timeout
rules.alert.for-льготный период 10м
rules.alert.for-отключение толерантности
rules.alert.resend задержки 1m
storage.remote.flush-срок 1m
storage.remote.read-параллельный предел 10
storage.remote.read-образец предел 50000000
storage.tsdb.allow-перекрывающихся-блоки ложный
storage.tsdb.max-блок-продолжительность 36ч
storage.tsdb.min-блок-продолжительность 2h
storage.tsdb.no-файл блокировки ложный
storage.tsdb.path /Прометей
storage.tsdb.retention 0s
storage.tsdb.retention.size 0B
storage.tsdb.retention.time 0s
storage.tsdb.wal-сжатия ложный
storage.tsdb.wal-сегментного размер 0B
web.console.libraries console_libraries
web.console.templates консоли
web.cors.origin . *
web.enable-админ-апи ложный
web.enable-жизненный цикл ложный
web.external-URL
web.listen-адрес 0.0.0.0:9090
web.max-соединение 512
web.page титульный Сервер сбора и обработки временных рядов Прометея
web.read-тайм-аут
web.route-приставка /

И все готово. У тебя есть successfully installed Prometheus и проверил все его возможности.

Как установить и настроить Prometheus в Linux? (Ubuntu и CentOS)

0.00 (0%) 0 votes

ЧИТАТЬ ТАКЖЕ:  Узнайте все о WordPress Sitemap.xml, приложениях и приложениях для перенаправления на родительскую страницу

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь