AlanMartines / zabbix-mysql-grafana-docker-compose

zabbix-mysql-docker-compose

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

Zabbix & Grafana Docker Compose

Este repositório contém um arquivo docker-compose.yml para a implantação do Zabbix (incluindo frontend, servidor, banco de dados e agent) e Grafana.

Utilizadas as imagens oficiais do Zabbix, do Grafana e do MySQL. Os links para consulta estão no final deste artigo.

Pré-requisitos

Antes de começar a usar este projeto, certifique-se de ter os seguintes pré-requisitos instalados em sua máquina:

Após instalar os pré-requisitos acima, você pode seguir as instruções de instalação e uso.

Configuração

  1. Clone este repositório:
    git clone https://github.com/AlanMartines/zabbix-docker-compose.git
    cd zabbix-docker-compose
  2. Configuração inicial:
    cp .env-example .env
  3. Criando os volumes:
    mkdir -p /usr/local/docker/
  4. Aplicando permições:
    chmod -R 777 /usr/local/docker/*
  5. Habitar o swarm (Opicional):
    docker swarm init

Implantação Frontend

Para iniciar os serviços:

docker compose -f docker-compose-monitor.yml up --build -d --no-recreate

Serviços Incluídos

  • zabbix-mysql: Banco de dados MySQL para Zabbix.
  • zabbix-snmptraps: Serviço SNMP Traps para Zabbix.
  • zabbix-server: Servidor Zabbix.
  • zabbix-frontend: Frontend do Zabbix usando Nginx.
  • zabbix-agent: Agente Zabbix.
  • zabbix-grafana: Grafana com o plugin Zabbix.

Links para as Imagens Oficiais

Implantação Backend

Para iniciar os serviços:

docker compose -f docker-compose-backend.yml up --build -d --no-recreate

Serviços Incluídos

  • prometheus: O Prometheus é um sistema de monitoramento e alerta.
  • node-exporter: O Node Exporter é um exportador para métricas de hardware e do sistema operacional.
  • alert-manager: O Alertmanager gerencia alertas para o Prometheus.
  • cadvisor: O cAdvisor (Container Advisor) fornece análise de desempenho e uso de recursos para containers em execução.
  • netdata: Netdata é uma ferramenta de monitoramento em tempo real que oferece insights sobre métricas de performance.
  • nginx-prometheus-exporter: Nginx Prometheus Exporter torna possível monitorar o NGINX ou NGINX Plus usando o Prometheus.

Links para as Imagens Oficiais

Nota

Instalação de Dependências após a criação do container zabbix-server (Ubuntu)


docker exec -it -u root zabbix-server /bin/bash
apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
apt install -y python3 python3-pip
rm /usr/lib/python*/EXTERNALLY-MANAGED

Dependências


pip3 install bs4
pip3 install requests
pip3 install cloudscraper
pip3 install requests six
pip3 install beautifulsoup4==4.9.0
pip3 install certifi==2020.4.5.1
pip3 install chardet==3.0.4
pip3 install cloudscraper==1.2.33
pip3 install idna==2.9
pip3 install requests-toolbelt==0.9.1
pip3 install soupsieve==2.0
pip3 install urllib3==1.25.9
pip3 install --upgrade urllib3 chardet requests

Expose Basic Nginx Metrics


vim /etc/nginx/conf.d/status.conf

nginx/status.conf


server {
	listen 127.0.0.1:80;
	server_name 127.0.0.1;
	location /nginx_status {
		stub_status on;
		access_log off;
		allow 127.0.0.1;
		deny all;
	}
}

Restarting Nginx


nginx -t
systemctl reload nginx

Contribuições

Contribuições são bem-vindas! Por favor, abra uma issue ou pull request.

Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

About

zabbix-mysql-docker-compose

License:MIT License


Languages

Language:JavaScript 100.0%