zabbix服務端客戶端部署
zabbix是一個基於WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。
zabbix由zabbix server與可選組件zabbix agent兩部分組成。
zabbix server可以通過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視。
zabbix agent需要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操作系統有關的內存,CPU等信息的收集。
zabbix的主要特點:
- 安裝與配置簡單,學習成本低
- 支持多語言(包括中文)
- 免費開源
- 自動發現服務器與網絡設備
- 分布式監視以及WEB集中管理功能
- 可以無agent監視
- 用戶安全認證和柔軟的授權方式
- 通過WEB界面設置或查看監視結果
- email等通知功能
等等
Zabbix主要功能:
- CPU負荷
- 內存使用
- 磁盤使用
- 網絡狀況
- 端口監視
- 日誌監視
服務器端:
準備篇:
一、Web環境:Nginx+MySQL+PHP
CentOS 7.0編譯安裝Nginx1.6.0+MySQL5.6.19+PHP5.5.14
http://www.osyunwei.com/archives/7891.html
二、zabbix軟件包下載
zabbix-2.2.6
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目錄下面
安裝篇
一、創建、導入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 #添加軟連接
二、安裝zabbix
1、添加用戶:
groupadd zabbix #創建用戶組zabbix
useradd zabbix -g zabbix -s /bin/false #創建用戶zabbix,並且把用戶zabbix加入到用戶組zabbix中
2、安裝依賴包 #CentOS使用yum命令安裝
yum install net-snmp-devel curl curl-devel mysql-devel
備註:以上軟件包如果在安裝Web環境LAMP或者LNMP時已經安裝過,此步驟可忽略
3、安裝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
4、添加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! #保存退出
5、修改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! #保存退出
6、添加開機啟動腳本
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 #添加開機啟動
7、修改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! #保存退出
三、配置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客戶端
四、修改php配置文件參數
1、vi /etc/php.ini #編輯修改
post_max_size =16M
max_execution_time =300
max_input_time =300
:wq! #保存退出
2、vi /usr/local/php/etc/php-fpm.conf #編輯修改
request_terminate_timeout = 300
:wq! #保存退出
service php-fpm reload #重啟php-fpm
五、安裝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 安裝完成
六、更改zabbix默認語言為簡體中文、替換監控圖像上系統默認的中文字體
1、修改系統配置文件,讓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! #保存退出
2、替換監控圖像上系統默認的字體 #默認字體不支持中文,如果不替換,圖像上會顯示亂碼
在Windows系統中的C:\Windows\Fonts目錄中復制出一個中文字體文件,例如msyh.ttf
把字體文件msyh.ttf上傳到zabbix站點根目錄下fonts文件夾中
例如:/usr/local/nginx/html/zabbix/fonts
備份默認的字體文件:DejaVusSans.ttf-bak
修改msyh.ttf名稱為DejaVusSans.ttf
3、在瀏覽器中打開:
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軟件包下載,安裝zabbix-2.2.6
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如果是紅色的話是不正常的,必須是綠色。
zabbix服務端客戶端部署