Zabbix Installation Guide
1. Introduction
This guide presents the installation of Zabbix, an open-source monitoring tool that will be used for collecting and analyzing metrics in the br-lab laboratory. Zabbix provides real-time monitoring of devices, servers, and applications, assisting in the identification and resolution of problems. The installation uses Docker Compose to provision services quickly and pre-configured, ensuring a practical and efficient implementation in the laboratory environment.
2. What is Zabbix?
Zabbix is an open-source monitoring platform that collects, processes, and displays performance metrics from servers, applications, and network devices. It offers an intuitive graphical interface, alert notifications, and reports to identify problems and help administrators proactively manage their infrastructures.
Main components:
- Zabbix Server: Processes monitoring data, stores it in the database, and sends alerts.
- Web Interface (Frontend): Allows viewing, configuring, and analyzing metrics.
- Zabbix Agent: Collects metrics from the host where it is installed.
- Database: Stores historical data, configurations, and performance statistics.
3. Prerequisites
Make sure to meet the following prerequisites before installation:
-
br-lab network configured:
- The br-lab network is mandatory to isolate services in the environment. For more details on this configuration, see the guide First Steps: Preparing the Environment.
-
Required Packages:
docker,docker-compose,curl.
4. Preparing the Environment
To quickly initialize the Zabbix environment on the br-lab network, we will use Docker Compose with an automated script.
5. Downloading Docker Compose
To download Docker Compose, run the following command:
curl -L -o get.sh "https://git.rnp.br/redes-abertas/docker-composes/-/raw/main/Zabbix/get.sh?inline=false" && sh get.sh && cd Zabbix
curl -L -o get.bat "https://git.rnp.br/redes-abertas/docker-composes/-/raw/main/Zabbix/get.bat?inline=false" && call get.bat && cd Zabbix
This command downloads the installation script and then navigates to the Zabbix directory.
5. Starting the containers
To start the Zabbix services, use the command below:
docker compose up -d
This command will start the following containers:
-
PostgreSQL: Database that stores Zabbix metrics.
- IP:
172.10.10.118 - Access credentials:
- User:
zabbix - Password:
zabbixdatabase
- User:
- Default Port:
5432(exposed only within the br-lab network).
- IP:
-
Zabbix Server: Main component that processes data and sends alerts.
- IP:
172.10.10.115 - Default Port:
10051(for connection with agents).
- IP:
-
Documentation: Zabbix documentation
-
Zabbix Frontend: Web interface for configuration and visualization.
- IP:
172.10.10.116 - Default Port:
880(accessible externally).
- IP:
-
Documentation: Zabbix documentation
-
Zabbix Agent: Responsible for collecting metrics from the main host.
- IP:
172.10.10.117 - Default Port:
10050.
- IP:
- Documentation: Zabbix documentation
To check if all containers are running, use:
docker compose ps
6. Accessing the Zabbix Frontend
After the services are initialized, the Zabbix Web interface will be available at:
http://<SERVER_IP>:880
6.1. Access Credentials
The default credentials for logging into the Zabbix Frontend are:
- User:
Admin - Password:
zabbix
6.2. Changing the Default Password
For security reasons, change the administrator user's password after the first login:
- Navigate to Administration > Users.
- Select the Admin user and click on Change Password.
8. Next Steps
With the Zabbix environment configured, you can:
- Add custom templates for monitoring specific services.
- Integrate Zabbix with other automation and monitoring tools.
Consult the Zabbix documentation to explore more features and best practices.