Zabbix Documentation 4.4

3.04.04.24.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.4Guidelines

User Tools

Site Tools


manual:installation:install_from_packages:rhel_centos

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:installation:install_from_packages:rhel_centos [2018/09/11 05:29]
martins-v some rewording
manual:installation:install_from_packages:rhel_centos [2019/10/08 06:30] (current)
yuriii Updated links to zabbix repo
Line 3: Line 3:
 ==== Overview ==== ==== Overview ====
  
-Official Zabbix packages are available for RHEL 7, CentOS 7 and Oracle Linux 7In this documentation we will refer to all 3 using the term ''​RHEL''​.+Official Zabbix packages are available for
 + 
 +  * RHEL 8, CentOS 8 and Oracle Linux 8 
 +  * RHEL 7, CentOS 7 and Oracle Linux 7 
 + 
 +In this documentation we will refer to all 3 using the term ''​RHEL''​.
  
 Some agent and proxy packages are available for [[https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​6/​x86_64/​|RHEL 6]] and [[https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​5/​x86_64|RHEL 5]] as well. Some agent and proxy packages are available for [[https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​6/​x86_64/​|RHEL 6]] and [[https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​5/​x86_64|RHEL 5]] as well.
Line 10: Line 15:
  
 Install the repository configuration package. This package contains yum (software package manager) configuration files. Install the repository configuration package. This package contains yum (software package manager) configuration files.
 +
 +RHEL 8:
 +
 +  # rpm -Uvh https://​repo.zabbix.com/​zabbix/​4.4/​rhel/​8/​x86_64/​zabbix-release-4.4-1.el8.noarch.rpm
  
 RHEL 7: RHEL 7:
  
-  # rpm -ivh https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​7/​x86_64/​zabbix-release-3.5-1.el7.noarch.rpm+  # rpm -Uvh https://​repo.zabbix.com/​zabbix/​4.4/​rhel/​7/​x86_64/​zabbix-release-4.4-1.el7.noarch.rpm
  
 RHEL 6: RHEL 6:
  
-  # rpm -ivh https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​6/​x86_64/​zabbix-release-3.5-1.el6.noarch.rpm+  # rpm -Uvh https://​repo.zabbix.com/​zabbix/​4.4/​rhel/​6/​x86_64/​zabbix-release-4.4-1.el6.noarch.rpm
  
 RHEL 5: RHEL 5:
  
-  # rpm -ivh https://​repo.zabbix.com/​zabbix/​3.5/​rhel/​5/​x86_64/​zabbix-release-3.5-1.noarch.rpm+  # rpm -Uvh https://​repo.zabbix.com/​zabbix/​4.4/​rhel/​5/​x86_64/​zabbix-release-4.4-1.el5.noarch.rpm
  
 === Frontend installation prerequisites === === Frontend installation prerequisites ===
Line 33: Line 42:
 ==== Server/​proxy/​frontend installation ==== ==== Server/​proxy/​frontend installation ====
  
-To install Zabbix server ​(available for RHEL 7[[manual/​installation/​install_from_packages/​rhel_centos#​zabbix_frontend_and_server_on_rhel_6|deprecated on RHEL 6]]) with MySQL support:+To install Zabbix server ​on RHEL 7/8 ([[manual/​installation/​install_from_packages/​rhel_centos#​zabbix_frontend_and_server_on_rhel_6|deprecated on RHEL 6]]) with MySQL support:
  
   # yum install zabbix-server-mysql   # yum install zabbix-server-mysql
Line 41: Line 50:
   # yum install zabbix-proxy-mysql   # yum install zabbix-proxy-mysql
  
-To install Zabbix frontend ​(available for RHEL 7[[manual/​installation/​install_from_packages/​rhel_centos#​zabbix_frontend_and_server_on_rhel_6|deprecated on RHEL 6]]) with MySQL support:+Substitute '​mysql'​ in the commands with '​pgsql'​ to use PostgreSQL, or with '​sqlite3'​ to use SQLite3 (proxy only). 
 + 
 +To install Zabbix frontend ​on RHEL 8 with MySQL/​Apache support: 
 + 
 +  # yum install zabbix-web-mysql zabbix-apache-conf 
 + 
 +To install Zabbix frontend on RHEL 7 ([[manual/​installation/​install_from_packages/​rhel_centos#​zabbix_frontend_and_server_on_rhel_6|deprecated on RHEL 6]]) with MySQL/​Apache ​support:
  
   # yum install zabbix-web-mysql   # yum install zabbix-web-mysql
  
-Substitute '​mysql'​ in the commands ​with '​pgsql'​ to use PostgreSQL, or with '​sqlite3'​ to use SQLite3 (proxy ​only).+To install Zabbix frontend on RHEL 7/8 with MySQL/Nginx support: 
 + 
 +  # yum install epel-release 
 +  # yum install zabbix-web-mysql zabbix-nginx-conf 
 + 
 +Note that Nginx for RHEL is available ​only in [[https://​fedoraproject.org/​wiki/​EPEL|EPEL]]. 
  
 === Creating database === === Creating database ===
  
-For Zabbix [[manual:​concepts:​server|server]] and [[manual:​concepts:​proxy|proxy]] daemons a database is required. It is not needed to run Zabbix [[manual:​concepts:​agent|agent]]. ​+For Zabbix [[manual:​concepts:​server|server]] and [[manual:​concepts:​proxy|proxy]] daemons a database is required. It is not needed to run Zabbix [[manual:​concepts:​agent|agent]].
  
-<note warning>If Zabbix server and proxy are installed on the same host, their databases must be created with different names!</​note>​+<note warning>Separate databases are needed for Zabbix server and Zabbix ​proxy; they cannot use the same database. Therefore, if they are installed on the same host, their databases must be created with different names!</​note>​
  
 Create the database using the provided instructions for [[manual:​appendix:​install:​db_scripts#​mysql|MySQL]] or [[manual:​appendix:​install:​db_scripts#​postgresql|PostgreSQL]]. Create the database using the provided instructions for [[manual:​appendix:​install:​db_scripts#​mysql|MySQL]] or [[manual:​appendix:​install:​db_scripts#​postgresql|PostgreSQL]].
Line 57: Line 78:
 === Importing data === === Importing data ===
  
-Now import initial schema and data for the server with MySQL:+Now import initial schema and data for the **server** with MySQL:
  
   # zcat /​usr/​share/​doc/​zabbix-server-mysql*/​create.sql.gz | mysql -uzabbix -p zabbix   # zcat /​usr/​share/​doc/​zabbix-server-mysql*/​create.sql.gz | mysql -uzabbix -p zabbix
Line 67: Line 88:
   # zcat /​usr/​share/​doc/​zabbix-server-pgsql*/​create.sql.gz | sudo -u <​username>​ psql zabbix   # zcat /​usr/​share/​doc/​zabbix-server-pgsql*/​create.sql.gz | sudo -u <​username>​ psql zabbix
  
-For proxy, import initial schema:+With TimescaleDB,​ in addition to the previous command, also run: 
 + 
 +  # zcat /​usr/​share/​doc/​zabbix-server-pgsql*/​timescaledb.sql.gz | sudo -u <​username>​ psql zabbix 
 + 
 +<note warning>​TimescaleDB is supported with Zabbix server only.</​note>​ 
 + 
 +For **proxy**, import initial schema:
  
   # zcat /​usr/​share/​doc/​zabbix-proxy-mysql*/​schema.sql.gz | mysql -uzabbix -p zabbix   # zcat /​usr/​share/​doc/​zabbix-proxy-mysql*/​schema.sql.gz | mysql -uzabbix -p zabbix
Line 78: Line 105:
 === Configure database for Zabbix server/​proxy === === Configure database for Zabbix server/​proxy ===
  
-Edit zabbix_server.conf ​or zabbix_proxy.conf to use the created database. For example:+Edit zabbix_server.conf ​(and zabbix_proxy.confto use their respective databases. For example:
  
   # vi /​etc/​zabbix/​zabbix_server.conf   # vi /​etc/​zabbix/​zabbix_server.conf
Line 92: Line 119:
 === Starting Zabbix server process === === Starting Zabbix server process ===
  
-It's time to start Zabbix server process:+To start Zabbix server process ​on RHEL8:
  
-  # service zabbix-server start+  # service zabbix-server ​httpd php-fpm ​start
  
-and make it start at system boot:+On RHEL 7:
  
-RHEL 7 and later+  # service zabbix-server httpd start 
-  # systemctl enable zabbix-server+ 
 +On RHEL 7/8 with Nginx: 
 + 
 +  # service zabbix-server nginx php-fpm start 
 + 
 +To make it start at system boot on RHEL 8: 
 + 
 +  # systemctl enable zabbix-server ​httpd php-fpm 
 + 
 +On RHEL 7: 
 + 
 +  # systemctl enable zabbix-server httpd 
 + 
 +On RHEL 7/8 with Nginx: 
 + 
 +  # systemctl enable zabbix-server nginx php-fpm
  
 RHEL prior to 7: RHEL prior to 7:
Line 108: Line 150:
 === Zabbix frontend configuration === === Zabbix frontend configuration ===
  
-For RHEL 7 and later the Apache configuration file for Zabbix frontend ​is located in /​etc/​httpd/​conf.d/​zabbix.conf.+Depending on the web server used (Apache/Nginx) edit the corresponding ​configuration file for Zabbix frontend:
  
-If you use RHEL 6 please read the section about [[manual/installation/install_from_packages/rhel_centos#​zabbix_frontend_and_server_on_rhel_6|using Zabbix frontend on RHEL 6]] on how to configure the frontend. +  * For Apache ​the configuration file is located in ''​/etc/httpd/conf.d/​zabbix.conf''​. Some PHP settings are already configured. ​Note that in RHEL 7 (but not in RHEL 8) it's necessary to uncomment ​and set the right [[http://​php.net/​manual/​en/​timezones.php|date.timezone]] ​setting ​for you.
- +
-Some PHP settings are already configured. ​But it's necessary to uncomment the "​date.timezone"​ setting and [[http://​php.net/​manual/​en/​timezones.php|set the right timezone]] for you.+
  
   php_value max_execution_time 300   php_value max_execution_time 300
Line 119: Line 159:
   php_value upload_max_filesize 2M   php_value upload_max_filesize 2M
   php_value max_input_time 300   php_value max_input_time 300
 +  php_value max_input_vars 10000
   php_value always_populate_raw_post_data -1   php_value always_populate_raw_post_data -1
   # php_value date.timezone Europe/Riga   # php_value date.timezone Europe/Riga
 +
 +  * The zabbix-nginx-conf package installs a separate Nginx server for Zabbix frontend. Its configuration file is located in ''/​etc/​nginx/​conf.d/​zabbix.conf''​. For Zabbix frontend to work, it's necessary to uncomment and set ''​listen''​ and/or ''​server_name''​ directives.
 +
 +  # listen 80;
 +  # server_name example.com;​
 +
 +  * Zabbix uses its own dedicated php-fpm connection pool:
 +    * In RHEL 8 with both Apache and Nginx 
 +    * In RHEL 7 only with Nginx 
 +
 +Its configuration file is located in ''/​etc/​php-fpm.d/​zabbix.conf''​. Some PHP settings are already configured. But it's necessary to set the right [[http://​php.net/​manual/​en/​timezones.php|date.timezone]] setting for you in this file.
 +
 +  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[max_input_vars] = 10000
 +  ; php_value[date.timezone] = Europe/Riga
  
 Now you are ready to proceed with [[manual/​installation/​install#​installing_frontend|frontend installation steps]] which will allow you to access your newly installed Zabbix. Now you are ready to proceed with [[manual/​installation/​install#​installing_frontend|frontend installation steps]] which will allow you to access your newly installed Zabbix.
 +
 +Note that a Zabbix proxy does not have a frontend; it communicates with Zabbix server only.
  
 <​note>​Zabbix official repository provides fping, iksemel, libssh2 packages as well. These packages are located in the //​[[https://​repo.zabbix.com/​non-supported/​|non-supported]]//​ directory.</​note>​ <​note>​Zabbix official repository provides fping, iksemel, libssh2 packages as well. These packages are located in the //​[[https://​repo.zabbix.com/​non-supported/​|non-supported]]//​ directory.</​note>​
 +
 +If you use RHEL 6 please read the section about [[manual/​installation/​install_from_packages/​rhel_centos#​zabbix_frontend_and_server_on_rhel_6|using Zabbix frontend on RHEL 6]] on how to configure the frontend.
  
 === SELinux configuration === === SELinux configuration ===
Line 177: Line 241:
 ==== Java gateway installation ==== ==== Java gateway installation ====
  
-It is required to install [[:​manual/​concepts/​java|Java gateway]] if you want to monitor JMX applications. Java gateway is lightweight and does not require a database.+It is required to install [[:​manual/​concepts/​java|Java gateway]] ​only if you want to monitor JMX applications. Java gateway is lightweight and does not require a database.
  
 Once the required [[#​adding_zabbix_repository|repository]] is added, you can install Zabbix Java gateway by running: Once the required [[#​adding_zabbix_repository|repository]] is added, you can install Zabbix Java gateway by running:
Line 183: Line 247:
   # yum install zabbix-java-gateway   # yum install zabbix-java-gateway
  
-Configuration parameters of Zabbix Java gateway may be tuned in the file: +Proceed ​to [[:​manual/​concepts/​java/​from_rhel_centos|setup]] for more details on configuring and running ​Java gateway.
- +
-  /​etc/​zabbix/​zabbix_java_gateway.conf +
- +
-For more details, see Zabbix Java gateway configuration [[:​manual:​appendix:​config:​zabbix_java|parameters]]. +
- +
-To start Zabbix Java gateway: +
- +
-  # service zabbix-java-gateway restart +
- +
-To automatically start Zabbix Java gateway on boot: +
- +
-RHEL 7 and later: +
-  # systemctl enable zabbix-java-gateway +
- +
-RHEL prior to 7: +
-  # chkconfig --level 12345 zabbix-java-gateway on +
- +
-<note important>​Note that Zabbix server must be [[:​manual/​concepts/​java#​configuring_server_for_use_with_java_gateway|configured]] to work with Java gateway.</​note>​ +
- +
-Zabbix Java gateway log file is: +
- +
-  /​var/​log/​zabbix/​zabbix_java_gateway.log +
- +
-If you like to increase the logging, edit the file: +
- +
-  /​etc/​zabbix/​zabbix_java_gateway_logback.xml +
- +
-and change ''​level=%%"​%%info%%"​%%''​ to %%"​%%debug%%"​%% or even %%"​%%trace%%"​%%,​ for deep troubleshooting:​ +
- +
-  <​configuration scan="​true"​ scanPeriod="​15 seconds">​ +
-  [...] +
-        <root level="​info">​ +
-                <​appender-ref ref="​FILE"​ /> +
-        </​root>​ +
-   +
-  </​configuration>​ +