云計算
zabbix介紹
要想實時的了解服務器的運行狀況并且能在出現(xiàn)問題時及時解決,利用監(jiān)控軟件是一個很好的選擇,而zabbix監(jiān)控系統(tǒng)則在眾多監(jiān)控軟件中脫穎而出。
zabbix是一個基于web界面的企業(yè)級開源監(jiān)控軟件,zabbix服務器需要lamp環(huán)境或lnmp環(huán)境,提供分布式系統(tǒng)監(jiān)控與網(wǎng)絡監(jiān)視功能。具備主機的性能監(jiān)控,網(wǎng)絡設備性能監(jiān)控,數(shù)據(jù)庫性能監(jiān)控,多種告警方式,詳細報表、圖表的繪制等功能。監(jiān)測對象可以是linux或windows服務器,也可以是路由器、交換機等網(wǎng)絡設備,通過snmp、zabbix agent、ping、端口監(jiān)視等方法提供對遠程網(wǎng)絡服務器等監(jiān)控、數(shù)據(jù)收集等功能。
zabbix監(jiān)控架構:
在生產(chǎn)環(huán)境中,zabbix根據(jù)網(wǎng)絡環(huán)境、監(jiān)控規(guī)模等外界因素分為三種架構:server-client(直接連接)、master-node-client(node架構)、server-proxy-client(proxy架構),如下圖所示:
1、server-client架構:server-client架構是zabbix最簡單的架構,監(jiān)控機和被監(jiān)控機之間不經(jīng)過任何代理,直接在zabbix server(監(jiān)控服務器) 和zabbix agent(agent:部署在被監(jiān)控端,用于采集數(shù)據(jù))之間進行數(shù)據(jù)交互,適用于網(wǎng)絡比較簡單,設備較少的監(jiān)控環(huán)境。2、master-node-client架構:master-node-client架構是zabbix最復雜的監(jiān)控架構,適用于跨網(wǎng)絡、跨機房、設備較多的大型環(huán)境。每個node同時也是一個server端,node下面可以接proxy,也可以直接接client。node有自己的配置文件和數(shù)據(jù)庫,其要做的就是將配置信息和監(jiān)控數(shù)據(jù)向master同步。當master宕機后,node可以保證架構的完整性。3、server-proxy-client架構:proxy是server、client之間溝通的一個橋梁,proxy本身沒有前端,而且其本身不存放數(shù)據(jù),只是將agentd發(fā)來的數(shù)據(jù)暫時存放,而后再提交給server。該架構經(jīng)常是和master-node-client架構做比較的架構,一般適用于跨機房、跨網(wǎng)絡的中型網(wǎng)絡架構的監(jiān)控。zabbix 角色組件
zabbix agent:負責部署在被監(jiān)控主機上,把被監(jiān)控主機的數(shù)據(jù)傳送給zabbix serverzabbix server:負責接收agent發(fā)送的信息,組織配置信息,統(tǒng)計配置信息和操作數(shù)據(jù)等zabbix database: 用于存儲zabbix的所有配置信息,監(jiān)控數(shù)據(jù)的數(shù)據(jù)庫zabbix web: zabbix的web界面,管理可以通過zabbix的web界面管理zabbix配置以及查看zabbix的監(jiān)控信息,可以獨一部署在一臺服務器上zabbix proxy:分布式環(huán)境中使用,zabbix proxy代表server端管理該區(qū)域中的信息收集,最終統(tǒng)一發(fā)往zabbix serverzabbix通訊方式
agent:通過專用的代理程序進行監(jiān)控ssh/telnet:通過遠程控制協(xié)議進行通訊snmp:通過snmp協(xié)議與被監(jiān)控對象進行通訊,路由器和交換機支持snmp,其實也是一種agentipmi:通過ipmi接口進行監(jiān)控,通過ipmi硬件接口監(jiān)控,電壓,溫度,風扇,和電源狀態(tài)jmx:通過(java management extensions java管理擴展)監(jiān)控jvm虛擬機分布式的監(jiān)控體系:監(jiān)控數(shù)據(jù)被提交給zabbix proxy 再 提交給zabbix server
zabbix 工作模式
主動模式:由agent端主動收集信息發(fā)送給server端 工具是zabbix_sender被動模式:由server端主動拉取信息 工具是zabbix_get實驗環(huán)境
監(jiān)控端:192.168.136.168
被監(jiān)控端:192.168.136.185
安裝lamp
yum install -y \\\\httpd \\\\mariadb-server mariadb \\\\php \\\\php-mysql \\\\php-gd \\\\libjpeg* \\\\php-ldap \\\\php-odbc \\\\php-pear \\\\php-xml \\\\php-xmlrpc \\\\php-mhashvim /etc/httpd/conf/httpd.confservername www.benet.comdirectoryindex index.html index.phpvi /etc/php.inidate.timezone = prc //設置中國時區(qū)systemctl stop firewalld.servicesetenforce 0systemctl start httpd.servicesystemctl start mariadb.servicenetstat -ntap | egrep \\\'(80|3306)\\\'mysql_secure_installationvi /var/www/html/index.php<?phpphpinfo();?>
http://192.168.175.155/
mysql -u root -p#為zabbix設置一個數(shù)據(jù)庫,并且要設置一個用戶去管理它create database zabbix character set utf8 collate utf8_bin;grant all privileges on *.* to \\\'zabbix\\\'@\\\'%\\\' identified by \\\'admin123\\\';flush privileges;#寫一個測試首頁[root@localhost ~]# cd /var/www/html/[root@localhost html]# vim index.php<?php phpinfo();?>#驗證zabbix能否連接數(shù)據(jù)庫<?php$link=mysql_connect(\\\'192.168.136.167\\\',\\\'zabbix\\\',\\\'admin123\\\');if($link) echo <h2>success!!</h2>;else echo fail!!;mysql_close();?>———解決本地無法登錄問題(可忽略)—————
[root@localhost html]# mysql -u root -penter welcome to the mariadb monitor. commands end with ; or \\\\g.your mariadb connection id is 9server version: 5.5.64-mariadb mariadb servercopyright (c) 2000, 2018, oracle, mariadb corporation ab and others.type \\\'help;\\\' or \\\'\\\\h\\\' for help. type \\\'\\\\c\\\' to clear the current input statement.mariadb [(none)]> select user,host from mysql.user; //有空用戶名稱占用導致本地無法登錄遠程可登錄 -------- ----------------------- | user | host | -------- ----------------------- | zabbix | % || root | 127.0.0.1 || root | ::1 || | localhost || root | localhost || | localhost.localdomain | -------- ----------------------- 6 rows in set (0.01 sec)drop user \\\'\\\'@localhost;drop user \\\'\\\'@cacti;flush privileges;
—————-以下開始部署zabbix server——-
yum install php-bcmath php-mbstring -yrpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm //會自動生成yum源文件,保證系統(tǒng)可以上網(wǎng)yum install zabbix-server-mysql zabbix-web-mysql -yzcat /usr/share/doc/