templates-zabbix-itguys/deploy_package/extras/README_EXTRAS.md

70 lines
2.5 KiB
Markdown

# Zabbix Extras Manual
Este pacote `extras/` contém ferramentas profissionais para manutenção e monitoramento avançado.
## 📋 Conteúdo
### 1. `db_maintenance.sh` (Manutenção de Banco)
Otimiza as tabelas de configuração do Zabbix para manter o frontend rápido.
* **Instalação**: Copie para `/usr/local/bin/` e dê permissão `chmod +x`.
* **Agendamento (Cron)**: Recomenda-se rodar todo domingo às 03:00.
```bash
0 3 * * 0 /usr/local/bin/db_maintenance.sh
```
### 2. `zabbix_config_backup.sh` (Backup de Config)
Gera um dump SQL apenas das configurações (Hosts, Templates, Users), ignorando o histórico pesado.
* **Instalação**: Copie para `/usr/local/bin/`.
* **Agendamento**: Rodar diariamente.
```bash
0 5 * * * /usr/local/bin/zabbix_config_backup.sh
```
### 3. Scripts Externos (`externalscripts/`)
Copie estes scripts para `/usr/lib/zabbix/externalscripts/` e ajuste o parâmetro `ExternalScripts` no zabbix_server.conf se necessário.
#### `check_ssl_advanced.sh`
Monitora validade de certificados SSL.
* **Dependências**: `openssl`
* **Item Key no Zabbix**: `check_ssl_advanced.sh[{HOST.CONN},443]`
* **Retorno**: Número de dias restantes.
#### `check_domain.py`
Monitora expiração de domínios via WHOIS.
* **Dependências**: `pip3 install python-whois`
* **Item Key no Zabbix**: `check_domain.py[{HOST.CONN}]` (Assumindo que o host é o dominio)
* **Retorno**: Dias restantes.
### 4. Scripts de Alerta (`alertscripts/`)
Copie para `/usr/lib/zabbix/alertscripts/`.
#### `telegram_graph.py`
Envia notificações **HTML ricas** com emojis e gráfico do incidente.
* **Configuração**: Edite o arquivo para definir `ZABBIX_URL`, `USER`, `PASS` e `TG_BOT_TOKEN`.
* **Zabbix Media Type**:
* **Type**: Script
* **Script name**: `telegram_graph.py`
* **Script Parameters**:
1. `{ALERT.SENDTO}`
2. `{ALERT.SUBJECT}`
3. Cole o JSON abaixo (tudo em uma linha só se possível, ou formate conforme a necessidade do seu Zabbix):
```json
{
"event_id": "{EVENT.ID}",
"event_name": "{EVENT.NAME}",
"event_nseverity": "{EVENT.NSEVERITY}",
"event_opdata": "{EVENT.OPDATA}",
"event_date": "{EVENT.DATE}",
"event_time": "{EVENT.TIME}",
"event_status": "{EVENT.STATUS}",
"host_name": "{HOST.NAME}",
"host_ip": "{HOST.CONN}",
"item_id": "{ITEM.ID1}",
"item_name": "{ITEM.NAME1}",
"item_value": "{ITEM.LASTVALUE1}",
"trigger_id": "{TRIGGER.ID}"
}
```