-
- 3.1 Файловые системы в НАЙС ОС
- 3.2 Монтирование устройств в НАЙС ОС
- 3.3 Каталоги файловой системы НАЙС ОС
- 3.4 Основные команды для работы с файлами и файловой системой НАЙС ОС
- 3.5 Мягкие и жесткие ссылки в НАЙС ОС
- 3.6 Конфигурационный файл limits.conf в НАЙС ОС
- 3.7 Перенаправление стандартного вывода и вывода ошибок в НАЙС ОС
- 3.8 Управление задачами в командной строке в НАЙС ОС
- 3.9 Знакомство с командной строкой в НАЙС ОС
- 3.10 Работа с текстовыми редакторами (nano, vim) в НАЙС ОС
- 3.11 Использование оболочки (bash, zsh) в НАЙС ОС
- 3.12 Основы скриптования в НАЙС ОС
- 3.13 Использование man и info страниц
- 3.14 Введение в Markdown и текстовые форматы документации
- 3.15 Работа с архивами
- 3.16 Управление и настройка swap
-
- 4.1 Система управления пакетами TDNF и DNF в НАЙС ОС
- 4.2 Основные команды DNF в НАЙС ОС
- 4.3 Основные команды TDNF в НАЙС ОС
- 4.4 Работа с историей DNF в НАЙС ОС
- 4.5 Создание и управление локальными репозиториями в НАЙС ОС
- 4.6 Решение проблем с зависимостями в НАЙС ОС
- 4.7 Управление пакетами из исходных кодов в НАЙС ОС
-
- 5.1 Пользователи и привилегии, команды su и sudo в НАЙС ОС
- 5.2 Добавление нового пользователя в НАЙС ОС
- 5.3 Модификация пользовательских записей в НАЙС ОС
- 5.4 Удаление пользователей в НАЙС ОС
- 5.5 Группы пользователей в НАЙС ОС
- 5.6 Создание и настройка собственного default-профиля пользователя при помощи SKEL в НАЙС ОС
- 5.7 Управление сеансами пользователей с помощью systemd-logind в НАЙС ОС
-
- 8.1 Управление правами доступа
- 8.2 Настройка файервола (firewalld, iptables)
- 8.3 Конфигурация SELinux
- 8.4 Настройка SSH
- 8.5 Обнаружение и предотвращение вторжений (IDS/IPS)
- 8.6 Шифрование данных
- 8.7 Управление политиками безопасности
- 8.8 Настройка двухфакторной аутентификации
- 8.9 Настройка и использование AppArmor
- 8.10 Управление сертификатами и криптографией: OpenSSL и Let's Encrypt
- 8.11 Введение в SIEM (Security Information and Event Management)
-
- 9.1 Управление процессами и службами
- 9.2 Настройка системных журналов (journald, rsyslog)
- 9.3 Мониторинг системы (top, htop, iostat)
- 9.4 Настройка cron и systemd timers
- 9.5 Автоматизация задач с помощью скриптов
- 9.6 Управление и анализ производительности системы (sysstat, sar)
- 9.7 Настройка и управление системными уведомлениями
- 9.8 Использование средств диагностики (strace, lsof)
- 9.9 Резервное копирование и восстановление
- 9.10 Настройка ротации логов
- 9.11 Использование cron
-
- 10.1 Использование системных журналов для диагностики
- 10.2 Поиск и исправление ошибок загрузки
- 10.3 Диагностика сетевых проблем
- 10.4 Решение проблем с производительностью
- 10.5 Восстановление поврежденных файловых систем
- 10.6 Работа с ядром и модульной системой
- 10.7 Управление и диагностика проблем с драйверами
-
- 11.1 Настройка ядра и модулей
- 11.2 Настройка кэширования
- 11.3 Анализ и устранение узких мест
- 11.4 Управление потреблением ресурсов
- 11.5 Использование профилировщиков производительности (perf, eBPF)
- 11.6 Оптимизация сетевой производительности
- 11.7 Оптимизация и настройка MySQL/PostgreSQL
- 11.8 Оптимизация работы с большими данными и высоконагруженными системами
-
- 12.1 Основные сетевые команды
- 12.2 Настройка сети
- 12.3 Устранение неполадок сети
- 12.4 Использование и настройка Netplan
- 12.5 Настройка и управление сетевыми интерфейсами
- 12.6 Настройка и управление сетевыми интерфейсами с помощью systemd-networkd
- 12.7 Настройка и управление сетевыми мостами и агрегированием интерфейсов (bonding)
-
- 13.1 Установка и настройка веб-сервера (Apache, Nginx)
- 13.2 Установка и настройка базы данных (MySQL, PostgreSQL)
- 13.3 Установка и настройка почтового сервера (Postfix, Dovecot)
- 13.4 Установка и Настройка vsftp сервера
- 13.5 Установка и настройка OpenVpn
- 13.6 Установка и настройка StrongSwan
- 13.7 Установка и настройка WireGuard VPN
- 13.8 Установка и настройка LDAP
- 13.9 Настройка и управление Redis
- 13.10 Настройка и управление RabbitMQ
- 13.11 Установка и настройка Docker
- 13.12 Установка и настройка Kubernetes
- 13.13 Установка и настройка GitLab
- 13.14 Установка и настройка Jenkins
- 13.15 Установка и настройка Prometheus
- 13.16 Установка и настройка Grafana
- 13.17 Установка и настройка Zabbix
- 13.18 Установка и настройка Ansible
- 13.19 Установка и настройка Terraform
- 13.20 Установка и настройка HAProxy
- 13.21 Установка и настройка Apache Kafka
- 13.22 Установка и настройка MongoDB
- 13.23 Установка и настройка Cassandra
- 13.24 Установка и настройка Memcached
- 13.25 Установка и настройка OpenStack
- 13.26 Установка и настройка Ceph
- 13.27 Установка и настройка GlusterFS
- 13.28 Установка и настройка Nextcloud
- 13.29 Установка и настройка Mattermost
- 13.30 Установка и настройка Elasticsearch Stack (ELK Stack)
- 13.31 Установка и настройка Graylog
- 13.32 Установка и настройка Fluentd
- 13.33 Установка и настройка TimescaleDB
- 13.34 Установка и настройка InfluxDB
- 13.35 Установка и настройка Keycloak
- 13.36 Установка и настройка SonarQube
- 13.37 Установка и настройка Nexus Repository
- 13.38 Установка и настройка Rundeck
- 13.39 Установка и настройка AWX/Ansible Tower
- 13.40 Установка и настройка Syncthing
- 13.41 Установка и настройка Bacula
- 13.42 Установка и настройка Netdata
- 13.43 Установка и настройка OpenNMS
- 13.44 Установка и настройка Cacti
- 13.45 Установка и настройка Observium
- 13.46 Настройка SQUID для обхода ограничений для западных репозиториев
-
- 14.1 Утилита passwd в НАЙС ОС
- 14.2 Источники программ (репозитории) НАЙС ОС
- 14.3 Назначение RPM в НАЙС ОС
- 14.4 Модули ядра в НАЙС ОС
- 14.5 zswap в НАЙС ОС
- 14.6 Dracut - ПО для создания загрузочного образа (initramfs) в НАЙС ОС
- 14.7 Общие рекомендации соблюдения безопасности в НАЙС ОС
- 14.8 Протокол Secure Shell в рамках безопасности в НАЙС ОС
- 14.9 Аудит в НАЙС ОС
- 14.10 Права доступа к файлам и каталогам в контексте безопасности в НАЙС ОС
- 14.11 Использование ClamAV для обеспечения безопасности в НАЙС ОС
- 14.12 Использование ClamAV для обеспечения безопасности в НАЙС ОС
- 14.13 Использование списков контроля доступа (ACL) для обеспечения безопасности в НАЙС ОС
- 14.14 Использование SELinux для обеспечения безопасности в НАЙС ОС
- 14.15 Использование Pluggable Authentication Modules (PAM) для обеспечения безопасности в НАЙС ОС
- 14.16 Использование Rsyslog для обеспечения безопасности в НАЙС ОС
- 14.17 Использование Afick для обеспечения безопасности в НАЙС ОС
- 14.18 Использование AMTU для обеспечения безопасности в НАЙС ОС
- 14.19 Использование ntpdate для обеспечения безопасности в НАЙС ОС
- 14.20 Настройка отказоустойчивого кластера в контексте безопасности в НАЙС ОС
- 14.21 Изменение приоритета процесса в контексте безопасности в НАЙС ОС
- 14.22 Управление дисковыми квотами в контексте безопасности в НАЙС ОС
- 14.23 Ограничение ресурсов пользователя в контексте безопасности в НАЙС ОС
- 14.24 Шифрование дисков и отдельных файлов в контексте безопасности в НАЙС ОС
- 14.25 Использование Polkit в контексте безопасности в НАЙС ОС
- 14.26 Модуль PAM_USB - двухфакторная аутентификация в контексте безопасности в НАЙС ОС
- 14.27 Использование ГОСТ в OpenSSL в контексте безопасности в НАЙС ОС
- 14.28 Расчет контрольных сумм файлов в контексте безопасности в НАЙС ОС
- 14.29 Защитное преобразование файлов и каталогов по ГОСТ Р 34.12–2015
- 14.30 Задание хешей паролей в соответствии с ГОСТ Р 34.11-2012
- 14.31 Использование OpenSCAP в контексте безопасности в НАЙС ОС
- 14.32 Локальная аутентификация с использованием Рутокен MFA
- 14.33 Проверка файловой системы на наличие ошибок в НАЙС ОС
- 14.34 Восстановление загрузчика GRUB2 в НАЙС ОС
- 14.35 Тестирование оперативной памяти в НАЙС ОС
- 14.36 Рекомендации по анализу журналов и дампов в НАЙС ОС
- 14.37 Модули ядра в НАЙС ОС
-
- 15.1 Введение в виртуализацию и контейнеризацию
- 15.2 Установка и настройка KVM
- 15.3 Управление виртуальными машинами с помощью libvirt
- 15.4 Введение в Docker
- 15.5 Использование Kubernetes для оркестрации
- 15.6 Настройка и управление LXC/LXD
- 15.7 Виртуализация с использованием OpenVZ
- 15.8 Настройка и управление Vagrant
- 15.9 Виртуализация с использованием Xen
- 15.10 Продвинутые возможности Docker
- 15.11 Инструменты мониторинга и управления виртуализацией
- 15.12 Сравнение различных технологий виртуализации и контейнеризации
- 15.13 Лучшие практики и сценарии использования виртуализации и контейнеризации
Установка и настройка Prometheus
Добро пожаловать в подробное руководство по установке и настройке Prometheus в НАЙС ОС. В этом документе мы рассмотрим процесс установки, настройки и управления Prometheus. Prometheus — это система мониторинга и оповещения с открытым исходным кодом, которая используется для сбора и анализа метрик от различных сервисов и приложений. Понимание его установки и конфигурации является важным навыком для системных администраторов.
Установка Prometheus
Для установки Prometheus в НАЙС ОС используйте пакетный менеджер tdnf. Сначала скачайте и установите последний релиз Prometheus с официального сайта:
wget https://github.com/prometheus/prometheus/releases/download/v2.37.0/prometheus-2.37.0.linux-amd64.tar.gz
Распакуйте скачанный архив:
tar xvfz prometheus-2.37.0.linux-amd64.tar.gz
Переместите бинарные файлы в системные каталоги:
sudo mv prometheus-2.37.0.linux-amd64/prometheus /usr/local/bin/
sudo mv prometheus-2.37.0.linux-amd64/promtool /usr/local/bin/
Переместите файлы конфигурации и другие ресурсы:
sudo mv prometheus-2.37.0.linux-amd64/consoles /etc/prometheus/
sudo mv prometheus-2.37.0.linux-amd64/console_libraries /etc/prometheus/
sudo mv prometheus-2.37.0.linux-amd64/prometheus.yml /etc/prometheus/
Создайте пользователя и группу для Prometheus:
sudo useradd --no-create-home --shell /bin/false prometheus
Создайте необходимые каталоги и установите права:
sudo mkdir /var/lib/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus /etc/prometheus -R
Настройка Prometheus
Основной файл конфигурации Prometheus находится в /etc/prometheus/prometheus.yml
. Рассмотрим основные параметры конфигурации.
Пример конфигурационного файла
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
Эта конфигурация указывает, что Prometheus будет собирать метрики каждые 15 секунд и выполнять оценку правил каждые 15 секунд. Также он будет собирать свои собственные метрики.
Настройка systemd для Prometheus
Для управления Prometheus с помощью systemd создайте файл сервиса /etc/systemd/system/prometheus.service
со следующим содержимым:
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
--config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.path=/var/lib/prometheus/ \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries
[Install]
WantedBy=multi-user.target
Перезагрузите systemd для применения изменений:
sudo systemctl daemon-reload
Запустите и включите Prometheus при старте системы:
sudo systemctl start prometheus
sudo systemctl enable prometheus
Проверка состояния Prometheus
Чтобы проверить состояние Prometheus, выполните команду:
sudo systemctl status prometheus
Эта команда выведет информацию о состоянии службы Prometheus, включая её текущее состояние и последние журналы.
Настройка сбора метрик с узлов и сервисов
Для сбора метрик с различных узлов и сервисов добавьте их в файл prometheus.yml
в разделе scrape_configs
. Например, для сбора метрик с узла с адресом 192.168.1.100
:
scrape_configs:
- job_name: 'node_exporter'
static_configs:
- targets: ['192.168.1.100:9100']
Перезапустите Prometheus для применения изменений:
sudo systemctl restart prometheus
Установка Node Exporter
Node Exporter — это инструмент для сбора метрик о состоянии системы. Установите Node Exporter на узлах, с которых хотите собирать метрики:
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
Распакуйте скачанный архив:
tar xvfz node_exporter-1.3.1.linux-amd64.tar.gz
Переместите бинарный файл в системный каталог:
sudo mv node_exporter-1.3.1.linux-amd64/node_exporter /usr/local/bin/
Создайте пользователя и группу для Node Exporter:
sudo useradd --no-create-home --shell /bin/false node_exporter
Создайте файл сервиса systemd для Node Exporter /etc/systemd/system/node_exporter.service
:
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter
[Install]
WantedBy=multi-user.target
Перезагрузите systemd для применения изменений:
sudo systemctl daemon-reload
Запустите и включите Node Exporter при старте системы:
sudo systemctl start node_exporter
sudo systemctl enable node_exporter
Настройка оповещений в Prometheus
Prometheus поддерживает оповещения через Alertmanager. Рассмотрим процесс настройки оповещений и интеграции с Alertmanager.
Установка Alertmanager
Скачайте и установите Alertmanager:
wget https://github.com/prometheus/alertmanager/releases/download/v0.24.0/alertmanager-0.24.0.linux-amd64.tar.gz
Распакуйте скачанный архив:
tar xvfz alertmanager-0.24.0.linux-amd64.tar.gz
Переместите бинарные файлы в системные каталоги:
sudo mv alertmanager-0.24.0.linux-amd64/alertmanager /usr/local/bin/
Создайте необходимые каталоги и установите права:
sudo mkdir /etc/alertmanager
sudo mkdir /var/lib/alertmanager
sudo chown alertmanager:alertmanager /etc/alertmanager /var/lib/alertmanager -R
Создайте пользователя и группу для Alertmanager:
sudo useradd --no-create-home --shell /bin/false alertmanager
Настройка Alertmanager
Создайте файл конфигурации /etc/alertmanager/alertmanager.yml
со следующим содержимым:
global:
resolve_timeout: 5m
route:
group_by: ['alertname']
group_wait: 30s
group_interval: 5m
repeat_interval: 12h
receiver: 'email-notifications'
receivers:
- name: 'email-notifications'
email_configs:
- to: 'your_email@example.com'
from: 'alertmanager@example.com'
smarthost: 'smtp.example.com:587'
auth_username: 'your_email@example.com'
auth_identity: 'your_email@example.com'
auth_password: 'your_password'
Создайте файл сервиса systemd для Alertmanager /etc/systemd/system/alertmanager.service
:
[Unit]
Description=Alertmanager
Wants=network-online.target
After=network-online.target
[Service]
User=alertmanager
Group=alertmanager
Type=simple
ExecStart=/usr/local/bin/alertmanager \
--config.file=/etc/alertmanager/alertmanager.yml \
--storage.path=/var/lib/alertmanager
[Install]
WantedBy=multi-user.target
Перезагрузите systemd для применения изменений:
sudo systemctl daemon-reload
Запустите и включите Alertmanager при старте системы:
sudo systemctl start alertmanager
sudo systemctl enable alertmanager
Настройка правил оповещения в Prometheus
Добавьте правила оповещения в файл /etc/prometheus/prometheus.yml
:
rule_files:
- "alert.rules"
alerting:
alertmanagers:
- static_configs:
- targets:
- "localhost:9093"
Создайте файл /etc/prometheus/alert.rules
со следующим содержимым:
groups:
- name: example
rules:
- alert: InstanceDown
expr: up == 0
for: 1m
labels:
severity: 'critical'
annotations:
summary: "Instance {{ $labels.instance }} down"
description: "{{ $labels.instance }} of job {{ $labels.job }} has been down for more than 1 minute."
Перезапустите Prometheus для применения изменений:
sudo systemctl restart prometheus
Мониторинг и обслуживание Prometheus
Мониторинг и обслуживание Prometheus являются важными задачами для обеспечения его стабильной работы. Рассмотрим основные методы мониторинга и обслуживания Prometheus.
Проверка состояния метрик
Используйте веб-интерфейс Prometheus для просмотра собранных метрик. Перейдите в браузере по адресу http://your_server_ip:9090
и используйте интерфейс для выполнения запросов и просмотра метрик.
Просмотр логов Prometheus
Логи Prometheus содержат важную информацию о работе сервера и помогают выявлять проблемы. Логи находятся в каталоге /var/log/prometheus
. Для просмотра логов используйте команду tail
:
sudo tail -f /var/log/prometheus/prometheus.log
Обновление Prometheus
Регулярно обновляйте Prometheus для получения новых функций и исправлений безопасности. Используйте следующий процесс для обновления Prometheus:
- Скачайте последнюю версию Prometheus с официального сайта.
- Распакуйте архив и замените существующие бинарные файлы новыми версиями.
- Перезапустите Prometheus для применения обновлений.
Пример команд:
wget https://github.com/prometheus/prometheus/releases/download/v2.38.0/prometheus-2.38.0.linux-amd64.tar.gz
tar xvfz prometheus-2.38.0.linux-amd64.tar.gz
sudo mv prometheus-2.38.0.linux-amd64/prometheus /usr/local/bin/
sudo mv prometheus-2.38.0.linux-amd64/promtool /usr/local/bin/
sudo systemctl restart prometheus
Настройка Grafana для визуализации метрик
Grafana — это мощный инструмент для визуализации метрик. Рассмотрим процесс установки и настройки Grafana для работы с Prometheus.
Установка Grafana
Для установки Grafana добавьте репозиторий Grafana и установите ключ GPG:
sudo rpm --import https://packages.grafana.com/gpg.key
Добавьте репозиторий Grafana в файл /etc/yum.repos.d/grafana.repo
со следующим содержимым:
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
Теперь установите Grafana с помощью следующей команды:
sudo tdnf install -y grafana
Запуск и настройка Grafana
Запустите Grafana с помощью systemd:
sudo systemctl start grafana-server
Для автоматического запуска Grafana при загрузке системы выполните команду:
sudo systemctl enable grafana-server
Настройка источника данных в Grafana
Перейдите в веб-интерфейс Grafana по адресу http://your_server_ip:3000
. Войдите в систему с учетными данными по умолчанию (admin/admin).
Перейдите в раздел Configuration > Data Sources и добавьте новый источник данных Prometheus, указав URL http://localhost:9090
.
Создание дашбордов в Grafana
Создавайте дашборды и панели для визуализации метрик, собранных Prometheus. Используйте мощные функции Grafana для создания наглядных графиков и диаграмм.
Заключение
Мы рассмотрели основные аспекты установки, настройки и управления Prometheus в НАЙС ОС. Prometheus предоставляет мощные возможности для мониторинга и оповещения, а понимание его настройки является важным навыком для системных администраторов. Продолжайте изучать и применять эти знания на практике для создания стабильных и эффективных систем мониторинга.