1. 程式人生 > >19.1 Linux監控平臺介紹 19.2 zabbix監控介紹 19.3/19.4/19.6 安裝zabbix 19.5 忘記Admin密碼如何做

19.1 Linux監控平臺介紹 19.2 zabbix監控介紹 19.3/19.4/19.6 安裝zabbix 19.5 忘記Admin密碼如何做

gre users gzip ping epo type 一行 ntp dmi

linux監控平臺介紹

常見開源監控軟件:cacti,nagios,zabbix,smokeping,open-falcon等等

cacti,smokeping偏向於基礎監控,成圖非常漂亮

cacti,nagios,zabbix服務端監控中心,需要php環境支持,其中zabbix和cacti需要MySQL作為數據儲存,

agios不用存儲歷史數據,他註重服務或監控項的狀態

zabbix會獲取服務或者監控項目的數據,會把數據記錄到數據庫中,從而可以成圖

open-falcon是小米公司開發的,開源後收到諸多大公司和運維工程師的追捧,適合大企業,滴滴,360,新郎微博,京東等大公司,這款監控軟件,值得研究

一、zabbix監控介紹

C/S架構,基於C++開發,監控中心需要PHP環境,支持web界面配置和管理

一臺server節點可以支持上萬臺客戶端,瓶頸在於采集數據的量的多少

zabbix更新速度還是較快的,說明他用戶量大

zabbix包括了5個組件

zabbix-server監控中心:接受客戶端上報信息,負責配置,統計,操作數據

數據存儲:存放數據,比如MySQL

web界面:也叫web UI ,在web界面下操作配置是zabbix簡單易用的主要原因

zabbix-proxy :可選組件,它可以代替zabbix-server的功能,減輕server的壓力

zabbix-agent:客戶端軟件,負責采集各個監控服務或項目的數據,並上報

zabbix監控流程圖

技術分享圖片

二、安裝zabbix,

準備兩臺主機:

zabbix服務端:192.168.100.101

zabbix客戶端:192.168.100.100

我們epl的yum倉庫裏存放的zabbix的版本較低,所以我們先搭建一個zabbix的yum倉庫,服務端和客戶端上都要做這個步驟。

[root@zhuji ~]# wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

[root@zhuji ~]# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm

警告:zabbix-release-3.2-1.el7.noarch.rpm: 頭V4 RSA/SHA512 Signature, 密鑰 ID a14fe591: NOKEY

準備中... ################################# [100%]

正在升級/安裝...

1:zabbix-release-3.2-1.el7 ################################# [100%]

[root@zhuji ~]# ll /etc/yum.repos.d/zabbix.repo

-rw-r--r-- 1 root root 410 9月 14 2016 /etc/yum.repos.d/zabbix.repo

二、yum安裝zabbix

服務端:

[root@zhuji ~]# yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql

zabbix-agent:zabbix客戶端軟件

zabbix-get:服務端的一個應用工具,通過命令行的形式,獲得客戶端的某些監控項目數據

zabbix-server-mysql:一些和mysql相關的文件

zabbix-web:web界面

zabbix-web-mysql:web還要和mysql打交道,一些MySQL和web的文件

server:

[root@congji ~]# yum install -y zabbix-agent

客戶端只需要安裝zabbix-agent就可以了

兩臺機子如果MySQL沒有安裝,參照之前lamp章節的安裝

刪除筆記修改筆記

三、兩臺機子都要啟動MySQL.修改MySQL的配置文件並重新啟動MySQL。

[root@congji ~]# vim /etc/my.cnf

character_set_server = utf8 (設置字符級,不設置的話,web界面設置中文可能會出現亂碼)

[root@congji ~]# systemctl restart mysql

四、在服務端的MySQL上創建zabbix的庫和用戶,用戶是需要php代碼連接mysql。

[root@zhuji mysql]# mysql -uroot -paminglinux

mysql> create database zabbix character set utf8;

mysql> grant all on zabbix.* to ‘zabbix‘@‘127.0.0.1‘ identified by ‘aming-zabbix‘;

五、導入一些原始的數據,沒有這些數據,zabbix沒辦法工作。

[root@zhuji mysql]# cd /usr/share/doc/zabbix-server-mysql-***

[root@zhuji zabbix-server-mysql-3.2.11]# ls

AUTHORS ChangeLog COPYING create.sql.gz NEWS README

[root@zhuji zabbix-server-mysql-3.2.11]# gzip -d create.sql.gz (解壓gz文件)

[root@zhuji zabbix-server-mysql-3.2.11]# ls

AUTHORS ChangeLog COPYING create.sql NEWS README

[root@zhuji zabbix-server-mysql-3.2.11]# mysql -uroot -paminglinux zabbix < create.sql

六、啟動zabbix和httpd服務,再啟動httpd前,先看一下有沒有啟動nginx服務

[root@zhuji ~]# ps aux |grep nginx

root 3590 0.0 0.0 112680 976 pts/0 R+ 18:04 0:00 grep --color=auto nginx

[root@zhuji ~]# systemctl start zabbix-server

[root@zhuji ~]# systemctl start httpd

[root@zhuji ~]# systemctl enable httpd

[root@zhuji ~]# systemctl enable zabbix-server

七、我們啟動了zabbix,用ps發現進程在,但是用natstat查看,沒有zabbix的端口,是因為沒有連接MySQL,需要配置zabbix的配置文件

[root@zhuji ~]# ll /var/log/zabbix/zabbix_server.log (這是zabbix的日誌文件)

# DBHost=localhost

DBHost=127.0.0.1 (搜索DBHost,指定數據庫所在機器的IP,不是創建用戶時的來源ip)

默認DBname=zabbix (數據庫名字)

DBuser=zabbix (登錄數據庫的用戶名)

DBPassword=zabbix-aming (登錄數據庫的密碼)

[root@zhuji ~]# systemctl restart zabbix-server

[root@zhuji ~]# netstat -lntp |grep zabbix (默認監聽10051)

tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 3713/zabbix_server

tcp6 0 0 :::10051 :::* LISTEN 3713/zabbix_server

八、配置web界面,直接訪問服務端主機名加zabbix。例如(192.168.52.101/zabbix)

技術分享圖片

(一)點next step

技術分享圖片

(二)我們發現只有這一行是錯誤的

PHP option "date.timezone" unknown Fail

技術分享圖片

(三)改正時間錯誤,修改phh配置文件,重啟apache,刷新界面

[root@zhuji ~]# vim /etc/php.ini

date.timezone = Asia/Shanghai

[root@zhuji ~]# systemctl restart httpd

(四)繼續web界面的下一步(也就是MySQL的界面了)

port端口號:3360

密碼寫在數據庫中創建用戶的密碼。

如果現實sock文件不存在,則把用戶改成127.0.0.1

技術分享圖片

刪除筆記修改筆記

(五)定義zabbix server的界面

自定義Name

技術分享圖片

(六)web界面完成

技術分享圖片

八、登錄zabbix

(一)默認用戶為admin

默認登陸密碼為zabbix

技術分享圖片

(二)更改密碼

administration下有個user,找到admin用戶,點進去

技術分享圖片

有個change passwd,點進去修改為自己想要的密碼,順便更改語言,然後update

技術分享圖片

刷新界面,就是中文了

技術分享圖片

編輯客戶端zabbix的配置文件

[root@congji ~]# vim /etc/zabbix/zabbix_agentd.conf (主動被動一起開啟會比較好)

Server=192.168.52.101 (被動模式):等待服務端來取數據

ServerActive=192.168.52.101 (主動模式):主動上報數據

Hostname=congji (不能隨便寫,要寫能夠識別的主機名)

啟動服務查看監控的端口

[root@congji ~]# systemctl start zabbix-agent

[root@congji ~]# netstat -lntp |grep zabbix

tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 3304/zabbix_agentd

tcp6 0 0 :::10050 :::* LISTEN 3304/zabbix_agentd

三、解決忘記admin密碼

忘記admin密碼如何做

在MySQL數據庫中使用命令行修改:

[root@zhuji ~]# mysql -uroot -p

mysql> use zabbix; (進入到zabbix數據庫中)

可以show tabls; 看一下裏面的表,都是和zabbix有關的,我們要用到users表更改密碼

mysql> desc users; (我們可以看一下uses表裏的,我們其實就是要更改passwd)

+----------------+---------------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+----------------+---------------------+------+-----+---------+-------+

| userid | bigint(20) unsigned | NO | PRI | NULL | |

| alias | varchar(100) | NO | UNI | | |

| name | varchar(100) | NO | | | |

| surname | varchar(100) | NO | | | |

| passwd | char(32) | NO | | | |

| url | varchar(255) | NO | | | |

| autologin | int(11) | NO | | 0 | |

| autologout | int(11) | NO | | 900 | |

| lang | varchar(5) | NO | | en_GB | |

| refresh | int(11) | NO | | 30 | |

| type | int(11) | NO | | 1 | |

| theme | varchar(128) | NO | | default | |

| attempt_failed | int(11) | NO | | 0 | |

| attempt_ip | varchar(39) | NO | | | |

| attempt_clock | int(11) | NO | | 0 | |

| rows_per_page | int(11) | NO | | 50 | |

+----------------+---------------------+------+-----+---------+-------+

16 rows in set (0.01 sec)

mysql> update users set passwd=md5(‘litongyao1‘) where alias=‘Admin‘; (用md5的方式加密)

檢測用litongyao1登錄

19.1 Linux監控平臺介紹 19.2 zabbix監控介紹 19.3/19.4/19.6 安裝zabbix 19.5 忘記Admin密碼如何做