2018.4.12 16周2次課
19.1 Linux監控平臺介紹
19.2 zabbix監控介紹
19.3/19.4/19.6 安裝zabbix
19.5 忘記Admin密碼如何做
19.1 Linux監控平臺介紹
cacti、nagios、zabbix、smokeping、open-falcon等等
cacti、smokeping偏向於基礎監控,成圖非常漂亮
cacti、nagios、zabbix服務端監控中心,需要php環境支持,其中zabbix和cacti都需要mysql作為數據存儲,nagios不用存儲歷史數據,註重服務或者監控項的狀態,zabbix會獲取服務或者監控項目的數據,會把數據記錄到數據庫裏,從而可以成圖
open-falcon為小米公司開發,開源後受到諸多大公司和運維工程師的追捧,適合大企業,滴滴、360、新浪微博、京東等大公司在使用這款監控軟件,值得研究
後續以介紹zabbix為主
19.2 zabbix監控介紹
C/S架構,基於C++開發,監控中心支持web界面配置和管理
單server節點可以支持上萬臺客戶端
最新版本3.4,官方文檔https://www.zabbix.com/manuals
5個組件
1.zabbix-server
zabbix·server是整個監控體系中最核心的組件, 它負責接收客戶端發送的報告信息 , 所有配置、統計數據及操作數據都由它組織。
2.數據存儲
所有的收集信息存儲在這裏。
3,Web界面
web界面即GUI, 這是zabbix監控簡單易用的原因之一, 因為我們可以在web界面中配置、 管理各個客戶端。運行web界面需要有PHP環境支持
4,zabbix-proxy
Zabbix-proxy為可選組件, 用於監控節點非常多的分布式環境中 , 它可以代理zabbix-server的功能,減輕zabbix-server的壓力
5,zabbix-agent
zabbix·agent為部署在各客戶端上的組件, 用於采集各監控項目的數據 , 並把采集的數據傳輸給 zabbix-proxy或者zabbix-server。
zabbix監控流程圖
19.3/19.4/19.6 安裝zabbix
官網下載地址 www.zabbix.com/download
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm //安裝yum源倉庫
或rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
查看zabbix.repo:cat /etc/yum.repos.d/zabbix.repo
服務端安裝:yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
會連帶安裝httpd和php,如果mysql之前沒有安裝的話,需要根據lamp那一章的mysql安裝方法安裝mysql
客戶端安裝:yum install -y zabbix-agent
查看mysql是否啟動:ps aux |grep mysql
Mysql已經啟動,如果沒有啟動用命令啟動service mysqld start
vim /etc/my.cnf //需要增加配置,設置默認字符集
character_set_server = utf8
重啟mysqld服務:service mysqld restart
進入mysql命令行,創建zabbix庫:create database zabbix character set utf8;
再創建用戶:grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'aming-zabbix';
退出,導入數據
cd /usr/share/doc/zabbix-server-mysql-3.4.8
gzip -d create.sql.gz
mysql -uroot zabbix < create.sql
啟動zabbix服務:systemctl start zabbix-server
啟動httpd服務前檢查是否啟動了nginx服務,因為都監聽80端口的,所以如果啟動了就關閉nginx服務:systemctl stop nginx
啟動httpd服務:systemctl start httpd
查看服務httpd:ps aux |grep httpd
查看端口:是否有80端口
查看zabbix服務:ps aux |grep zabbix
systemctl start httpd; systemctl enable httpd
查看端口,發現zabbix端口沒有起來,查看日誌文件:less /var/log/zabbix/zabbix_server.log
1932:20180412:141449.658 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
說明無法連接mysql,要更改下配置文件
vim /etc/zabbix/zabbix_server.conf //修改或增加
DBHost=127.0.0.1 //在DBName=zabbix上面增加,因為mysql裝在本機上
DBName=zabbix //數據庫名字
DBUser=zabbix //數據庫用戶名
DBPassword=aming-zabbix //在DBuser下面增加,授權的密碼
DBHost ,DBName,DBUser和DBPassword後面定義的都是前面創建數據庫用戶時定義好的,這裏寫入的要和前面定義好的要匹配
更改好後配置文件後重啟服務:systemctl restart zabbix-server
查看服務:ps aux |grep zabbix
查看監聽端口:netstat –lntp
瀏覽器訪問http://ip/zabbix/ web界面下面配置zabbix
點Next step
需要設置時區
編輯php的配置文件:vi /etc/php.ini
設置date.timezone = Asia/shanghai
重啟httpd服務:systemctl restart httpd
刷新網頁,就正常了
點Next step
點Next step
點Next step
點Next step
點Finish
用戶名Admin 密碼zabbix
進入後臺第一件事情就是修改密碼
19.5 忘記Admin密碼如何做
進入mysql命令行,選擇zabbix庫
mysql -uroot -p zabbix
use zabbix;
查看庫裏說有的表:show tables;
查看users表:desc users; //密碼在users表裏
update users set passwd=md5('111111') where alias='Admin';
這樣就更改了Admin用戶的密碼
select * from users;
2018.4.12 16周2次課