Blame

9f58ad Mayekkuzu 2024-12-11 17:32:36 1
# Zabbix
2
9d1abb Mayekkuzu 2024-12-11 17:35:23 3
![](/Self-Hosted/Zabbix/zabbix.jpg)
4
9f58ad Mayekkuzu 2024-12-11 17:32:36 5
Zabbix - система мониторинга всего, что способно ответить хоть какими то данными. Можно мониторить все, от количества установленных пакетов в системе, до температуры воздуха на кухне. Если, конечно, это чем-то мониторится. Ну и есть шаблончик соответствующий
6
7
Имеет набор достаточно разнообразных шаблонов для мониторинга Линукса, Винды, Сетевого оборудования, ИБП и прочих прикольных штук. Но если нужно сделать мониторинг чего-то специфического, то этот тот еще пердолинг. Но кто ищет тот всегда найдет. Или свой шаблон напишет. Ну или хуй положит и забьет.
325899 Mayekkuzu 2024-12-11 18:01:50 8
9
## Заводим Zabbix сервер на Proxmox с помощью импорта qcow2 файла
10
11
На странице https://www.zabbix.com/download_appliance выбираем нужную версию и копируем ссылку на qcow2 фаил. Этот фаил архивирован в tar.gz, поэтому скачиваем чего через wget и растариваем в папку
12
13
```bash
14
wget https://cdn.zabbix.com/zabbix/appliances/stable/X.X/X.X.X/zabbix_appliance-X.X.X-qcow2.tar.gz
15
tar -xvf zabbix_appliance-X.X.X-qcow2.tar.gz
16
cd zabbix_appliance-X.X.X-qcow2
17
```
18
19
Далее создаем произвольную виртуальную машину без жесткого диска. Достаточно пары гигабайт оперативной памяти и пары ядер. После создания виртуалки переходим по ssh на Proxmox и импортируем фаил виртуальной машины:
20
21
```bash
22
qm importdisk <VM_ID> zabbix_appliance-X.X.X.qcow2 <NAME_OF_PARTITION> --format qcow2
23
```
24
Где:
25
VM_ID - идентификатор виртуальной машины, обычно трехзначное число
26
NAME_OF_PARTITION - имя раздела на которую будем импортировать qcow2. Чаще всего это local-lvm
27
28
После импорта, диск будет привязан к виртуальной машине, но будет в состоянии Unused. Для подключения нужно выбрать диск в Hardware-опциях виртуалки и кликнуть Edit. Далее просто щекнуть по Add и диск будет добавлен
95f56b Mayekkuzu 2024-12-11 18:05:37 29
30
![](/Self-Hosted/Zabbix/unused-disk-1.jpg)![](/Self-Hosted/Zabbix/unused-disk-2.jpg)
593271 Mayekkuzu 2024-12-11 18:52:33 31
32
После запуска виртуалки скорее всего пригодится изменить настройки сети. Вносим правки в фаил `/etc/sysconfig/network-scripts/ifcfg-eth0` и приводим к такому виду
33
```
34
BOOTPROTO=none
35
IPADDR=IP_address
36
PREFIX=24
37
GATEWAY=IP_gateway
38
DNS1=IP_DNS_Server
39
DNS2=IP_DNS_Server
40
```
41
Рестартим вм или сетевую службу. Далее меняем пароль для пользователя root командой `passwd`
42
43
Для авторизации в веб-панели Zabbix используем логин `Admin` и пароль `zabbix`
44
45
## Настройка агента zabbix-agent на Linux VM
46
47
В зависимости от целевого дистрибутива, нужно установить пакет `zabbix-agent`. Я использую debian и ubuntu в качестве виртуалок, поэтому пишем:
48
```bash
49
sudo apt update
50
sudo apt install zabbix-agent
51
```
52
После установки правим `/etc/zabbix/zabbix_agent.conf` изменив два параметра
53
```
54
Server=IP_Zabbix_Server
55
ListenPort=10050
56
```
57
Перезапускаем сервис zabbix-agent
58
```bash
59
sudo systemctl restart zabbix-agent
60
```
61
В админ-панели переходим в `Data collection` -> `Hosts` -> `Create host` и заводим данные о сервере на котором установили zabbix-agent
6b0b7d Mayekkuzu 2024-12-11 19:11:48 62
![](/Self-Hosted/Zabbix/zabbix-new-host.jpg)
63
В течении минуты статус ZBX у хоста должен окрасится в зеленый. Если статус красный, проверьте перезапустили службу и открыт ли порт у целевой машины? Проверить порт можно командой `telnet IP-OR-FQDN 10050`
64
65
## Настройка агента zabbix-agent на Linux VM с шифрованием PSK
66
67
Возможно есть задача по мониторингу машины которая находится где-нибудь удаленно, к примеру - VPSка
68
69
Подключаемся по ssh к удаленной машине, ставим пакет `zabbix-agent`. Далее нужно сгенерируем ключ и дать ему права:
70
```bash
71
sudo openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk
72
sudo chmod 644 /etc/zabbix/zabbix_agentd.psk
73
```
74
Теперь приводим `/etc/zabbix/zabbix_agentd.conf` к такому виду
75
```
76
Server=IP_Adress_Zabbix_Server
77
ListenPort=10050
78
TLSConnect=psk
79
TLSAccept=psk
80
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
81
TLSPSKIdentity=PSK 001
82
```
83
Перезапускаем сервис zabbix-agent
84
```bash
85
sudo systemctl restart zabbix-agent
86
```
87
Содержимое файла ключа копируем в блокнот. Если необходимо - открываем порт 10050 на VDSке. В моем случае я использую UFW
88
```
89
sudo ufw allow 10050/tcp
90
```
91
На сервере заббикс добавляем хост по аналогии, но во вкладке Encryption добавляем ключ и ставим галочки как на скриншоте ниже
d1f7c8 Mayekkuzu 2024-12-11 19:13:07 92
![](/Self-Hosted/Zabbix/encription-psk-zabbix.jpg)