1. 程式人生 > >2018.4.12 16周2次課

2018.4.12 16周2次課

Linux學習

十六周二次課(4月12日)

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次課