您好,登錄后才能下訂單哦!
Zabbix3.2監控工具
Zabbix是一個基于WEB界面的提供的分布式系統監控以及網絡監視功能的企業級的開源工具。
Zabbix能監視各種網絡參數,保證服務器系統的安全運營,并提供靈活的通知機制讓管理員迅速定位/解決存在的各種問題。
Zabbix由Zabbix_Server服務端和Zabbix_Agent客戶端還有Zabbix_proxy代理三個部分組成。
Zabbix_Server:可以通過SNMP,Zabbix_Agent,Ping,SNMP等方法提供對遠程服務器/網絡狀態的監視。
Zabbix_Agent:是用來采集客戶端服務器數據來交給Zabbix_Server處理。
Zabbix_Proxy:緩存同步服務器監控數據。
Zabbix的主要功能:CPU負荷,內存使用,磁盤使用,網絡狀況,端口監視,日志監視。
Zabbix的監控架構:
Zabbix部署步驟:
環境需求:必須LNMP/LAMP環境的支持,需要PHP5.4以上版本支持才可以。
# systemctl stop firewalld #關閉firewalld防火墻
# systemctl disable firewalld.service #禁止firewalld服務自啟
# sed -i -e 's|SELINUX=enforcing|SELINUX=disabled|' /etc/selinux/config #關閉SELINUX
# sed -i -e 's|SELINUXTYPE=targeted|#SELINUXTYPE=targeted|' /etc/selinux/config
# setenforce 0
源碼編譯方式:
v 安裝相關依賴組件
# yum -y install php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel gcc gcc-c++ net-snmp net-snmp-devel perl-DBI httpd mariadb* #YUM部署LAMP環境
v 解壓安裝包
# tar xzvf zabbix-3.2.1.tar.gz
# cd zabbix-3.2.1
v 編譯安裝Zabbix
安裝Server和Agent,并支持將數據放入MYSQL數據庫中:
# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
僅安裝Server,并支持將數據放入MYSQL數據庫中:
# ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-libcurl
僅安裝Proxy代理,并支持將數據放入MYSQL數據庫中:
# ./configure --prefix=/usr/local/zabbix --enable-proxy --with-net-snmp --with-mysql --with-ssh3
僅安裝Agent客戶端:
# ./configure --enable-agent
# make && make install
注:--with-libcurl:監控WEB頁面響應時間,下載速度。
v 授權Zabbix數據庫用戶
# systemctl start mariadb #啟動MYSQL
# mysqladmin -u root password 123 #設置數據庫ROOT用戶密碼
# mysql -u root -p123 #登錄數據庫
mysql> create database zabbix character set UTF8; #創建zabbix數據庫并指定編碼為UTF8
mysql> grant all on zabbix.* to 'zabbix'@'localhost' identified by '123' with grant option;
mysql> flush privileges; #授權zabbix用戶與刷新授權
mysql> exit
v 將Zabbix自帶的SQL文件導入數據庫
# mysql -u zabbix -p123 zabbix < database/mysql/schema.sql #按順序導入
# mysql -u zabbix -p123 zabbix < database/mysql/p_w_picpaths.sql
# mysql -u zabbix -p123 zabbix < database/mysql/data.sql
v 將Zabbix自帶的PHP頁面放入Nginx網頁根目錄
# cp -r frontends/php /var/www/html/zabbix
# chmod 777 /var/www/html/zabbix/conf
v 將Zabbix添加到服務
# cp -r misc/init.d/fedora/core/* /etc/init.d/
# sed -i -e 's|BASEDIR=/usr/local|BASEDIR=/usr/local/zabbix|' /etc/init.d/zabbix_server
# sed -i -e 's|BASEDIR=/usr/local|BASEDIR=/usr/local/zabbix|' /etc/init.d/zabbix_agentd
v 修改Zabbix_server配置文件
# sed -i -e 's|# DBPassword=|DBPassword=123|' /usr/local/zabbix/etc/zabbix_server.conf
# sed -i -e 's|# DBSocket=/tmp/mysql.sock|DBSocket=/var/lib/mysql/mysql.sock|' /usr/local/zabbix/etc/zabbix_server.conf
Zabbix_server配置文件解析
LogFile=/tmp/zabbix_server.log | 日志所在位置 |
LogFileSize=1 | 日志大小 |
PidFile=/tmp/zabbix_server.pid | PID進程文件所在位置 |
DBHost | 數據庫主機地址 |
DBName | 數據庫名 |
DBUser | 數據庫連接用戶名 |
DBPassword | 數據庫連接用戶密碼 |
DBSocket | 數據庫緩存文件位置 |
DBPort | 數據庫端口 |
StartPollers | Zabbix_server進程數 |
StartIPMIPollers | IPMI線程數(IPMI平臺管理接口) |
StartPollersUnreachable | 該線程用來單獨監控無法連接的主機 |
StartTrapper | 檢測主機的線程數 |
StartPingers | PING主機方式啟動的線程數 |
StartDiscoverers | 發現主機的線程數 |
StartDBSyncers | 將數據同步到數據庫的線程數 |
Timeout | Zabbix_server的檢測超時時間 |
v 修改PHP配置
# sed -i -e 's|post_max_size = 8M|post_max_size = 16M|' /etc/php.ini
# sed -i -e 's|max_execution_time = 30|max_execution_time = 300|' /etc/php.ini
# sed -i -e 's|max_input_time = 60|max_input_time = 300|' /etc/php.ini
# sed -i -e 's|;date.timezone =|date.timezone = PRC|' /etc/php.ini
post_max_size | 上傳最大文件大小 | date.timezone | 時區設置(PRC代表中國) |
max_execution_time | 運行超時時間(秒) | request_terminate_timeout | 需求結束超時時間(秒) |
max_input_time | 接受數據時間限制(秒) |
v 創建運行用戶
# useradd zabbix
v 啟動服務
# service start zabbix_server
# systemctl start zabbix_agentd
# systemctl start httpd
# netstat -lnupt |grep 80
# ps aux |grep zabbix
v 通過網頁驗證訪問
Http://localhost/zabbix
被監控主機配置
v 環境需求:關閉防火墻,SELinux
# systemctl stop firewalld
# setenforce 0
# iptables -F
# yum -y install gcc gcc-c++
v 解壓zabbix包
# tar xzvf zabbix-3.2.1.tar.gz
# cd zabbix-3.2.1
v 編譯安裝
# ./configure --prefix=/usr/local/zabbix --enable-agent
# make && make install
v 創建運行用戶
# useradd zabbix
# echo 123 | passwd zabbix --stdin
v 添加到服務
# cp -r misc/init.d/fedora/core/* /etc/init.d/
# sed -i -e 's|BASEDIR=/usr/local|BASEDIR=/usr/local/zabbix|' /etc/init.d/zabbix_agentd
v 修改Zabbix_agentd配置文件
# sed -i -e 's|Server=127.0.0.1|Server=1.1.1.19|' /usr/local/zabbix/etc/zabbix_agentd.conf
# sed -i -e 's|ServerActive=127.0.0.1|ServerActive=1.1.1.19|' /usr/local/zabbix/etc/zabbix_agentd.conf
# sed -i -e 's|# Hostname=|Hostname=1.1.1.20|' /usr/local/zabbix/etc/zabbix_agentd.conf
Zabbix_agentd配置文件解析
UnsafeUserParameters | 啟動自定義KEY |
EnableRemoteCommands | 開啟遠程命令 |
ListenPort | 監聽端口 |
StartAgents | Agent線程數 |
Server | 被動模式指定服務端地址 |
ServerActive | 主動模式指定服務器地址 |
Hostname | 主機名 |
v 啟動服務
# service zabbix_agentd restart
# netstat -lnupt |grep 10050
YUM安裝方式:
環境需求:需要連接網絡,關閉防火墻,SELinux
# systemctl stop firewalld #關閉防火墻
# setenforce 0
v 安裝Zabbix的YUM庫
# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
# yum makecache #重新生成緩存
v 安裝相關依賴組件
# yum -y install php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp net-snmp-devel perl-DBI httpd mariadb* #YUM部署LAMP環境
v 安裝Zabbix_server
# yum -y install zabbix-server-mysql zabbix-web-mysql
v 授權MYSQL數據庫
# systemctl start mariadb #啟動數據庫
# mysqladmin -u root password 123
# mysql -u root -p123
> create database zabbix character set UTF8;
> grant all on zabbix.* to 'zabbix'@'localhost' identified by '123' with grant option;
> flush privileges;
> exit
v 導入Zabbix數據庫文件
# mysql -u zabbix -p123 zabbix < schema.sql
# mysql -u zabbix -p123 zabbix < p_w_picpaths.sql
# mysql -u zabbix -p123 zabbix < data.sql
v 修改配置文件
# sed -i -e 's|# DBPassword=|DBPassword=123|' /etc/zabbix/zabbix_server.conf
# sed -i -e 's|# DBSocket=/tmp/mysql.sock|DBSocket=/var/lib/mysql/mysql.sock|' /usr/local/zabbix/etc/zabbix_server.conf
# sed -i -e 's|;date.timezone =|date.timezone = PRC|' /etc/php.ini
v 啟動服務
# zabbix_server
# systemctl start httpd
v 通過網頁驗證訪問
Http://localhost/zabbix
被監控端安裝配置
v 環境需求:關閉防火墻,SELinux
# systemctl stop firewalld
# setenforce 0
v 安裝Zabbix_agentd服務
# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
# yum makecache
# yum -y install zabbix-agent
v 修改Zabbix_agentd配置文件
# sed -i -e 's|Server=127.0.0.1|Server=1.1.1.19|' /usr/local/zabbix/etc/zabbix_agentd.conf
# sed -i -e 's|ServerActive=127.0.0.1|ServerActive=1.1.1.19|' /usr/local/zabbix/etc/zabbix_agentd.conf
# sed -i -e 's|# Hostname=|Hostname=1.1.1.20|' /usr/local/zabbix/etc/zabbix_agentd.conf
v 啟動Zabbix_agentd服務
# zabbix_agentd
# netstat -lnupt |grep zabbix
WEB配置圖片導航:
安裝故障排查
故障一:MYSQL數據庫版本過高問題; 解決方法:重新安裝適用MYSQL數據庫
注:Current database version:當前版本 Required mandatory version:強制版本號
故障二:用戶授權問題; 解決方法:重新授權Zabbix數據庫用戶
故障三:數據庫問題 解決方法:重新導入Zabbix對應數據庫
故障四:服務器進程過多問題 解決方法:設置配置文件相關參數控制進程
注:Too many processes on Zabbix server:在Zabbix服務器進程數太多
故障五:Zabbix_server啟動時線程數低導致輪詢負載 解決方法:StartPollers設置為5或10
故障六:Zabbix_server在運行但是提示沒在運行 解決方法:關閉SELinux
故障七:數據庫密碼錯誤 解決方法:修改配置文件zabbix.conf.php
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。