主要分為服務端和用戶端安裝,用戶端又分為Linux、Windows。
CentOS6.8
Zabbix3.2
Mysql5.6
Apache
PHP56w
關閉selinux
setenforce 0
進入mysql,建立zabbix使用者并授權
mysql -uroot -p CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin; GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@'%' IDENTIFIED BY 'zabbix';
依次安裝,雖然說是離線安裝,但還是需要聯網下載下傳一些包,如果自己手動下載下傳再安裝的話會掉入一個個連環坑。
yum install php-pecl-ssh2.x86_64 libssh2-devel.x86_64 net-snmp* OpenIPMI OpenIPMI-devel -y yum install --skip-broken rpm-build curl* curl-devel httpd php56w php56w-gd php56w-mysql php56w-bcmath php56w-mbstring php56w-xml php56w-ldap -y yum install gcc libxml2-devel unixODBC-devel net-snmp-devel libcurl-devel libssh2-devel OpenIPMI-devel openssl-devel openldap-devel –y
在這裡centos6.8裡面的php是一個低版本php54w的,是以需要安裝php56w,并重新開機httpd 和mysqld服務
修改php配置檔案
vim /etc/php.ini post_max_size=16M max_execution_time=300 max_input_time=300 date.timezone=Asia/Shanghai always_populate_raw_post_data=-1
啟動apache
service httpd start
調整防火牆配置,沒加會通路出錯
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT
添加zabbix服務端口
vim /etc/services zabbix-agent 10050/tcp # Zabbix Agent zabbix-agent 10050/udp # Zabbix Agent zabbix-trapper 10051/tcp # Zabbix Trapper zabbix-trapper 10051/udp # Zabbix Trapper
儲存退出!
建立使用者
groupadd zabbix useradd -g zabbix zabbix
建立zabbix檔案夾
mkdir /usr/local/zabbix cd /usr/local/zabbix
下載下傳zabbix3.2
wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.0/zabbix-3.2.0.tar.gz
解壓
tar zxvf zabbix-3.2.0.tar.gz
cd /usr/local/zabbix/zabbix-3.2.0/database/mysql mysql -u zabbix -p zabbixzabbix<schema.sql mysql -u zabbix -p zabbixzabbix<images.sql mysql -u zabbix -p zabbixzabbix<data.sql
下載下傳依賴包
yum install -y gcc mysql-community-devel libxml2-devel unixODBC-devel net-snmp-devel libcurl-devel libssh2-devel OpenIPMI-devel openssl-devel openldap-devel fping
這裡面的zabbix為編譯後的zabbix檔案夾,zabbix-3.2.0為源檔案
cd /usr/local/zabbix/zabbix-3.2.0/ ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --enable-proxy -with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc --with-ssh2 --with-openipmi --with-openssl --with-java-gateway make install
或在編譯目錄下/usr/local/zabbix/etc/zabbix_agentd.conf
vim /usr/local/etc/zabbix_server.conf DBName=zabbix DBUser=zabbix DBPassword=zabbix FpingLocation=/usr/sbin/fping DBSocket=/usr/local/mysql5.6/data/mysql.sock 這裡填你本機資料庫的sock //我發現如果不加,zabbix會一直報connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket mysql.sock'。 ListenIP=你的zabbix_server監聽的IP位址 這裡的配置一定要寫正确,否則後面會出很多問題
在/var/www/html/下建立檔案夾 zabbix
mkdir /var/www/html/zabbix
拷貝 php 頁面檔案到/var/www/html/zabbix 目錄下并授權
cd zabbix-3.2.0 cp -R ./frontends/* /var/www/html/zabbix 建立一個規則允許web伺服器通路前端檔案 chcon -Rv --type=httpd_sys_content_t /var/www/html chmod +x /var/www/html/zabbix/php/conf/
運作Apache和zabbix通路外網
setsebool -P httpd_can_network_connect=1
setsebool -P zabbix_can_network=1
編輯zabbix前端的PHP配合配置
vim /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 always_populate_raw_post_data -1 php_value date.timezone Asia/Shanghai //主要去掉# 改成上海 不設定會導緻異常:Time zone for PHP is not set (configuration parameter "date.timezone").
拷貝啟動腳本到/etc/init.d
cp /usr/local/zabbix/zabbix-3.2.0/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server cp /usr/local/zabbix/zabbix-3.2.0/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd chkconfig --add /etc/init.d/zabbix_server chkconfig --add /etc/init.d/zabbix_agentd
修改 basedir:這裡面的zabbix為編譯後的zabbix檔案夾
vi /etc/init.d/zabbix_server BASEDIR=/usr/local/換成BASEDIR=/usr/local/zabbix vi /etc/init.d/zabbix_agentd ln -s /usr/local/zabbix/sbin/zabbix_server /usr/local/sbin/ ln -s /usr/local/zabbix/sbin/ /usr/local/sbin/
cd /var/www/html/zabbix/fonts/
将中文字型放入
msyh.ttf
vim /var/www/html/zabbix/include/defines.inc.php define('ZBX_FONT_NAME', 'msyh'); define('ZBX_GRAPH_FONT_NAME', 'msyh'); // font file name
進入首頁面:下面進行,将語言改為中文。
vim /usr/share/zabbix/include/locales.inc.php
找到第55行,将false改為true
啟用Zabbix伺服器,Apache和MySQL服務啟動
chkconfig httpd on chkconfig mysqld on chkconfig zabbix_server on chkconfig zabbix_agentd on
全面啟動
service zabbix_server start service zabbix_agentd start
http://192.168.80.32/zabbix/setup.php
預設使用者名/密碼:Admin/zabbix
此時會出現安裝界面,然後點下一步
點選next配置mysql:
不要用localhost,用主機IP
點選下一步。此步出現錯誤,發現無法連接配接資料庫,最後發現zabbix這個資料庫中,沒有任何資料,檢查時加紅色的那部分出問題。
next到最後
點選zabbix右上角小人,進行修改:
再重新重新整理頁面
至此Zabbix服務端全部搭建完畢。
zabbix-3.2.0.tar.gz
添加服務
vim /etc/services zabbix-agent 10050/tcp # ZabbixAgent zabbix-agent 10050/udp # ZabbixAgent zabbix-trapper 10051/tcp # ZabbixTrapper zabbix-trapper 10051/udp # ZabbixTrapper
添加使用者
groupadd -g 201 zabbix useradd -g zabbix -u 201 -s /sbin/nologin zabbix
tar -zxvf zabbix-3.2.0.tar.gz ./configure --prefix=/usr/local/zabbix --enable-agent
修改agentd配置檔案
vi /usr/local/zabbix/etc/zabbix_agentd.conf Server= 192.168.80.32 #服務端ip位址 ServerActive= 192.168.80.32 #服務端ip位址 Hostname=192.168.80.30 #必須與建立主機時的hostname一緻(用戶端IP)
修改啟動配置,添加軟連結
mkdir /var/log/zabbix chown zabbix.zabbix /var/log/zabbix cp /usr/local/zabbix/zabbix-3.2.0/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ chmod 755 /etc/init.d/zabbix_agentd ln -sv /usr/local/zabbix/sbin/* /usr/local/sbin/ ln -sv /usr/local/zabbix/bin/* /usr/local/bin/
轉換檔案使用者
chown -R zabbix:zabbix /usr/local/zabbix
設定自啟動
在Server端使用以下指令測試是否能連接配接到Agent端:
# zabbix_get -s 192.168.80.30 -p 10050 -k "system.uptime"
若沒有添加zabbix_get軟連接配接,則加上編譯檔案夾路徑
/usr/local/zabbix/bin/zabbix_get -s 192.168.80.30 -p 10050 -k "system.uptime"
注意上面的IP,與zabbix_agent中配置的hostname要一緻
給伺服器添加監控模闆(自帶了一些模闆,如果不滿足後面可以自己建立)
在監控項圖表中可檢視記錄了,如果沒資料可能要等一會。
官網:https://www.zabbix.com/download
下載下傳 zabbix_agents_3.2.0.win.zip
解壓縮zabbix_agents_3.2.0.win.zip
在應用程式中檔案夾中建立配置目錄及檔案 conf\zabbix_agent.conf
LogFile=c:\zabbix_agentd.log EnableRemoteCommands=1 ##激活遠端執行腳本 Server=192.168.80.32 ServerActive=192.168.80.32 Hostname=192.168.80.33
1 運作cmd進入windows指令行控制台,下面我是将程式放在D:\Soft檔案夾下,且對檔案夾重命名zabbix_agents_320win
2 運作D:\Soft\zabbix_agents_320win\bin\win64\zabbix_agentd.exe -c D:\Soft\zabbix_agents_320win\conf\zabbix_agentd.conf -i
注:-c表示配置檔案路徑 -i表示安裝
在指令行運作services.msc進入windows服務控制台,找到zabbix_agent服務,右鍵啟動即可
總得來說zabbix用戶端中windows比linux安裝容易。
最後一點就是如果能用CentOS7就盡量用,6.8的版本有些基礎插件版本低,需要自己更新是以安裝的時候不是差這就差那的。如果是CentOS7就簡單了,導入源:
rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
安裝zabbix服務包
yum -y install zabbix-server-mysql zabbix-web-mysql
我們給本機也安裝上用戶端
yum -y install zabbix-agent
不過安裝的位置是預設的。
Starting Zabbix Server: /opt/app/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
vim /etc/ld.so.conf 加入
/usr/local/mysql5.6/lib mysql安裝路徑換成自己的
解決方法:agent配置檔案中的Server填寫的IP不對,一定要填寫zabbix_server的監聽IP。确認配置檔案沒問題後,還有一個原因,在建立主機的時候,IP位址填寫的不正确,要填寫agent的IP位址。更改即可
vi /etc/zabbix/zabbix_agentd.conf //修改zabbix_agentd.conf參數
Server=192.168.80.32 //安裝zabbix服務端的機器的IP
ServerActive=192.168.80.32 //安裝zabbix服務端的機器的IP
Hostname=192.168.80.31 //我這以被監控的機器的ip作為Hostname,注意是被監控的,而且要與監控頁面的監控主機名一緻
網上有說
cp /usr/local/glibc-2.17/lib/libc-2.17.so /lib64/libc-2.17.so
mv /lib64/libc.so.6 /lib64/libc.so.6.bak (但這樣會導緻整個系統錯誤,結果悲劇了 登入不了伺服器,最後隻能找其它方法修複系統,libc.so是一個系統級的檔案,不能随便删除,但在centos7環境下不存在此問題)
本文轉自歡醉部落格園部落格,原文連結http://www.cnblogs.com/zhangs1986/p/7905190.html如需轉載請自行聯系原作者
歡醉