How to Install Zabbix Agent on Rocky Linux/Alma Linux 8

A Zabbix agent is a program that runs on a remote machine that needs to be monitored through the Zabbix server. The agent collects the data on the remote server and send back to Zabbix server when requested. Zabbix agent must be installed on all the remote systems that need to be monitor through the Zabbix server.

There are two types of checks:

  • Passive Check - Zabbix Agent sent data to server on their request.
  • Active Check - Zabbix Agent sends data periodically to server.

In this article, we will learn how to install the Zabbix agent in RHEL 8 based distributions like the Rocky Linux or Alma Linux. Checkout this guide on How to Install and Configure Zabbix Server 5 on Rocky Linux/Alma Linux 8.

Related content:

Ensure that the server packages are up to date

Before proceeding, let us make sure that our server packages are up to date with this command:

1
sudo dnf -y update

Let us also install some common packages that we will need

1
sudo dnf install -y vim

Install the Zabbix Agent

The Zabbix agent packages are not available under the default Rocky Linux 8 repositories. We will need to configure the Zabbix repository in our system before installing the agent.

The latest Zabbix version as at the writing of this article is Zabbix version 5.4. Install the Zabbix version 5.4 repository using this command:

1
sudo dnf install -y https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm

Once the repository is installed, we can install the agent. Use this command:

1
sudo dnf install -y zabbix-agent

Confirm the software version installed:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
$ rpm -qi zabbix-agent
Name        : zabbix-agent
Version     : 5.4.9
Release     : 1.el8
Architecture: x86_64
Install Date: Mon 17 Jan 2022 06:23:27 AM UTC
Group       : Applications/Internet
Size        : 2353430
License     : GPLv2+
Signature   : RSA/SHA512, Thu 23 Dec 2021 12:54:16 PM UTC, Key ID 082ab56ba14fe591
Source RPM  : zabbix-5.4.9-1.el8.src.rpm
Build Date  : Thu 23 Dec 2021 12:28:37 PM UTC
Build Host  : 3a869a1545a8
Relocations : (not relocatable)
URL         : http://www.zabbix.com/
Summary     : Old Zabbix Agent
Description :
Old implementation of zabbix agent.
To be installed on monitored systems.

Configure Zabbix Agent

Now, you need to configure the Agent service to allow Zabbix server requests. We will also update the Hostname so we know which server we configured the agent on. Edit the Zabbix agent configuration file by adding the Zabbix server IP.

1
sudo vim /etc/zabbix/zabbix_agentd.conf

Add this content:

1
2
3
Server=10.70.5.218
ServerActive=10.70.5.218
Hostname=dev-rockysrv1

Disable SELinux and Adjust Firewall for Zabbix

If you have firewall installed and enabled, you will need to allow the Zabbix ports 10050 and 10051. and HTTP service through the firewall. You can allow them with the following command:

1
2
firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --reload

You will also need to set SELinux to permissive in order to access the frontend from a browser. To do that, run the command:

1
2
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config

Start and enable the Zabbix agent

We can now start the agent. The agent is not started by default. Use this command to start:

1
sudo systemctl start zabbix-agent

Check the status to confirm that it is started.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$ sudo systemctl status zabbix-agent

● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2022-01-17 06:57:33 UTC; 19s ago
  Process: 39725 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
  Process: 39728 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
 Main PID: 39730 (zabbix_agentd)
    Tasks: 6 (limit: 23176)
   Memory: 3.9M
   CGroup: /system.slice/zabbix-agent.service
           /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
           /usr/sbin/zabbix_agentd: collector  [idle 1 sec]
           /usr/sbin/zabbix_agentd: listener #1  [waiting for connection]
          /usr/sbin/zabbix_agentd: listener #2  [waiting for connection]
           /usr/sbin/zabbix_agentd: listener #3  [waiting for connection]
           /usr/sbin/zabbix_agentd: active checks #1  [idle 1 sec]

Jan 17 06:57:33 dev-rockysrv1.inv.re systemd [1]: zabbix-agent.service: Succeeded.
Jan 17 06:57:33 dev-rockysrv1.inv.re systemd [1]: Stopped Zabbix Agent.
Jan 17 06:57:33 dev-rockysrv1.inv.re systemd [1]: Starting Zabbix Agent...
Jan 17 06:57:33 dev-rockysrv1.inv.re systemd [1]: zabbix-agent.service: Can't open PID file /run/zabbix/zabbix_agentd.pid (yet?) after start: No such file or directory
Jan 17 06:57:33 dev-rockysrv1.inv.re systemd [1]: Started Zabbix Agent.

From the above output, we can confirm that the agent is running. To enable the agent to start on boot, use this command:

1
sudo systemctl enable zabbix-agent

That is it! You have successfully installed Zabbix Agent on your Rocky Linux Machine. You can now proceed to add host in zabbix server to be monitored. Checkout this guide How to Add Host in Zabbix Server to Monitor.

Last updated on Mar 20, 2024 16:36 +0300
comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy