In this tutorial, we will go through the steps required to install Zabbix on Manjaro. Zabbix is an open-source monitoring software that is used to monitor the performance of networks, servers, and applications.
Before we begin, make sure that you have the following prerequisites:
It is always recommended to update the system packages before installing any new software. To update the system packages in Manjaro, run the following command in the terminal:
sudo pacman -Syu
Zabbix requires certain dependencies to be installed on your system. To install the dependencies, run the following command in the terminal:
sudo pacman -S php php-fpm nginx mariadb
To install Zabbix on Manjaro, you need to add the official Zabbix repository to your system. To add the repository, run the following command in the terminal:
wget https://repo.zabbix.com/zabbix/5.4/manjaro/pool/main/z/zabbix-release/zabbix-release-5.4-1.manjaro.noarch.rpm
sudo pacman -U zabbix-release-5.4-1.manjaro.noarch.rpm
Update the system packages again by running the following command:
sudo pacman -Syu
Now, install Zabbix by running the following command:
sudo pacman -S zabbix-server-mysql zabbix-web-nginx-mysql
Create a new database and user for Zabbix to use. Log into the MySQL server and run the following commands:
sudo mysql -u root -p
You will be prompted to enter the MySQL root password. Once logged in, run the following commands:
CREATE DATABASE zabbix CHARACTER SET utf8 collate utf8_bin;
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
Replace the password with your desired password.
Create a Zabbix server configuration file named zabbix_server.conf:
sudo nano /etc/zabbix/zabbix_server.conf
Add the following lines to the file:
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
Server=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=password
DBPort=3306
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
PIDFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
Replace the password with your desired password.
Now, import the initial schema and data into the database by running the following command:
sudo zcat /usr/share/zabbix-mysql/schema.sql.gz | mysql -u zabbix -p zabbix
You will be prompted to enter the password you set for the Zabbix user.
You need to modify the NGINX configuration file to access the Zabbix frontend. Open the file using nano:
sudo nano /etc/nginx/nginx.conf
Add the following location block to the file:
location /zabbix {
alias /usr/share/webapps/zabbix;
index index.php;
location ~ /zabbix/(.+\.php)$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
}
}
server {
listen 80;
server_name your_server_name;
root /usr/share/webapps/zabbix;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Save and exit the file.
Start the Zabbix services by running the following commands in the terminal:
sudo systemctl start zabbix-server
sudo systemctl start nginx
sudo systemctl start php-fpm
sudo systemctl enable zabbix-server
sudo systemctl enable nginx
sudo systemctl enable php-fpm
Open your web browser and navigate to http://your_server_name/zabbix. You should see the Zabbix login page. Login with the default credentials:
Username: Admin Password: zabbix
Congratulations! You have successfully installed Zabbix on Manjaro. You can now customize it according to your needs.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!