manual:installation:install

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 [2019/01/21 09:37]
martins-v mysql -> MySQL
manual:installation:install [2021/06/07 09:34] (current)
marinagen Languages installation instructions moved to a separate page
Line 11: Line 11:
 Go to the [[http://​www.zabbix.com/​download_sources|Zabbix download page]] and download the source archive. Once downloaded, extract the sources, by running: Go to the [[http://​www.zabbix.com/​download_sources|Zabbix download page]] and download the source archive. Once downloaded, extract the sources, by running:
  
-  $ tar -zxvf zabbix-4.2.0.tar.gz+  $ tar -zxvf zabbix-5.0.0.tar.gz
    
 <note tip>​Enter the correct Zabbix version in the command. It must match the name of the downloaded archive.</​note>​ <note tip>​Enter the correct Zabbix version in the command. It must match the name of the downloaded archive.</​note>​
Line 69: Line 69:
  
   ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2   ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
- 
-<​note><​nowiki>​--with-libcurl</​nowiki>​ configuration option with cURL 7.20.0 or higher is required for SMTP authentication,​ supported since Zabbix 3.0.0.\\ <​nowiki>​--with-libcurl</​nowiki>​ and <​nowiki>​--with-libxml2</​nowiki>​ configuration options are required for virtual machine monitoring, supported since Zabbix 2.2.0.</​note>​ 
- 
-<note important>​Since version 3.4 Zabbix will always compile with the PCRE library; installing it is not optional. %%--with-libpcre=[DIR]%% only allows pointing to a specific base install directory, instead of searching through a number of common places for the libpcre files.</​note>​ 
  
 To configure the sources for a Zabbix server (with PostgreSQL etc.), you may run: To configure the sources for a Zabbix server (with PostgreSQL etc.), you may run:
Line 86: Line 82:
   ./configure --enable-agent   ./configure --enable-agent
  
-You may use the <​nowiki>​--enable-static</​nowiki>​ flag to statically link libraries. If you plan to distribute compiled binaries among different servers, you must use this flag to make these binaries work without required libraries. Note that <​nowiki>​--enable-static</​nowiki>​ [[http://​blogs.sun.com/​rie/​entry/​static_linking_where_did_it|does not work under Solaris]].+or, Zabbix agent 2: 
 + 
 +  ./configure --enable-agent2 
 + 
 + 
 +Notes on compilation options: 
 + 
 +  * Command-line utilities zabbix_get and zabbix_sender are compiled if %%--enable-agent%% option is used. 
 +  * <​nowiki>​--with-libcurl</​nowiki>​ and <​nowiki>​--with-libxml2</​nowiki>​ configuration options are required for virtual machine monitoring; <​nowiki>​--with-libcurl</​nowiki>​ is also required for SMTP authentication and ''​web.page.*''​ Zabbix agent [[:​manual/​config/​items/​itemtypes/​zabbix_agent|items]]. Note that cURL 7.20.0 or higher is [[:​manual/​installation/​requirements|required]] with the <​nowiki>​--with-libcurl</​nowiki>​ configuration option. 
 +  * Zabbix always compiles with the PCRE library (since version 3.4.0); installing it is not optional. %%--with-libpcre=[DIR]%% only allows pointing to a specific base install directory, instead of searching through a number of common places for the libpcre files. 
 +  * You may use the <​nowiki>​--enable-static</​nowiki>​ flag to statically link libraries. If you plan to distribute compiled binaries among different servers, you must use this flag to make these binaries work without required libraries. Note that <​nowiki>​--enable-static</​nowiki> ​does not work in [[http://​blogs.sun.com/​rie/​entry/​static_linking_where_did_it|Solaris]]
 +  * Using <​nowiki>​--enable-static</​nowiki>​ option is not recommended when building server. In order to build the server statically you must have a static version of every external library needed. There is no strict check for that in configure script. 
 +  * Add optional path to the MySQL configuration file <​nowiki>​--with-mysql=/<​path_to_the_file>/​mysql_config</​nowiki>​ to select the desired MySQL client library when there is a need to use one that is not located in the default location. It is useful when there are several versions of MySQL installed or MariaDB installed alongside MySQL on the same system. 
 +  * Use <​nowiki>​--with-oracle</​nowiki>​ flag to specify location of the OCI API. 
 +  * **Go version 1.13** or later is required for compiling Zabbix agent 2. See [[https://​golang.org/​doc/​install|golang.org]] for installation instructions.
  
 <note important>​ <note important>​
-Using <​nowiki>​--enable-static</​nowiki>​ option is not recommended when building server.\\ \\ In order to build the server statically you must have a static version of every external library neededThere is no strict check for that in configure script. +If ./configure fails due to missing libraries or some other circumstance,​ please see the ''​config.log''​ file for more details on the errorFor example, if ''​libssl''​ is missing, the immediate error message may be misleading:
-</​note>​+
  
-<​note>​Command-line utilities zabbix_get and zabbix_sender are compiled if %%--enable-agent%% option is used.</​note>​+  checking for main in -lmysqlclient..no 
 +  configure: error: Not found mysqlclient library
  
-<​note>​ +While ''​config.log''​ has a more detailed description:​
-Add optional path to the MySQL configuration file <​nowiki>​--with-mysql=/<​path_to_the_file>/​mysql_config</​nowiki>​ to select the desired +
-MySQL client library when there is a need to use one that is not located in the default location.+
  
-It is useful when there are several versions of MySQL installed or MariaDB installed alongside MySQL on the same system.+  /​usr/​bin/​ld:​ cannot find -lssl 
 +  /​usr/​bin/​ld:​ cannot find -lcrypto
 </​note>​ </​note>​
  
-<​note>​Use <​nowiki>​--with-ibm-db2<​/nowiki> flag to specify location of the CLI API.\\ Use <​nowiki>​--with-oracle</​nowiki>​ flag to specify location of the OCI API.</​note>​+See also: 
 +  * [[manual:​encryption#​compiling_zabbix_with_encryption_support|Compiling Zabbix ​with encryption support]] for encryption support 
 +  * [[:manual/installation/​known_issues#​compiling_zabbix_agent_on_hp-ux|Known issues]] ​with compiling Zabbix agent on HP-UX
  
-For encryption support see [[manual:​encryption#​compiling_zabbix_with_encryption_support|Compiling Zabbix with encryption support]]. 
 == 5 Make and install everything == == 5 Make and install everything ==
  
-<​note>​If installing from SVN, it is required to run first:+<​note>​If installing from [[https://​git.zabbix.com/​projects/​ZBX/​repos/​zabbix/​browse|Zabbix Git repository]], it is required to run first:
  
 ''​$ make dbschema''​ ''​$ make dbschema''​
Line 161: Line 171:
 == Copying PHP files == == Copying PHP files ==
  
-Zabbix frontend is written in PHP, so to run it a PHP supported webserver is needed. Installation is done by simply copying the PHP files from frontends/​php ​to the webserver HTML documents directory. ​+Zabbix frontend is written in PHP, so to run it a PHP supported webserver is needed. Installation is done by simply copying the PHP files from the ui directory ​to the webserver HTML documents directory. ​
  
 Common locations of HTML documents directories for Apache web servers include: Common locations of HTML documents directories for Apache web servers include:
Line 172: Line 182:
  
   mkdir <​htdocs>/​zabbix   mkdir <​htdocs>/​zabbix
-  cd frontends/​php+  cd ui
   cp -a . <​htdocs>/​zabbix   cp -a . <​htdocs>/​zabbix
  
-If installing from SVN and planning to use any other language than English, ​you must generate translation files. To do so, run: +If planning to use any other language than English, ​see [[manual/​appendix/​install/​locales|Installation of additional frontend languages]] for instructions.
- +
-  locale/​make_mo.sh +
-  +
-''​msgfmt''​ utility from gettext package is required.  +
- +
-<​note>​Additionally,​ to use any other language than English, its locale should be installed on the web server. See the [[manual:​web_interface:​user_profile#​see_also|"See also"]] section in the "User profile"​ page to find out how to install it if required.</​note>​ +
 == Installing frontend == == Installing frontend ==
  
-== Step 1 == +Please see [[:manual/installation/frontend|Web interface ​installation]] page for information about Zabbix frontend installation ​wizard.
- +
-In your browser, open Zabbix URLhttp:<​nowiki>​//</​nowiki><​server_ip_or_name>/​zabbix +
- +
-You should see the first screen of the frontend installation ​wizard. +
- +
-{{install_1_a.png?​550|}} +
- +
-== Step 2 == +
- +
-Make sure that all software prerequisites are met. +
- +
-{{install_2.png?​550|}} +
- +
-^Pre-requisite^Minimum value^Description^ +
-|//PHP version// ​ |5.4.0 ​ |  | +
-|//PHP memory_limit option// ​ |128MB ​ |In php.ini:\\ memory_limit = 128M  | +
-|//PHP post_max_size option// ​ |16MB  |In php.ini:\\ post_max_size = 16M  | +
-|//PHP upload_max_filesize option// ​ |2MB  |In php.ini:\\ upload_max_filesize = 2M  | +
-|//PHP max_execution_time option// ​ | 300 seconds (values 0 and -1 are allowed) |In php.ini:\\ max_execution_time = 300  | +
-|//PHP max_input_time option// ​ |300 seconds (values 0 and -1 are allowed) |In php.ini:\\ max_input_time = 300  | +
-|//PHP session.auto_start option// ​ |must be disabled ​ |In php.ini:\\ session.auto_start = 0  | +
-|//Database support// ​ |One of: MySQL, Oracle, PostgreSQL, IBM DB2  |One of the following modules must be installed:​\\ mysql, oci8, pgsql, ibm_db2 ​ | +
-|//​bcmath// ​ |  |php-bcmath ​ | +
-|//​mbstring// ​ |  |php-mbstring ​ | +
-|//PHP mbstring.func_overload option// ​ |must be disabled ​ |In php.ini:\\ mbstring.func_overload = 0  | +
-|//PHP always_populate_raw_post_data option// ​ |must be disabled ​ |Required only for PHP versions 5.6.0 or newer.\\ In php.ini:\\ always_populate_raw_post_data = -1 | +
-|//​sockets// ​ |  |php-net-socket. Required for user script support. ​  | +
-|//​gd// ​ |2.0 or higher ​ |php-gd. PHP GD extension must support PNG images (//<​nowiki>​--with-png-dir</​nowiki>//​),​ JPEG (//<​nowiki>​--with-jpeg-dir</​nowiki>//​) images and FreeType 2 (//<​nowiki>​--with-freetype-dir</​nowiki>//​). | +
-|//​libxml// ​ |2.6.15 ​ |php-xml or php5-dom ​ | +
-|//​xmlwriter// ​ |  |php-xmlwriter ​ | +
-|//​xmlreader// ​ |  |php-xmlreader ​ | +
-|//​ctype// ​ |  |php-ctype ​ | +
-|//​session// ​ |  |php-session ​ | +
-|//​gettext// ​ |  |php-gettext\\ Since Zabbix 2.2.1, the PHP gettext extension is not a mandatory requirement for installing ​Zabbix. If gettext is not installed, the frontend ​will work as usual, however, the translations will not be available. ​ | +
- +
-Optional pre-requisites may also be present in the list. A failed optional prerequisite is displayed in orange and has a //Warning// status. With a failed optional pre-requisite,​ the setup may continue. +
- +
-<note important>​If there is a need to change the Apache user or user group, permissions to the session folder must be verified. Otherwise Zabbix setup may be unable to continue.</​note>​ +
-== Step 3 == +
- +
-Enter details for connecting to the database. Zabbix database must already be created. +
- +
-{{install_3.png?​550|}} +
- +
-== Step 4 == +
- +
-Enter Zabbix server details. +
- +
-{{install_4.png?​550|}} +
- +
-Entering a name for Zabbix server is optional, however, if submitted, it will be displayed in the menu bar and page titles. +
-== Step 5 == +
- +
-Review a summary of settings. +
- +
-{{install_5.png?​550|}} +
- +
-== Step 6 == +
- +
-Download the configuration file and place it under conf/ in the webserver HTML documents subdirectory where you copied Zabbix PHP files to. +
- +
-{{install_6.png?​550|}} +
- +
-{{saving_zabbix_conf.png?​350|}} +
- +
-<note tip>​Providing the webserver user has write access to conf/ directory the configuration file would be saved automatically and it would be possible to proceed to the next step right away.</​note>​ +
-== Step 7 == +
- +
-Finish the installation+
- +
-{{install_7.png?​550|}} +
- +
-== Step 8 == +
- +
-Zabbix frontend is ready! The default user name is **Admin**, password **zabbix**. +
- +
-{{manual:​quickstart:​login.png?​350|}} +
- +
-Proceed to [[manual:​quickstart:​login|getting started with Zabbix]].+
  
 === 3 Installing Java gateway == === 3 Installing Java gateway ==