1. 程式人生 > >zabbix分散式監控解決方案

zabbix分散式監控解決方案

Zabbix介紹

Zabbix 是一個基於WEB介面的提供分散式系統監視以及網路監視功能的企業級的開源解決方案。
對於一個運維人員來說,不論是傳統運維還是自動化運維,保證線上業務整體能夠穩定執行是相當重要的,所以運維需要時長實時的關注到伺服器的執行情況,關注各項指標是否正常,那麼這裡就用到了今天學習的zabbix技術,zabbix可以監控我們在運維工作當中遇到的大部分的硬體。並提供實時動態的web視覺化結果展示,因此特別受到大家的歡迎。
在開始安裝之前,我們也必須討論一下另外的一個問題,監控:
假如沒有zabbix,我們肯定要手寫一些監控的指令碼,或者類zabbix的平臺,但是如果我們監控都是伺服器裝置,那麼我們可以通過ssh或者telnet。但是作為一個完整的(高大上)監控平臺,單純的只能監控伺服器是不夠完美的,所以,我們首先要了解一下zabbix如何實現監控其他裝置的,在這一方面,zabbix主要採用了一下幾種方法:
1、 agent 毋庸置疑,這個是最常規的master/agent的模型
2、 ssh/telnet 遠端操作,類似於Ansible要實現的功能了
3、 SNMP 通過SNMP協議與被監控的物件進行通訊,通常用於路由器和交換機這種硬體裝置,
畢竟在他們上面安裝agent太難了。
4、 IPMI 通過IPMI介面進行監控,通常用於電壓、溫度、風扇和電源狀態的監控
5、 JMX 通過JMX進行監控,通常是針對jvm虛擬機器的
在這裡插入圖片描述


當然上面的圖也沒有完全的將監控展示出來,只是畫了一個草圖,以供大家理解,大家在使用的時候也會有更多的裝置。

Zabbix安裝

安裝前準備
我們準備一臺centos 7的伺服器(當然其他版本的也可以,只是我這裡是以7版本來做實驗安裝的),作為zabbix-server的伺服器。
然後檢視我們的selinux和防火牆
Selinux
命令:getenforce
在這裡插入圖片描述
假如返回的結果不是Disabled,那麼需要關閉防火牆
命令:setenforce 0
防火牆
命令: systemctl disable firewalld.service或者 systemctl stop firewalld.service


在這裡插入圖片描述
進行安裝
安裝MariaDB資料庫
命令: yum -y install mariadb-server mariadb-devel或者yum -y install mariadb-server.x86_64 mariadb-devel.x86_64
在這裡插入圖片描述
在這裡插入圖片描述
出現以上效果就是安裝完成了,然後我們進行資料庫內部操作,開啟MariaDB資料。
命令:systemctl start mariadb.service
在這裡插入圖片描述
檢視MariaDB資料庫在程序的狀態
命令:netstat -antpu | grep mysqld
在這裡插入圖片描述
進入資料建立資料表
進入資料庫命令: mysql
建立資料表命令:create database zabbix character set utf8 collate utf8_bin;
(新手這裡要注意‘;’,資料庫語句後面需要有‘;’來結束)
在這裡插入圖片描述
建立使用者,並且賦權
命令: grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by '123456';
在這裡插入圖片描述
賦權生效
命令:flush privileges;
flush privileges 命令本質上的作用是將當前user和privilige表中的使用者資訊/許可權設定從mysql庫(MySQL資料庫的內建庫)中提取到記憶體裡。MySQL使用者資料和許可權有修改後,希望在"不重啟MySQL服務"的情況下直接生效,那麼就需要執行這個命令。
在這裡插入圖片描述
退出資料庫
命令:exit
至此我們完成了基本配置。
安裝zabbix
配置yum源
獲取rpm包命令:

wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

在這裡插入圖片描述
安裝rpm包命令

rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

在這裡插入圖片描述
快取yum資訊
命令:yum makecache
在這裡插入圖片描述
發起安裝
命令:yum install zabbix-get zabbix-sender zabbix-server-mysql zabbix-web zabbix-agent -y
在這裡插入圖片描述
在這裡插入圖片描述
進行配置
1、 進行資料庫匯入
命令:

cd /usr/share/doc/zabbix-server-mysql-3.2.11/
gunzip create.sql.gz 
mysql -u zabbix -p zabbix < create.sql

注意最後一條命令需要密碼,我們設定的(123456)

在這裡插入圖片描述
2、 修改zabbix_server_conf這個配置檔案
命令:

vim /etc/zabbix/zabbix_server.conf

在這裡插入圖片描述
找到115行(指定密碼):
#DBPassword=
在下面再寫一行

DBPassword=123456

再找到123行(指定sock檔案位置):
#DBSocket=/tmp/mysql.sock

在下面再寫一行

DBSocket=/var/lib/mysql/mysql.sock

這個密碼是你DariaDB裡面之前設定zabbix使用者的密碼,可以根據自己喜好改。
在這裡插入圖片描述
然後修改時區
在這裡插入圖片描述
在這裡插入圖片描述
然後安裝mysql-php的包
命令:yum -y install php-mysql
在這裡插入圖片描述
然後重新啟動所有的服務
命令:

systemctl start httpd.service
systemctl start mariadb
systemctl start zabbix-server
systemctl start zabbix-agent

在這裡插入圖片描述
訪問ip/zabbix檢視效果,比如我的:192.168.1.88/zabbix
第一次訪問需要配置
在這裡插入圖片描述
在這裡插入圖片描述
這裡需要注意埠號更改為:3306,密碼是你剛剛設定的密碼:123456(當然之前你也可以設定為其他的密碼,這裡就是你設定的密碼)
在這裡插入圖片描述
這裡我們將名字取做:zabbix-server
在這裡插入圖片描述
然後按照提示下一步,一直完成安裝
在這裡插入圖片描述
在這裡插入圖片描述
這裡需要注意的是,zabbix預設的管理員賬號:Admin,密碼:zabbix(剛剛我們上面設定的密碼)
在這裡插入圖片描述
在這裡插入圖片描述
至此,一個zabbix伺服器已經搭建完成。快去試試吧!