Want bulletproof server monitoring? Learn how to install Zabbix on Rocky Linux 10 with this step-by-step guide. Discover powerful features, avoid common mistakes, and get set up in minutes—don’t fall behind while others level up their infrastructure! #centlinux #linux #zabbix
Table of Contents
How to install Zabbix on Rocky Linux 10
Zabbix is one of the most powerful and flexible open-source monitoring solutions available today. From tracking network devices, servers, and applications to setting up custom alerts and detailed dashboards, Zabbix does it all. Pairing it with a solid OS like Rocky Linux 10 makes for a stable, secure, and enterprise-grade monitoring environment.
If you’re a system administrator, DevOps engineer, or just an IT enthusiast looking to gain better visibility into your infrastructure, installing Zabbix on Rocky Linux 10 is a great choice. This guide will walk you through the process, step-by-step, so even if you’re not a Linux guru, you’ll still be able to set it up successfully. Let’s dive in!

Introduction
What is Zabbix?
Zabbix is an enterprise-class monitoring platform designed to provide real-time visibility into your entire IT infrastructure. It can monitor servers, cloud resources, containers, databases, networks, websites, and more. Zabbix works through a combination of agents, SNMP, APIs, and scripts to gather and visualize data.
Key features include:
- Real-time monitoring and alerting
- Auto-discovery of devices
- Custom dashboards and graphs
- Support for distributed monitoring
- Integration with external tools like Slack, email, and Grafana
It’s also 100% free and open source, meaning you get enterprise-grade tools without enterprise costs. The flexibility and power of Zabbix make it a go-to solution for many organizations around the world.
Why Choose Rocky Linux 10 for Zabbix?
Rocky Linux 10 is a fantastic choice for deploying Zabbix. It’s a stable, RHEL-compatible Linux distribution created to fill the gap left by CentOS’s shift in focus. Designed with enterprise use in mind, Rocky Linux brings long-term support, reliability, and strong community backing.
Why it’s ideal for Zabbix:
- Enterprise-grade stability
- Binary-compatible with Red Hat Enterprise Linux (RHEL)
- Strong support for system packages and repositories
- Active development and community support
Combining Zabbix with Rocky Linux gives you a robust, scalable, and cost-effective solution for infrastructure monitoring. Whether you’re running on bare metal, virtual machines, or the cloud—this duo will handle it effortlessly.
Recommended Training: Zabbix 7 Application and Network Monitoring from Sean Bradley

System Requirements and Prerequisites
Hardware Requirements for Zabbix
Before installing Zabbix, you need to make sure your system meets the basic hardware requirements. These requirements can vary depending on the number of hosts and items you want to monitor.
Here’s a general guide:
Component | Minimum | Recommended |
---|---|---|
CPU | 1 core | 2+ cores |
RAM | 1 GB | 2–4 GB+ |
Storage | 1 GB | 5–10 GB+ |
If you plan to monitor a large network or use extensive dashboards and history retention, you’ll need more resources. A medium deployment might require 8+ GB RAM and multiple CPU cores.
Software Dependencies
Zabbix requires several software packages to run correctly, including:
- Web server (Apache or Nginx)
- Database server (MariaDB or PostgreSQL)
- PHP (version compatible with Zabbix)
- Required PHP modules
- Zabbix repository packages
We’ll cover the installation of these as part of the setup process, so don’t worry if you haven’t installed them yet.
Preparing Your Rocky Linux 10 Environment
Before starting the installation:
sudo dnf update -y
sudo dnf install epel-release -y
sudo timedatectl set-timezone <Your_Timezone>
Disable SELinux (optional but recommended for beginners):
sudo sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
sudo setenforce 0
Configure the hostname (optional):
sudo hostnamectl set-hostname zabbix-server
These steps prepare your Rocky Linux 10 environment for a smooth Zabbix installation. Now that the basics are in place, let’s move forward with adding the necessary repositories.
Read Also: How to install Zabbix on Rocky Linux 9
Installing and Configuring the Zabbix Repository
Adding the Zabbix Official Repository
Zabbix provides an official RPM repository that makes installation easy. You can install it directly using a single command tailored for Rocky Linux 10.
Run:
sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/10/x86_64/zabbix-release-6.0-4.el10.noarch.rpm
After that, clean the repository cache:
sudo dnf clean all
This step ensures your package manager recognizes the new repository.
Updating System Packages
Before installing anything from the new repo, update your system again to ensure compatibility:
sudo dnf update -y
This includes syncing metadata and ensures that you get the latest versions of required dependencies.
Now your system is fully ready to begin the actual installation of Zabbix components.
Head Shavers for Bald Men, 5 in 1 Electric Razor IPX7 Waterproof for Bald Men, 5D Rotary Shaver, Wet Dry Bald Head Shavers, LED Display Rechargeable with Grooming Kit,for Head & Face Shaver
$35.99 (as of August 6, 2025 14:58 GMT +00:00 – More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Installing Zabbix Server, Frontend, and Agent
Installing the Zabbix Server
With the repository in place, you can now install the core Zabbix server:
sudo dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts -y
This command pulls down all necessary packages to run the Zabbix server using MySQL/MariaDB as the database backend.
Installing the Zabbix Frontend
Zabbix comes with a PHP-based frontend that runs under Apache. It’s included in the earlier install command, but we’ll fine-tune it later when configuring PHP.
Installing the Zabbix Agent
You need the Zabbix agent installed on each system you want to monitor—including your own server:
sudo dnf install zabbix-agent -y
The agent collects local metrics like CPU, RAM, and disk usage, sending that data back to the Zabbix server.
Configuring the Database for Zabbix
Installing MariaDB Server
Zabbix requires a reliable backend database to store metrics, events, configurations, and history data. MariaDB is the preferred choice for many due to its performance and ease of setup on Rocky Linux 10.
To install MariaDB, run:
sudo dnf install mariadb-server -y
After installation, start and enable the MariaDB service:
sudo systemctl start mariadb
sudo systemctl enable mariadb
Secure your MariaDB installation:
sudo mysql_secure_installation
You’ll be asked to set MariaDB root password and disable anonymous users, remote root login, and test databases. Follow the prompts for a more secure setup.
Creating the Zabbix Database and User
With MariaDB installed, the next step is to create a dedicated database and user for Zabbix.
Log into the MariaDB shell:
sudo mysql -u root -p
Then run the following SQL commands:
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER zabbix@localhost IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost;
FLUSH PRIVILEGES;
EXIT;
Be sure to replace 'your_secure_password'
with a strong and unique password.
Importing Initial Schema and Data
Zabbix provides SQL scripts that populate the database with the required schema and initial data. To import them:
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix
Enter the Zabbix user password when prompted. This step may take a few minutes depending on your system’s speed.
Once it’s completed, your database is now ready for the Zabbix server to use.
Configuring Zabbix Server and Frontend
Editing the Zabbix Server Configuration File
Now, we need to point the Zabbix server to the database we just created.
Open the config file:
sudo nano /etc/zabbix/zabbix_server.conf
Find and update these lines:
DBName=zabbix
DBUser=zabbix
DBPassword=your_secure_password
Save and close the file.
This tells the Zabbix server how to connect to the database. Without this step, the server won’t be able to start or function properly.
Setting Up PHP for Zabbix Frontend
Zabbix frontend is a PHP application, so we need to adjust PHP settings for optimal performance.
Open the PHP configuration file for Zabbix:
sudo nano /etc/php-fpm.d/zabbix.conf
Ensure the following parameters are set (adjust the timezone accordingly):
php_value[date.timezone] = America/New_York
You can find your timezone using:
timedatectl list-timezones
Restarting and Enabling Services
Now that all configurations are done, start and enable the necessary services:
sudo systemctl restart zabbix-server zabbix-agent httpd php-fpm
sudo systemctl enable zabbix-server zabbix-agent httpd php-fpm
Check the status of services to confirm everything is running:
sudo systemctl status zabbix-server
If all services are active, congratulations—you’re almost ready to use Zabbix!
Accessing Zabbix Web Interface
Navigating to the Zabbix Frontend URL
With the web server running, it’s time to access the Zabbix frontend in your browser.
Open your browser and go to:
http://<your_server_ip_or_hostname>/zabbix
You should see the Zabbix setup wizard. If not, double-check that your firewall allows HTTP traffic and that Apache is running.
To allow HTTP traffic through the Linux firewall:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
Completing the Web Installer Setup
The setup wizard walks you through these steps:
- Check prerequisites – Ensures PHP settings, database drivers, and web server are ready.
- Configure database – Enter the DB details you set up:
- DB type: MySQL
- Host: localhost
- Port: 3306
- DB name: zabbix
- DB user: zabbix
- DB password: your_secure_password
- Zabbix server details – Set the server name and port.
- Pre-installation summary – Confirm everything looks good.
- Install – Completes the setup.
Once done, you’ll be redirected to the login page.
Logging into the Zabbix Dashboard
Default login credentials:
- Username:
Admin
- Password:
zabbix
After logging in, immediately change the default password for security.
The Zabbix dashboard is where you’ll configure hosts, monitor metrics, create alerts, and build dashboards.
Levi’s Men’s 501 Original Fit Jeans (Also Available in Big & Tall)
$43.43 (as of August 7, 2025 14:33 GMT +00:00 – More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Securing Your Zabbix Installation
Setting Strong Passwords
First and foremost, change all default passwords. Start with:
- Zabbix web admin account
- MariaDB root and Zabbix users
- Any other system users or services
Use long, complex passwords and consider using a password manager for storage.
Configuring Firewall and SELinux
We already opened HTTP in the firewall, but it’s a good idea to allow HTTPS too:
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
If you re-enabled SELinux, set the correct context:
sudo setsebool -P httpd_can_connect_zabbix=1
And apply file contexts:
sudo restorecon -Rv /etc/zabbix /etc/httpd /usr/share/zabbix
Enabling HTTPS with SSL
To secure your Zabbix frontend with SSL, you can use Let’s Encrypt:
- Install Certbot:
sudo dnf install certbot python3-certbot-apache -y
- Generate a certificate:
sudo certbot --apache -d yourdomain.com
- Set up auto-renewal:
sudo systemctl enable certbot-renew.timer
Now, you can access Zabbix securely at https://yourdomain.com/zabbix
.
Monitoring with Zabbix
Adding Hosts and Templates
Once Zabbix is up and running, your first task is usually to add hosts—these are the servers, network devices, or applications you want to monitor.
To add a new host:
- Log into the Zabbix dashboard.
- Go to Configuration → Hosts.
- Click on Create Host.
- Enter the Host name, Visible name, and Group.
- Under Interfaces, add an IP address and port.
- Assign a Template to the host.
Templates in Zabbix are preconfigured sets of items, triggers, and graphs. Using them saves a ton of time. For example:
Template OS Linux
– monitors CPU, memory, disk, networkTemplate App MySQL
– monitors MySQL/MariaDB performanceTemplate SNMP Device
– great for network switches and printers
You can also create custom templates if you have specific metrics you want to track.
Setting Up Triggers and Alerts
Triggers are conditions that evaluate your monitored data. For instance, a trigger might alert you when:
- CPU load exceeds 90% for 5 minutes
- Disk space falls below 10%
- Ping to a server fails
To create a trigger:
- Go to Configuration → Hosts.
- Click on the host name.
- Navigate to Triggers and click Create Trigger.
- Set the name, expression (e.g.,
{host:system.cpu.load[percpu,avg1].last()}>5
), severity, and dependencies.
Alerts in Zabbix are configured under Media Types and Actions:
- Media Types – Email, SMS, Slack, Telegram, webhook, etc.
- Actions – What should happen when a trigger fires (e.g., send a message).
Zabbix allows for escalations, recovery messages, time-based notifications, and more, giving you full control over your alerting logic.
Creating Custom Dashboards
Zabbix dashboards give you an overview of system health, network performance, and any issues that need your attention.
To create a dashboard:
- Go to Monitoring → Dashboards.
- Click Create Dashboard.
- Name it, assign permissions, and add widgets.
Popular widgets include:
- System status overview
- Top hosts by CPU load
- Problems view
- Custom graphs
- Maps and topology views
You can make dashboards public or restrict access to certain user groups, making them perfect for both teams and clients.
Troubleshooting Common Issues
Zabbix Server Not Starting
One of the most frustrating issues is when the Zabbix server fails to start. To troubleshoot:
- Check the service status:
sudo systemctl status zabbix-server
- Check logs:
sudo tail -f /var/log/zabbix/zabbix_server.log
Common causes:
- Incorrect DB credentials
- Database not running
- Port conflicts
- Missing schema import
Fix any misconfigurations in /etc/zabbix/zabbix_server.conf
and ensure MariaDB is active.
Web Interface Not Loading
If the frontend isn’t loading:
- Confirm Apache and PHP-FPM are running:
sudo systemctl status httpd php-fpm
- Check PHP and Apache logs:
sudo tail -f /var/log/httpd/error_log
sudo tail -f /var/log/php-fpm/www-error.log
- Ensure port 80/443 is open in the firewall:
sudo firewall-cmd --list-all
Also verify that the hostname or IP you’re accessing matches your server and that DNS is resolving properly.
Database Connection Problems
If Zabbix shows errors connecting to the database:
- Recheck the DB credentials in the
zabbix_server.conf
- Make sure the Zabbix user has the correct privileges
- Confirm MariaDB is listening on
localhost:3306
- Check for typos in the SQL import step
Use this to test DB connection manually:
mysql -uzabbix -p -h localhost zabbix
If it connects, the issue is likely in the Zabbix config file.
Roku Streaming Stick HD 2025 — HD Streaming Device for TV with Roku Voice Remote, Free & Live TV
$19.00 (as of August 5, 2025 13:32 GMT +00:00 – More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Upgrading and Maintaining Zabbix
Keeping Zabbix Updated
Zabbix regularly releases updates for performance, features, and security. To upgrade:
- Back up your Zabbix DB and config files.
- Update the Zabbix repository to the latest version.
- Run:
sudo dnf upgrade zabbix-server-mysql zabbix-web-mysql zabbix-agent
- Restart the services:
sudo systemctl restart zabbix-server zabbix-agent httpd php-fpm
Always read the official upgrade notes before applying updates.
Backing Up Zabbix Data
Regular backups are essential for disaster recovery.
Backup the database:
mysqldump -u root -p zabbix > zabbix_backup.sql
Also, back up config files:
tar -czvf zabbix_configs.tar.gz /etc/zabbix /etc/httpd /etc/php-fpm.d
Automate these backups using cron jobs or backup tools like Bacula or Duplicati.
Performance Optimization Tips
As your Zabbix instance grows, performance tuning becomes critical.
Tips:
- Enable database partitioning
- Tune MariaDB for Zabbix with InnoDB buffer pool adjustments
- Use proxy servers for distributed monitoring
- Disable unused features/templates
- Optimize trigger expressions and discovery rules
Monitoring your own Zabbix server using Zabbix itself is a smart way to stay proactive.
Integrating Zabbix with Other Tools
Zabbix and Grafana
Grafana is a popular dashboard tool that many admins prefer for its sleek UI and flexible visualizations. You can integrate it with Zabbix using the official plugin.
Steps:
- Install Grafana and Zabbix plugin:
grafana-cli plugins install alexanderzobnin-zabbix-app
- Configure the Zabbix data source with API access.
- Build custom dashboards with graphs, charts, and panels.
This is especially useful for NOC screens or executive reporting.
Zabbix API Usage
The Zabbix API allows you to automate tasks like adding hosts, retrieving metrics, or creating alerts.
Basic usage involves:
- Authenticating with a user token
- Sending JSON-RPC calls over HTTP
Example: Getting a list of all hosts:
curl -X POST -H 'Content-Type: application/json' -d '{
"jsonrpc": "2.0",
"method": "host.get",
"params": {"output": ["hostid","name"]},
"auth": "your_auth_token",
"id": 1
}' http://yourdomain.com/zabbix/api_jsonrpc.php
This is ideal for integrating Zabbix with CI/CD pipelines or external inventory systems.
Integrations for Slack, Telegram, and Email
Zabbix supports multiple notification methods. You can send alerts to:
- Slack – via webhook and custom scripts
- Telegram – using a bot and custom media type
- Email – built-in support via SMTP
Set these up under Administration → Media types, and link them with Users and Actions.
With the right integration, you’ll never miss an important alert again—even on the go.
Conclusion
Installing Zabbix on Rocky Linux 10 isn’t just about spinning up a monitoring tool—it’s about gaining complete visibility and control over your infrastructure. From the initial repository setup to configuring the web interface, database, and fine-tuning security, every step is designed to build a resilient monitoring system that scales with your environment.
Zabbix’s strength lies in its flexibility. Whether you’re a sysadmin monitoring a handful of Linux servers or an enterprise-level IT team managing hundreds of devices across the globe, Zabbix adapts to your needs. The real-time graphs, intelligent alerts, integrations, and automation make it not just a monitoring solution, but an operational command center.
With Rocky Linux 10 as its foundation, you benefit from enterprise-grade reliability without vendor lock-in or subscription costs. And the best part? It’s all free and open-source.
By following this guide, you’ve gone from zero to a fully operational Zabbix server. But this is just the beginning. Dive into advanced topics like custom scripting, SNMP traps, and distributed proxies to take your setup to the next level. Your infrastructure will thank you.
Struggling with AWS or Linux server issues? I specialize in configuration, troubleshooting, and security to keep your systems performing at their best. Check out my Fiverr profile for details.
Frequently Asked Questions (FAQs)
1. Can I install Zabbix on a minimal Rocky Linux installation?
Absolutely. A minimal Rocky Linux 10 installation works just fine. You’ll need to manually install all necessary packages, such as Apache, MariaDB, PHP, and other dependencies. The steps covered in this guide include everything you need to make it work on a minimal install.
2. How do I reset the Zabbix admin password?
If you’ve lost access to the Zabbix frontend, you can reset the password using the database:
UPDATE users SET passwd=md5('new_password') WHERE alias='Admin';
Run this SQL inside your Zabbix database. Replace 'new_password'
with your desired password.
3. Is it possible to monitor Windows servers with Zabbix?
Yes! Zabbix has a native agent for Windows. Simply download and install the agent on your Windows host, configure the host settings, and link it to the Template OS Windows
. From there, you can monitor CPU, disk, services, and more.
4. Can I use PostgreSQL instead of MariaDB with Zabbix?
Yes, Zabbix supports both MariaDB/MySQL and PostgreSQL. During installation, choose the appropriate server package (e.g., zabbix-server-pgsql
), and follow the same setup steps, replacing MariaDB commands with PostgreSQL equivalents.
5. What’s the default login for Zabbix frontend?
After completing the web installation wizard, you can log in with:
- Username:
Admin
- Password:
zabbix
Make sure to change this default password immediately after the first login to secure your setup.
Leave a Reply
Please log in to post a comment.