0% found this document useful (0 votes)
183 views6 pages

Zabbix For Centraziled Server Monitoring

1. The document describes the steps to install and configure Zabbix server and agent on two servers. This includes installing MySQL, PHP, configuring the database, installing Zabbix server and frontend, and enabling it as a service. 2. It also provides the procedure to install Zabbix agent on the monitored server, configure it to connect to the Zabbix server securely using TLS and pre-shared key, and enable it as a service. 3. The last step is to log into the Zabbix web interface and add the new monitored host along with relevant templates for monitoring.

Uploaded by

hari krishna
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
183 views6 pages

Zabbix For Centraziled Server Monitoring

1. The document describes the steps to install and configure Zabbix server and agent on two servers. This includes installing MySQL, PHP, configuring the database, installing Zabbix server and frontend, and enabling it as a service. 2. It also provides the procedure to install Zabbix agent on the monitored server, configure it to connect to the Zabbix server securely using TLS and pre-shared key, and enable it as a service. 3. The last step is to log into the Zabbix web interface and add the new monitored host along with relevant templates for monitoring.

Uploaded by

hari krishna
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Zabbix server installation

Short description:
Zabbix is open-source monitoring software for networks and applications. It offers real-time
monitoring of thousands of metrics collected from servers, virtual machines, and any other kind of network
device.

Installation procedure

1.Manual installation:
● First, we need to install the Zabbix Server on the server where we installled MySQL, Apache, and
PHP. Log into this machine as your non-root user:
Ssh sysadmin@server_ip
● update your system's list of available packages:
sudo apt-get update
● install the PHP modules Zabbix needs:
sudo apt-get install php7.0-xml php7.0-bcmath php7.0-mbstring
● Download and install the repository configuration package:
wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/za
bbix-release/zabbix-release_3.2-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.2-1+xenial_all.deb
● Update the package index so the new repository is included:
sudo apt-get update
● Install the Zabbix server and web frontend with MySQL database support:
sudo apt-get install zabbix-server-mysql zabbix-frontend-php
● install the Zabbix agent, which will let us collect data about the Zabbix server status itself.
sudo apt-get install zabbix-agent

● Configuring the MySQL Database For Zabbix


need to create a new MySQL database and populate it with some basic information in order to
make it suitable for Zabbix.
mysql -uroot -p
Create the Zabbix database with UTF-8 character support:
create database zabbix character set utf8 collate utf8_bin;
create a user that the Zabbix server will use, give it access to the new database, and set the
password for the user:
grant all privileges on zabbix.* to zabbix@localhost identified by 'your_password';
apply these new permissions:
flush privileges;
quit;
● Run the following command to set up the schema and import the data into the zabbix database.
We'll use zcat since the data in the file is compressed.
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
Enter the password for the zabbix MySQL user that you configured when prompted.
● need to set the database password in the Zabbix server configuration file. Open the configuration
file in your editor:
sudo nano /etc/zabbix/zabbix_server.conf
DBPassword=

● Configuring PHP For Zabbix


The Zabbix installation process created an Apache configuration file that contains these settings. It
is located in the directory /etc/zabbix and is loaded automatically by Apache
sudo nano /etc/zabbix/apache.conf
IfModule mod_php7.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
</IfModule>
Uncomment the timezone line, highlighted above, and change it to Asia/Kolkata
● restart Apache to apply these new settings.
sudo systemctl restart apache2
● now start the Zabbix server.
sudo systemctl start zabbix-server
● check whether the Zabbix server is running properly:
sudo systemctl status zabbix-server
● enable the server to start at boot time:
sudo systemctl enable zabbix-server

● Configuring Settings for the Zabbix Web Interface

The web interface lets us see reports and add hosts that we want to monitor, but it needs some
initial setup before we can use it. Launch your browser and go to the address
http://your_zabbix_server_ip_address/zabbix/.
The default user is Admin and the password is zabbix.
2. Dockerization of Zabbix Server
● Create a zabbix.yaml file and paste it

version: '3'
services:
db:
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: softinc
MYSQL_ROOT_PASSWORD: softinc
ports:
- 3006:3306
volumes:
- /var/mysql_zabbix_data:/var/lib/mysql

zabbix-java-gateway:
image: zabbix/zabbix-java-gateway:latest
restart: always

zabbix-server-mysql:
image: zabbix/zabbix-server-mysql:latest
restart: always
environment:
DB_SERVER_HOST: db
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: softinc
MYSQL_ROOT_PASSWORD: softinc
ZBX_JAVAGATEWAY: zabbix-java-gateway
links:
- db:mysql
- zabbix-java-gateway:zabbix-java-gateway
ports:
- 10051:10051

zabbix-web-nginx-mysql:
image: zabbix/zabbix-web-nginx-mysql:latest
restart: always
environment:
DB_SERVER_HOST: db
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: softinc
MYSQL_ROOT_PASSWORD: softinc
links:
- db:mysql
-y
zabbix-server-mysql:zabbix-server
ports:
- 7500:80
● Run the container as stack deploy service.
docker stack deploy -c zabbix.yaml zabbix_server

Installing and Configuring the Zabbix Agent

● Log in to the second server, which we'll call the “monitored server”.
Ssh sysadmin@monitoring_server-IP
● run the following commands to install the repository configuration package:
wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-
release_3.2-1+xenial_all.deb

sudo dpkg -i zabbix-release_3.2-1+xenial_all.deb


● update the package index:
sudo apt-get update
● install the Zabbix agent:
sudo apt-get install zabbix-agent
● Zabbix supports certificate-based encryption, setting up a certificate authority is beyond the scope
of this tutorial, but we can use pre-shared keys (PSK) to secure the connection between the server
and agent.
generate a PSK:
sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Show the key so you can copy it somewhere. You will need it to configure the host.
cat /etc/zabbix/zabbix_agentd.psk
● edit the Zabbix agent settings to set up its secure connection to the Zabbix server. Open the agent
configuration file in your text editor:
sudo nano /etc/zabbix/zabbix_agentd.conf
1.First you have to edit the IP address of the Zabbix server.
### Option: Server
# List of comma delimited IP addresses (or hostnames) of Zabbix servers.
# Incoming connections will be accepted only from the hosts listed here.
# If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally.
#
# Mandatory: no
# Default:
# Server=
Server=your_zabbix_server_ip_address
2.Find the TSLConnect section
### Option: TLSConnect
# How the agent should connect to server or proxy. Used for active checks.
# Only one value can be specified:
# unencrypted - connect without encryption
# psk - connect using TLS and a pre-shared key
# cert - connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted'
connection)
# Default:
# TLSConnect=unencrypted
TLSConnect=psk
3. locate the TLSAccept section
### Option: TLSAccept
# What incoming connections to accept.
# Multiple values can be specified, separated by comma:
# unencrypted - accept connections without encryption
# psk - accept connections secured with TLS and a pre-shared key
# cert - accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted'
connection)
# Default:
# TLSAccept=unencrypted
TLSAccept=psk
4. find the TLSPSKIdentity section
### Option: TLSPSKIdentity
# Unique, case sensitive string used to identify the pre-shared key.
# Mandatory: no
# Default:
# TLSPSKIdentity=
TLSPSKIdentity=PSK 001
5. Locate the TLSPSKFile option:
### Option: TLSPSKFile
# Full pathname of a file containing the pre-shared key.
# Mandatory: no
# Default:
# TLSPSKFile=
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
● save and close the file. Now you can start the Zabbix agent and set it to start at boot time
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent

Adding the New Host to Zabbix Server web

lick on the Configuration, and then Hosts in the top navigation bar. Then click Create host button in the top right
corner of the screen. This will open the host configuration page.
Click on the below link to know more about the host configuration,
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-zabbix-to-securely-monitor-remote-
servers-on-ubuntu-16-04#step-6-%E2%80%94-adding-the-new-host-to-zabbix-server

Link for adding iops template in zabbix


https://github.com/grundic/zabbix-disk-performance

You might also like