zabbix監控(一)概念與部署

1.1 爲什麼要監控

     image.png

1.2 監控什麼東西

監控一切需要監控的東西,只要能夠想到,能夠用命令實現的都能用來監控

1.2.1 監控範疇

image.png

1.3 怎麼來監控

1.3.1 遠程管理服務器

image.png

如果想遠程管理服務器就有遠程管理卡

1.3.2 監控硬件

查看硬件的溫度/風扇轉速,電腦有魯大師,服務器就有ipmitool。

使用ipmitool實現對服務器的命令行遠程管理

yum -y install OpenIPMI ipmitool #->IPMI在物理機可以成功,虛擬機不行

[root@KVM ~]# ipmitool sdr type Temperature

Temp | 01h | ns | 3.1 | Disabled

Temp | 02h | ns | 3.2 | Disabled

Temp | 05h | ns | 10.1 | Disabled

Temp | 06h | ns | 10.2 | Disabled

Ambient Temp | 0Eh | ok | 7.1 | 22 degrees C

Planar Temp | 0Fh | ns | 7.1 | Disabled

IOH THERMTRIP | 5Dh | ns | 7.1 | Disabled

CPU Temp Interf | 76h | ns | 7.1 | Disabled

Temp | 0Ah | ns | 8.1 | Disabled

Temp | 0Bh | ns | 8.1 | Disabled

Temp | 0Ch | ns | 8.1 | Disabled

1.3.3 查看cpu相關

  lscpu、uptime、top、htop vmstat mpstat

   其中htop需要安裝,安裝依賴與epel源。

[znix@clsn ~]$lscpu

Architecture: x86_64

CPU op-mode(s): 32-bit, 64-bit

Byte Order: Little Endian

CPU(s): 1

On-line CPU(s) list: 0

Thread(s) per core: 1

Core(s) per socket: 1

Socket(s): 1

NUMA node(s): 1

Vendor ID: GenuineIntel

CPU family: 6

Model: 85

Model name: Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz

Stepping: 4

CPU MHz: 2494.150

BogoMIPS: 4988.30

Hypervisor vendor: KVM

Virtualization type: full

L1d cache: 32K

L1i cache: 32K

L2 cache: 1024K

L3 cache: 33792K

NUMA node0 CPU(s): 0

1.3.4 內存夠不夠可以用

  free

[znix@clsn ~]$free -h

total used free shared buffers cached

Mem: 996M 867M 128M 712K 145M 450M

-/+ buffers/cache: 271M 725M

Swap: 1.0G 0B 1.0G

1.3.5 磁盤剩多少寫的快不快可以用

  df、dd、iotop

[znix@clsn ~]$df -h

Filesystem Size Used Avail Use% Mounted on

/dev/vda1 40G 24G 15G 62% /

tmpfs 499M 20K 499M 1% /dev/shm

/dev/vdb1 20G 4.4G 15G 24% /data

1.3.6 監控網絡

  iftop nethogs

iftop 監控主機間流量 -i 指定監控網卡

nethogs 監控進程流量

1.4 監控工具總覽

  mrtg 流量監控出圖

  nagios 監控

  cacti  流量監控出圖

  zabbix 監控+出圖

1.5 zabbix介紹

  Zabbix 是由 Alexei Vladishev 開發的一種網絡監視、管理系統,基於 Server-Client 架構。可用於監視各種網絡服務、服務器和網絡機器等狀態。

  使用各種 Database-end 如 MySQL, PostgreSQL, SQLite, Oracle 或 IBM DB2 儲存資料。Server 端基於 C語言、Web 管理端 frontend 則是基於 PHP 所製作的。Zabbix 可以使用多種方式監視。可以只使用 Simple Check 不需要安裝 Client 端,亦可基於 SMTP 或 HTTP ... 各種協定做死活監視。

  在客戶端如 UNIX, Windows 中安裝 Zabbix Agent 之後,可監視 CPU Load、網絡使用狀況、硬盤容量等各種狀態。而就算沒有安裝 Agent 在監視對象中,Zabbix 也可以經由 SNMP、TCP、ICMP、利用 IPMI、SSH、telnet 對目標進行監視。

另外,Zabbix 包含 XMPP 等各種 Item 警示功能。

1.5.1 zabbix的組成


image.png

zabbix官網: https://www.zabbix.com

zabbix 主要由2部分構成 zabbix server和 zabbix agent

zabbix proxy是用來管理其他的agent,作爲代理爲服務端減輕壓力

1.5.2 zabbix監控範疇

  ²  硬件監控 :Zabbix IPMI Interface

  ²  系統監控 :Zabbix Agent Interface

  ²  Java 監控:Zabbix JMX Interface

  ²  網絡設備監控:Zabbix SNMP Interface

  ²  應用服務監控:Zabbix Agent UserParameter

  ²  MySQL 數據庫監控:percona-monitoring-pldlgins

  ²  URL監控:Zabbix Web監控

第2章 安裝zabbix

2.1 環境檢查

[root@m01 ~]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@m01 ~]# uname -r

3.10.0-693.el7.x86_64

[root@m01 ~]# getenforceDisabled

[root@m01 ~]# systemctl status firewalld.service

● firewalld.service - firewalld - dynamic firewall daemon

Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

Active: inactive (dead)

Docs: man:firewalld(1)

2.2 安裝zabbix過程

這裏採用zabbix3.0版本,相對穩定並長期支持,目前官方最新版本3.4

2.2.1 安裝Zabbix服務端(下面腳本中已包括)

1.安裝Zabbix官方源

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

2.安裝zabbix,httpd,php

yum install zabbix-server-mysql zabbix-web-mysql -y

2.2.2 服務端快速安裝腳本

#!/bin/bash

#clsn

#設置解析 注意:網絡條件較好時,可以不用自建yum源

# echo '192.168.16.200 mirrors.aliyuncs.com mirrors.aliyun.com repo.zabbix.com' >> /etc/hosts

#安裝zabbix源、aliyun YUM源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

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

#安裝zabbix服務端和web頁面

yum install -y zabbix-server-mysql zabbix-web-mysql

#安裝啓動 mariadb數據庫

yum install -y mariadb-server

systemctl start mariadb.service

#創建數據庫

mysql -e 'create database zabbix character set utf8 collate utf8_bin;'

mysql -e 'grant all privileges on zabbix.* to zabbix@localhost identified by "zabbix";'

#導入數據(mysql -u用戶 -p密碼 數據庫名稱,如沒有密碼不加-p

zcat /usr/share/doc/zabbix-server-mysql-3.0.13/create.sql.gz|mysql -uzabbix -pzabbix zabbix

#配置zabbixserver連接mysql

sed -i.ori '115a DBPassword=zabbix' /etc/zabbix/zabbix_server.conf

#添加時區(亞洲/上海)

sed -i.ori '18a php_value date.timezone Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf

#解決中文亂碼

yum -y install wqy-microhei-fonts

\cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

#啓動服務

systemctl start zabbix-server

systemctl start httpd

#寫入開機自啓動

chmod +x /etc/rc.d/rc.local

cat >>/etc/rc.d/rc.local<<EOF

systemctl start mariadb.service

systemctl start httpd

systemctl start zabbix-server

EOF

#輸出信息

echo "瀏覽器訪問 http://`hostname -I|awk '{print $1}'`/zabbix"

說明:Apache+php:PHP是Apache的一個模塊,所以不需要單                                      獨啓動

             Nginx+php:php是獨立的一個服務

2.2.3 客戶端快速部署腳本

image.png

#!/bin/bash

#clsn

#設置解析

echo '192.168.16.200 mirrors.aliyuncs.com mirrors.aliyun.com repo.zabbix.com' >> /etc/hosts

#安裝zabbix源、aliyu nYUM源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

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

#安裝zabbix客戶端(指定zabbix服務端)

yum install zabbix-agent -y

sed -i.ori 's#Server=127.0.0.1#Server=172.16.1.62#' /etc/zabbix/zabbix_agentd.conf

systemctl start zabbix-agent.service

#寫入開機自啓動

chmod +x /etc/rc.d/rc.local

cat >>/etc/rc.d/rc.local<<EOF

systemctl start zabbix-agent.service

EOF

2.3 檢測連通性

2.3.1 服務端安裝zabbix-get檢測工具

yum install zabbix-get -y

2.3.2 在服務端進行測試

注意:只能在服務端進行測試(這裏-k後面的值是默認已有值,如沒有的值需要自定義添加)

zabbix_get -s 172.16.1.61 -p 10050 -k "system.cpu.load[all,avg1]"

zabbix_get -s 172.16.1.21 -p 10050 -k "system.cpu.load[all,avg1]"

測試結果

[root@m01 ~]# zabbix_get -s 172.16.1.61 -p 10050 -k "system.cpu.load[all,avg1]"

0.000000

[root@m01 ~]# zabbix_get -s 172.16.1.21 -p 10050 -k "system.cpu.load[all,avg1]"

0.000000

第3章 web界面操作

3.1 zabbix的web安裝

3.1.1 使用瀏覽器訪問

  http://10.0.0.61/zabbix/setup.php


image.png

   在檢測信息時,可查看具體的報錯信息進行不同的解決

 image.png

   選擇mysql數據庫(端口默認0即可),輸入密碼即可

 image.png

   host與port不需要修改,name自定義

image.png 

確認信息,正確點擊下一步

 image.png

   安裝完成、點擊finsh

image.png 

      進入登陸界面  賬號Admin密碼zabbix   注意A大寫

 image.png

小夥伴們可以關注我的微信公衆號:linux運維菜鳥之旅

qrcode_for_gh_5ecc48d3d14a_258.jpg

關注“中國電信天津網廳”公衆號,首次綁定可免費領2G流量,爲你的學習提供流量! 

qrcode_for_gh_d20dccd1c74b_258.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章