安裝Zabbix(多種方式)
本次安裝使用的作業系統是CentOS 6.8。
安裝zabbix需要的其他的軟體:
- 資料庫
- Apache
- PHP
1. 安裝基礎環境
1.1 安裝資料庫
此處使用yum安裝預設的MySQL資料庫的5.1.73版本,可以根據需要安裝其他版本的MySQL或者其他的資料庫。zabbix另外還支援Oracle、PostgreSQL、SQLite、IBM DB2等資料庫,可根據實際環境或需要選擇。
# yum安裝MySQL
[root@zabbix ~]# yum -y install mysql*
# 安裝完成,確認資料庫版本
[root@zabbix ~]# mysql -V
# 開機自啟MySQL
[root@zabbix ~]# chkconfig mysqld on
[root@zabbix ~]# chkconfig mysqld --list
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# 啟動資料庫
[root@zabbix ~]# service mysqld start
# 確認資料庫正在執行
[root@zabbix ~]# service mysqld status
# 設定MySQL資料庫root密碼,password後跟的是密碼(不包括單引號)
[root@zabbix ~]# mysqladmin -u root password 'root'
# 登入MySQL資料庫
[root@zabbix ~]# mysql -uroot -p
# 切換資料庫
mysql> use mysql;
# 刪除用於本機匿名連線的空密碼帳號
mysql> delete from user where password="";
1.2 安裝PHP
注意安裝zabbix 2.4需要PHP 5.3.0及以後版本。
- 如果使用使用原始碼安裝,注意相應的擴充套件項。
PHP extensions: | ||
---|---|---|
gd | 2.0 or later | PHP GD extension must support PNG images (--with-png-dir), JPEG (--with-jpeg-dir) images and FreeType 2 (--with-freetype-dir). |
bcmath | php-bcmath (--enable-bcmath) | |
ctype | php-ctype (--enable-ctype) | |
libXML | 2.6.15 or later | php-xml or php5-dom, if provided as a separate package by the distributor. |
xmlreader | php-xmlreader, if provided as a separate package by the distributor. | |
xmlwriter | php-xmlwriter, if provided as a separate package by the distributor. | |
session | php-session, if provided as a separate package by the distributor. | |
sockets | php-net-socket (--enable-sockets). Required for user script support. | |
mbstring | php-mbstring (--enable-mbstring) | |
gettext | php-gettext (--with-gettext). Required for translations to work. | |
ldap | php-ldap. Required only if LDAP authentication is used in the frontend. | |
ibm_db2 | Required if IBM DB2 is used as Zabbix backend database. | |
mysqli | Required if MySQL is used as Zabbix backend database. | |
oci8 | Required if Oracle is used as Zabbix backend database. | |
pgsql | Required if PostgreSQL is used as Zabbix backend database. | |
sqlite3 | Required if SQLite is used as Zabbix backend database. |
本實驗使用yum安裝PHP。
# yum 安裝所有php包
[root@zabbix ~]# yum -y install php*
1.3 安裝Apache
一般CentOS預設安裝Apache服務。可以使用rpm -qa httpd
命令檢視是否安裝。
若沒有可以使用原始碼或者yum安裝。若已安裝,確保服務開機自啟動。
# 檢視是否安裝Apache服務
[root@zabbix ~]# rpm -qa httpd
# 若沒有安裝,安裝之
[root@zabbix ~]# yum -y install httpd
# 安裝完成,或已安裝服務。開機自啟Apache服務。
[root@zabbix ~]# chkconfig httpd on
[root@zabbix ~]# chkconfig httpd --list
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# 啟動Apache服務
[root@zabbix ~]# service httpd start
# 確認Apache服務正在執行
[root@zabbix ~]# service httpd status
httpd (pid 4070) is running...
2. 安裝zabbix
安裝前,先在官網下載頁面下載需要的安裝包
- 原始碼包在
Zabbix Sources
中選擇需要的版本
本實驗使用2.4.8版本
2.1 server端安裝zabbix
server端需要同時安裝server和agent服務。安裝zabbix可以使用yum和原始碼兩種方式安裝,但是需要注意的是yum安裝需要確保環境能夠連線網際網路。
本實驗兩種方式都使用安裝,由於最後使用web站點安裝時,兩者步驟都一樣,將合一起。
2.1.1 後臺安裝zabbix
a. yum安裝zabbix
先安裝zabbix的yum倉庫配置檔案。然後安裝zabbix服務即可。
# 安裝yum倉庫配置檔案,根據系統不同下載地址有所不同
[root@zabbix ~]# rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
# 安裝server服務和web前端
[root@zabbix ~]# yum -y install zabbix-server-mysql zabbix-web-mysql
# 安裝agent服務
[root@zabbix ~]# yum -y install zabbix-agent
# 建立zabbix資料庫
[root@zabbix ~]# mysql -uroot -proot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> quit;
# 匯入zabbix資料庫初始化資料
# proxy端只需匯入schema.sql一張表
[root@zabbix ~]# cd /usr/share/doc/zabbix-server-mysql-2.4.8/create/
[root@zabbix create]# mysql -uroot -proot zabbix < schema.sql
[root@zabbix create]# mysql -uroot -proot zabbix < images.sql
[root@zabbix create]# mysql -uroot -proot zabbix < data.sql
# 編輯zabbix_server配置檔案
[root@zabbix ~]# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
# 啟動server服務
[root@zabbix create]# service zabbix-server start
Starting Zabbix server: [ OK ]
# 啟動agent服務
[root@zabbix ~]# service zabbix-agent start
Starting Zabbix agent: [ OK ]
# 設定開機自啟
[root@zabbix ~]# chkconfig zabbix-server on
[root@zabbix ~]# chkconfig zabbix-agent on
[root@zabbix ~]# chkconfig zabbix-server --list
zabbix-server 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@zabbix ~]# chkconfig zabbix-agent --list
zabbix-agent 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# 編輯PHP中關於zabbix前端的配置
[root@zabbix ~]# vi /etc/httpd/conf.d/zabbix.conf
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 date.timezone Europe/Riga
將上面時區的註釋去掉,並改成合適的時區。本實驗中改成"Asia/Shanghai"
# 重啟Apache服務
[root@zabbix ~]# service httpd restart
b. 原始碼安裝zabbix
- 將從官網下載的原始碼包上傳至伺服器。
- 已經安裝gcc-c++編譯工具。
如果沒有安裝,先安裝。yum -y install gcc-c++
# 建立安裝資料夾並解壓原始碼包
[root@zabbix ~]# mkdir /usr/local/zabbix
[root@zabbix ~]# cp /tmp/zabbix-2.4.8.tar.gz /usr/local/zabbix/
[root@zabbix ~]# cd /usr/local/zabbix/
[root@zabbix zabbix]# tar zxf zabbix-2.4.8.tar.gz
# 建立zabbix使用者組和使用者。
# zabbix以普通使用者執行時,所有使用者和組為該普通使用者。但若以root使用者執行時,會使用zabbix使用者執行。
# 因此如果想用root使用者執行則zabbix使用者是必須的。如果不用root使用者執行則不建立也是可以的。
# web前端安裝zabbix時不需要特定的使用者或使用者組。
[root@zabbix zabbix]# groupadd zabbix
[root@zabbix zabbix]# useradd -g zabbix zabbix
# 建立zabbix資料庫
[root@zabbix ~]# mysql -uroot -proot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> quit;
# 匯入zabbix資料庫初始化資料
# proxy端只需匯入schema.sql一張表
[root@zabbix ~]# cd /usr/local/zabbix/zabbix-2.4.8/database/mysql/
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < images.sql
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < data.sql
# 配置源
# --with-mysql。根據實際安裝的資料庫,選擇相應的配置。本實驗使用的是MySQL。
# --enable-ipv6。支援IPV6協議。
# --with-net-snmp。SNMP的基本功能是:取得,設定和接收代理髮送的意外資訊。所以需要獲得agent發來的意外資訊,必須有該配置。
使用該選項需要安裝net-snmp-devel庫。
yum install -y net-snmp-devel
# --with-libcurl。libcurl是一個跨平臺的網路協議庫,所以需要用不同的協議連線和溝通不同的伺服器時需要用到,因此在監控裝置較多且系統版本混雜的情況下必須安裝。一般預設都會啟用該選項。
使用該選項需要安裝libcurl-devel庫。
yum install -y libcurl-devel
# --with-libxml2選項是用來監控虛擬機器的。從zabbix2.2.0之後開始支援。使用前確認需要的libxml2庫已安裝。
yum install -y libxml2*
# --prefix="location"可以指定安裝目錄
# 命令列工具zabbix_get和zabbix_sender在指定--enable-agent時,將會被編譯。
[root@zabbix mysql]# cd /usr/local/zabbix/zabbix-2.4.8
[root@zabbix zabbix-2.4.8]# ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
# 安裝
# 守護程式二進位制檔案 (zabbix_server, zabbix_agentd, zabbix_proxy) 預設安裝在/usr/local/sbin目錄下;
# 客戶端二進位制檔案(zabbix_get, zabbix_sender)預設安裝在/usr/local/bin下;
# 若指定了安裝目錄,則在相應的sbin和bin下。
[root@zabbix zabbix-2.4.8]# make install
# 更改配置檔案
# zabbix agent配置檔案預設是/usr/local/etc/zabbix_agentd.conf。
# zabbix server配置檔案預設是/usr/local/etc/zabbix_server.conf。檔案中必須寫入zabbix資料庫使用者名稱和密碼
[root@zabbix ~]# cd /usr/local/etc/
[root@zabbix etc]# vi zabbix_agentd.conf
Server=127.0.0.1 # zabbix server ip地址
ServerActive=127.0.0.1 # zabbix server ip地址
Hostname=master_db # agent的hostname
[root@zabbix etc]# vi zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
# 啟動zabbix守護和客戶端程式
[root@zabbix ~]# cd /usr/local/sbin/
[root@zabbix sbin]# zabbix_server
[root@zabbix sbin]# zabbix_agentd
# 確認程式已經啟動
[root@zabbix sbin]# ps -ef | grep zabbix
# 設定開機自啟
在`/etc/rc.local`檔案最後新增下面兩行
/usr/local/sbin/zabbix_server start
/usr/local/sbin/zabbix_agentd start
# 安裝zabbix的web介面
[root@zabbix ~]# cd /usr/local/zabbix/zabbix-2.4.8/frontends/php/
[root@zabbix php]# mkdir /var/www/html/zabbix
[root@zabbix php]# chown -R zabbix:zabbix /var/www/html/zabbix
[root@zabbix php]# cp -a . /var/www/html/zabbix
[root@zabbix php]# cd /var/www/html/zabbix/
[root@zabbix zabbix]# ls
2.1.2 前端安裝zabbix
a. 修改PHP配置檔案引數
一般使用yum安裝的無需修改php檔案引數。
使用原始碼安裝的需要修改/etc/php.ini
的引數以滿足zabbix需要的最低要求。
更改完成後重啟Apache服務:service httpd restart
最低要求見下表,另外需要去掉配置檔案中date.timezone
的註釋並新增相應的時區:
Pre-requisite | Minimum value | Description |
---|---|---|
PHP version | 5.3.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 | In php.ini: max_execution_time = 300 |
PHP max_input_time option | 300 seconds | 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: IBM DB2, MySQL, Oracle, PostgreSQL, SQLite | One of the following modules must be installed: ibm_db2, mysql, oci8, pgsql, sqlite3 |
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 (--with-png-dir), JPEG (--with-jpeg-dir) images and FreeType 2 (--with-freetype-dir). |
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. |
b. 開始安裝web站點
- 瀏覽器開啟zabbix網址:
http://<server_ip_or_name>/zabbix
-
確認安裝條件都符合
-
輸入連線zabbix資料庫的資訊
-
輸入zabbix server具體資訊
-
檢視資訊是否有誤
-
zabbix如果沒有Apache資料夾下的寫入許可權,需要下載配置檔案並放入/var/www/html/zabbix/conf/目錄下
-
完成安裝
- 前端安裝完成。預設使用者Admin,密碼zabbix。
2.2 zabbix的agent端安裝
Windows系統和Linux系統均可以安裝zabbix的agent端。
Linux有三種方式安裝agent,分別為預編譯包、yum和原始碼安裝。
Windows只有一種方式。
2.2.1 Windows安裝agent端
安裝前,先在官網下載頁面下載需要的安裝包
- Windows安裝包在
Zabbix pre-compiled agents
中選擇需要的版本
本實驗使用2.4.4版本zabbix_agents_2.4.4.win.zip
1. 新建安裝目錄,比如"C:\zabbix"。將下載的安裝包解壓後,拷貝至該目錄內。
2. 修改配置檔案"zabbix_agentd.conf"。
Server=192.168.186.250 # zabbix server ip地址
ServerActive=192.168.186.250 # zabbix server ip地址
Hostname=agent # agent的hostname
3. 以管理員身份,在cmd命令列中執行以下命令。資料夾路徑根據實際情況自行更改。
C:\zabbix\bin\win64\zabbix_agentd.exe -c C:\zabbix\conf\zabbix_agentd.win.conf -i
# -c表示需要讀取的配置檔案 -i表示安裝
4. 開始 > 執行 > services.msc
將zabbix_agent服務啟動,並將啟動型別設為“自動”。
5. server新增agent機
瀏覽器開啟http://server IP/zabbix,輸入使用者名稱密碼登入
選擇Configuration - Hosts - Create Host,輸入agent相關資訊並儲存
Availability顯示一個綠顏色的Z,表示成功連線。
2.2.2 Linux安裝agent端
Linux安裝agent端的方式不盡相同。本實驗以CentOS為例。
a. 預編譯包安裝agent
安裝前,先在官網下載頁面下載需要的安裝包
- 預編譯包在
Zabbix pre-compiled agents
中選擇需要的版本
本實驗使用2.4.6版本zabbix_agents_2.4.4.linux2_6.amd64.tar.gz
# 建立安裝目錄
[root@master_db ~]# mkdir /usr/local/zabbix
[root@master_db ~]# cp /tmp/zabbix_agents_2.4.4.linux2_6.amd64.tar.gz /usr/local/zabbix/
[root@master_db ~]# cd /usr/local/zabbix/
[root@master_db zabbix]# tar zxf zabbix_agents_2.4.4.linux2_6.amd64.tar.gz
[root@master_db zabbix]# rm -f zabbix_agents_2.4.4.linux2_6.amd64.tar.gz
[root@master_db zabbix]# ls
bin conf sbin
# 新增zabbix使用者和組
[root@master_db zabbix]# groupadd zabbix
[root@master_db zabbix]# useradd -g zabbix zabbix
# 先檢視服務埠是否存在,若存在則無需新增。若不存在則需手動新增。
[root@master_db zabbix]# cat /etc/services | grep zabbix
# 新增服務埠
echo 'zabbix-agent 10050/tcp # Zabbix Agent' >> /etc/services
echo 'zabbix-agent 10050/udp # Zabbix Agent' >> /etc/services
echo 'zabbix-trapper 10051/tcp # Zabbix Trapper' >> /etc/services
echo 'zabbix-trapper 10051/udp # Zabbix Trapper' >> /etc/services
# 修改配置檔案
[root@master_db zabbix]# cd /usr/local/zabbix/conf/
[root@master_db conf]# ls
zabbix_agent.conf zabbix_agentd zabbix_agentd.conf
[root@master_db conf]# vi zabbix_agentd.conf
Server=192.168.186.250 # zabbix server ip地址
ServerActive=192.168.186.250 # zabbix server ip地址
Hostname=master_db # agent的hostname
# 啟動agent
[root@master_db conf]# /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/conf/zabbix_agentd.conf &
[1] 2961
# 新增開機自啟動
echo '/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/conf/zabbix_agentd.conf &' >> /etc/rc.local
# server新增agent機
瀏覽器開啟http://server IP/zabbix,輸入使用者名稱密碼登入
選擇Configuration - Hosts - Create Host,輸入agent相關資訊並儲存
Availability顯示一個綠顏色的Z,表示成功連線。
b. yum安裝agent
先安裝zabbix的yum倉庫配置檔案。然後安裝agent即可。
# 安裝yum倉庫配置檔案,根據系統不同下載地址有所不同
[root@agent ~]# rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
# 安裝agent服務
[root@agent ~]# yum -y install zabbix-agent
# 編輯agent配置檔案
[root@agent ~]# vi /etc/zabbix/zabbix_agentd.conf
Server=192.168.186.250 # zabbix server ip地址
ServerActive=192.168.186.250 # zabbix server ip地址
Hostname=agent # agent的hostname
# 啟動agent服務
[root@agent ~]# service zabbix-agent start
Starting Zabbix agent: [ OK ]
# 設定開機自啟
[root@agent ~]# chkconfig zabbix-agent on
[root@agent ~]# chkconfig zabbix-agent --list
zabbix-agent 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# server新增agent機
瀏覽器開啟http://server IP/zabbix,輸入使用者名稱密碼登入
選擇Configuration - Hosts - Create Host,輸入agent相關資訊並儲存
Availability顯示一個綠顏色的Z,表示成功連線。
c. 原始碼安裝agent
- 先在官網下載頁面下載需要的安裝包
原始碼包在Zabbix Sources
中選擇需要的版本
本實驗使用2.4.8版本 - 將從官網下載的原始碼包上傳至伺服器。
- 已經安裝gcc-c++編譯工具。
如果沒有安裝,先安裝。yum -y install gcc-c++
# 建立安裝資料夾並解壓原始碼包
[root@master_db ~]# mkdir /usr/local/zabbix
[root@master_db ~]# cp /tmp/zabbix-2.4.8.tar.gz /usr/local/zabbix/
[root@master_db ~]# cd /usr/local/zabbix/
[root@master_db zabbix]# tar zxf zabbix-2.4.8.tar.gz
# 建立zabbix使用者組和使用者。
# zabbix以普通使用者執行時,所有使用者和組為該普通使用者。但若已root使用者執行時,會使用zabbix使用者執行。
# 因此如果想用root使用者執行則zabbix使用者是必須的。如果不用root使用者執行則不建立也是可以的。
[root@master_db zabbix]# groupadd zabbix
[root@master_db zabbix]# useradd -g zabbix zabbix
# 配置源
[root@master_db zabbix]# cd /usr/local/zabbix/zabbix-2.4.8
[root@master_db zabbix-2.4.8]# ./configure --enable-agent
# 安裝
# 守護程式二進位制檔案 (zabbix_agentd) 預設安裝在/usr/local/sbin目錄下,客戶端二進位制檔案(zabbix_get, zabbix_sender)預設安裝在/usr/local/bin下。若指定了安裝目錄,則在相應的sbin和bin下。
[root@master_db zabbix-2.4.8]# make install
# 更改配置檔案
# zabbix agent配置檔案預設是/usr/local/etc/zabbix_agentd.conf。
[root@master_db ~]# cd /usr/local/etc/
[root@master_db etc]# vi zabbix_agentd.conf
Server=192.168.186.250 # zabbix server ip地址
ServerActive=192.168.186.250 # zabbix server ip地址
Hostname=agent # agent的hostname
# 啟動zabbix守護和客戶端程式
[root@master_db etc]# cd /usr/local/sbin/
[root@master_db sbin]# zabbix_agentd
# 確認程式已經啟動
[root@master_db sbin]# ps -ef | grep zabbix
# 設定開機自啟
在`/etc/rc.local`檔案最後新增下面一行
/usr/local/sbin/zabbix_agentd start
或者執行以下命令
echo '/usr/local/sbin/zabbix_agentd start' >> /etc/rc.local
# server新增agent機
瀏覽器開啟http://server IP/zabbix,輸入使用者名稱密碼登入
選擇Configuration - Hosts - Create Host,輸入agent相關資訊並儲存
Availability顯示一個綠顏色的Z,表示成功連線。
相關文章
- zabbix agent 的兩種安裝方式
- 多種方式批量安裝作業系統作業系統
- zabbix安裝
- Linux下軟體包的多種安裝方式Linux
- 【ZABBIX】Linux下安裝ZABBIXLinux
- 【zabbix】zabbix遠端安裝部署
- zabbix安裝agent
- Zabbix安裝部署
- Zabbix Agent安裝
- apt安裝zabbixAPT
- 【Zabbix】zabbix_agent安裝指令碼指令碼
- Mac與Linux實現多種方式安裝Redis服務MacLinuxRedis
- zabbix安裝—–nginx安裝和配置Nginx
- 編譯安裝zabbix編譯
- 【監控】Zabbix安裝
- zabbix的安裝配置
- zabbix一鍵安裝
- zabbix原始碼安裝原始碼
- zabbix3.0安裝
- 安裝zabbix使出錯
- Zabbix-2.4.5 安裝
- zabbix安裝文件薦
- zabbix5.0安裝
- linux安裝postgresql三種方式LinuxSQL
- 安裝aab包的兩種方式
- Zabbix 的容器版安裝
- Zabbix監控安裝部署
- centos8 安裝zabbixCentOS
- Zabbix Agent 安裝與使用
- Centos7-安裝ZabbixCentOS
- zabbix 安裝配置介紹
- 詳解zabbix安裝部署
- 安裝配置zabbix-serverServer
- zabbix2.4yum安裝
- zabbix環境安裝搭建
- zabbix 客戶端安裝客戶端
- Windows下安裝Zabbix AgentdWindows
- Ubuntu安裝zabbix配置教程Ubuntu