zabbix是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。
zabbix由zabbix server與可選組件zabbix agent兩部分組成。
zabbix server能夠經過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視。
zabbix agent須要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操做系統有關的內存,CPU等信息的收集。php
zabbix的主要特色:
- 安裝與配置簡單,學習成本低
- 支持多語言(包括中文)
- 免費開源
- 自動發現服務器與網絡設備
- 分佈式監視以及WEB集中管理功能
- 能夠無agent監視
- 用戶安全認證和柔軟的受權方式
- 經過WEB界面設置或查看監視結果
- email等通知功能
等等html
Zabbix主要功能:
- CPU負荷
- 內存使用
- 磁盤使用
- 網絡情況
- 端口監視
- 日誌監視mysql
服務器端:nginx
準備篇:web
1、Web環境:Nginx+MySQL+PHPsql
CentOS 7.0編譯安裝Nginx1.6.0+MySQL5.6.19+PHP5.5.14數據庫
http://www.osyunwei.com/archives/7891.htmlvim
2、zabbix軟件包下載瀏覽器
http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz
上傳zabbix-2.2.6.tar.gz到服務器/usr/local/src目錄下面
安裝篇
1、建立、導入zabbix數據庫
cd /usr/local/src #進入軟件包下載目錄
tar zxvf zabbix-2.2.6.tar.gz #解壓
cd /usr/local/src/zabbix-2.2.6/database/mysql #進入mysql數據庫建立腳本目錄
ls #列出文件,能夠看到有schema.sql、images.sql、data.sql這三個文件
mysql -u root -p #輸入密碼,進入MySQL控制檯
create database zabbix character set utf8; #建立數據庫zabbix,而且數據庫編碼使用utf8
insert into mysql.user(Host,User,Password) values('localhost','zabbix',password('123456')); #新建帳戶zabbix,密碼123456
flush privileges; #刷新系統受權表
grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123456' with grant option; #容許帳戶zabbix能從本機鏈接到數據庫zabbix
flush privileges; #再次刷新系統受權表
use zabbix #進入數據庫
source /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql #導入腳本文件到zabbix數據庫
source /usr/local/src/zabbix-2.2.6/database/mysql/images.sql #導入腳本文件到zabbix數據庫
source /usr/local/src/zabbix-2.2.6/database/mysql/data.sql #導入腳本文件到zabbix數據庫
注意:請按照以上順序進行導入,不然會出錯。
exit #退出
或者這樣導入
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/images.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/data.sql
cd /usr/lib64/mysql #32位系統爲/usr/lib/mysql,注意系統版本同,文件版本可能不同,這裏是16.0.0
ln -s libmysqlclient.so.16.0.0 libmysqlclient.so #添加軟鏈接
ln -s libmysqlclient_r.so.16.0.0 libmysqlclient_r.so #添加軟鏈接
2、安裝zabbix
一、添加用戶:
groupadd zabbix #建立用戶組zabbix
useradd zabbix -g zabbix -s /bin/false #建立用戶zabbix,而且把用戶zabbix加入到用戶組zabbix中
二、安裝依賴包 #CentOS使用yum命令安裝
yum install net-snmp-devel curl curl-devel mysql-devel
備註:以上軟件包若是在安裝Web環境LAMP或者LNMP時已經安裝過,此步驟可忽略
三、安裝zabbix
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2 #添加軟鏈接
/sbin/ldconfig #使配置當即生效
cd /usr/local/src/zabbix-2.2.6 #進入安裝目錄
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config #配置
make #編譯
make install #安裝
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系統軟鏈接
ln -s /usr/local/zabbix/bin/* /usr/local/bin/ #添加系統軟鏈接
說明:find / -name mysql_config 查找位置,若是沒有mysql_config,須要安裝yum install mysql-devel
四、添加zabbix服務對應的端口
vi /etc/services #編輯,在最後添加如下代碼
# Zabbix
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
:wq! #保存退出
五、修改zabbix配置文件
cd /usr/local/zabbix/etc
vi /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix #數據庫名稱
DBUser=zabbix #數據庫用戶名
DBPassword=123456 #數據庫密碼
ListenIP=127.0.0.1 #數據庫ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix運行腳本存放目錄
:wq! #保存退出
vi /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #啓用自定義key
:wq! #保存退出
六、添加開機啓動腳本
cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服務端
cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客戶端
chmod +x /etc/rc.d/init.d/zabbix_server #添加腳本執行權限
chmod +x /etc/rc.d/init.d/zabbix_agentd #添加腳本執行權限
chkconfig zabbix_server on #添加開機啓動
chkconfig zabbix_agentd on #添加開機啓動
七、修改zabbix開機啓動腳本中的zabbix安裝目錄
vi /etc/rc.d/init.d/zabbix_server #編輯服務端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安裝目錄
:wq! #保存退出
vi /etc/rc.d/init.d/zabbix_agentd #編輯客戶端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安裝目錄
:wq! #保存退出
3、配置web站點
cd /usr/local/src/zabbix-2.2.6
cp -r /usr/local/src/zabbix-2.2.6/frontends/php /usr/local/nginx/html/zabbix
chown www.www -R /usr/local/nginx/html/zabbix
備註:/usr/local/nginx/html爲Nginx默認站點目錄 www爲Nginx運行帳戶
service zabbix_server start #啓動zabbix服務端
service zabbix_agentd start #啓動zabbix客戶端
4、修改php配置文件參數
一、vi /etc/php.ini #編輯修改
post_max_size =16M
max_execution_time =300
max_input_time =300
:wq! #保存退出
二、vi /usr/local/php/etc/php-fpm.conf #編輯修改
request_terminate_timeout = 300
:wq! #保存退出
service php-fpm reload #重啓php-fpm
5、安裝web
在瀏覽器中打開:
http://192.168.21.127/zabbix/setup.php
系統運維 www.osyunwei.com 舒適提醒:qihang01原創內容©版權全部,轉載請註明出處及原文鏈
Next
檢查系統環境設置,必須所有都爲ok,才能繼續
Next
配置MySQL數據庫信息
Database:MySQL
Database host:127.0.0.1
Database port:use default port
Database name:zabbix
User:zabbix
Password:123456
Test connection #測試數據庫鏈接是否正常,顯示ok表示經過
Next
系統運維 www.osyunwei.com 舒適提醒:qihang01原創內容©版權全部,轉載請註明出處及原文鏈
Next 默認
Next
Finish 安裝完成
6、更改zabbix默認語言爲簡體中文、替換監控圖像上系統默認的中文字體
一、修改系統配置文件,讓web頁面支持簡體中文顯示
vi /usr/local/nginx/html/zabbix/include/locales.inc.php #編輯修改
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),
修改成
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),
:wq! #保存退出
二、替換監控圖像上系統默認的字體 #默認字體不支持中文,若是不替換,圖像上會顯示亂碼
在Windows系統中的C:\Windows\Fonts目錄中複製出一箇中文字體文件,例如msyh.ttf
把字體文件msyh.ttf上傳到zabbix站點根目錄下fonts文件夾中
例如:/usr/local/nginx/html/zabbix/fonts
備份默認的字體文件:DejaVusSans.ttf-bak
修改msyh.ttf名稱爲DejaVusSans.ttf
三、在瀏覽器中打開:
http://192.168.21.127/zabbix
帳號:admin
密碼:zabbix
Sign in 登陸
以下圖所示
點擊Profile
以下圖所示
Language:Chinese(zh_CN) #簡體中文
點Save 保存
退出站點,從新登陸以後,以下圖所示
默認界面已是中文顯示
至此,Zabbix安裝圖解教程完成。
客戶端:
1) 建立用戶
groupadd zabbix
useradd -g zabbix zabbix
2)zabbix軟件包下載,安裝http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz
上傳zabbix-2.2.6.tar.gz到服務器/usr/local/src目錄下面
cd /usr/local/src #進入軟件包下載目錄
tar zxvf zabbix-2.2.6.tar.gz #解壓
cd /usr/local/src/zabbix-2.2.6 #進入安裝目錄./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
3)添加服務端口和修改啓動腳本
vi /etc/services #編輯,在最後添加如下代碼
# Zabbix
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
chmod +x /etc/rc.d/init.d/zabbix_agentd #添加腳本執行權限
vi /etc/rc.d/init.d/zabbix_agentd #編輯客戶端配置文件
修改BASEDIR=/usr/local/zabbix/ #zabbix安裝目錄
chkconfig zabbix_agentd on #添加開機啓動
4)修改zabbix_agent配置文件
vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.1.22,192.168.1.21 #服務器端的IP及本機的IP
ServerActive=192.168.1.22,192.168.1.21
Hostname=single #agent主機名
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/ #擴展配置目錄
5)啓動
/etc/init.d/zabbix_agentd start
6)在防火牆上開啓相應端口
vi /etc/sysconfig/iptables
添加:
-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
重啓防火牆:
service iptables restart
7)測試
下面的命令須要在server端執行,其中192.168.1.21是agent的ip
#/usr/local/zabbix/bin/zabbix_get -s192.168.1.21 -p10050 -k"system.uptime"
1031163
說明成功啦。
8)監控該服務器
訪問:http://192.168.1.22/zabbix/,192.168.1.22是zabbix server的IP.
組態—>主機->建立主機,
能夠選擇相應的模板,如:
Z若是是紅色的話是不正常的,必須是綠色。