zabbix 3.0.3 學習筆記

來源:互聯網
上載者:User

標籤:identified   shanghai   create   database   character   

一.安裝zabbix及解決圖表方塊字

1.安裝zabbix(配置好相關yum源,解決包依賴問題,參考官方文檔)

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


2.更換PHP的時區

vim /etc/php.ini

data.timezone = "Asia/Shanghai"


3.配置mysql,解決編碼問題

vim /etc/my.cnf

character-set-server=utf8

mysql -uroot -p<password>

mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;


cd /usr/share/doc/zabbix-server-mysql-3.0.3/

zcat create.sql.gz | mysql -uroot zabbix


vi /etc/zabbix/zabbix_server.conf

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix


4.其它配置

關閉sellinx

firewall-cmd --add-service=http

firewall-cmd --add-service=http --permanent


5.解決中文語言狀態預覽方塊字

/usr/share/zabbix/fonts (linux下zabbix字型存路徑 )到windows下載字型到此目錄字型的TTF尾碼改為小寫

/usr/share/zabbix/include/defines.inc.php          #修改字型的設定檔

define(‘ZBX_GRAPH_FONT_NAME‘,           ‘SIMKAI‘); // font file name


二.添加被監控主機

1.安裝用戶端

yum install zabbix-agent.x86_64

2.配置用戶端

/etc/zabbix/zabbix_agentd.conf

Server=192.168.178.134

ServerActive=192.168.178.134

Hostname=centos7 #和伺服器主機名稱保持一致


3.伺服器配置

配置--主機--建立主機

650) this.width=650;" src="http://s1.51cto.com/images/201607/684e648527d6d49bec05279732ceb0a52861d6.png" width="1200" height="1035" alt="684e648527d6d49bec05279732ceb0a52861d6.p" />



三.定義監控項,自訂key

1.在主機上建立監控項

配置--主機--監控項--建立監控項

650) this.width=650;" src="http://s1.51cto.com/images/201607/d867a1f35bd9a29b0ab71968ad5439e1287425.png" width="752" height="966" alt="d867a1f35bd9a29b0ab71968ad5439e1287425.p" />

2.key的使用

proc.num[<name>,<user>,<state>,<cmdline>]

proc.num[,,,] # name,user,state為預設值

proc.num  # 查看所有的裡程,用戶端已經安裝了代理,代理會自動的監測系統中的很多資訊

3.安裝zabbix-get擷取用戶端資料

yum install zabbix-get -y  # 需要配置好yum源

4.zabbix_get的使用

zabbix_get -s 被監測伺服器位址 -k 監測的key

zabbix_get -s 192.168.178.132 -k proc.num[,,,]

zabbix_get -s 192.168.178.132 -k proc.num[,zabbix,] # 四個,號後面不使用的,,可以不寫,前面的,號不能忽略

zabbix_get -s 192.168.178.132 -k proc.num[,,,pro] # pro為第四個值(cmdline),匹配關鍵字含有pro的進程

cmdline-->寫上一個關鍵字,比如寫pro,那麼在ps aux裡面command部分裡面出現pro的進程都匹配

5.在伺服器上建立主機圖表

配置---主機---建立圖形

650) this.width=650;" src="http://s1.51cto.com/images/201607/f8ba7d0723c9a832cfd25400de031e3f55b9f1.jpg" width="1091" height="613" alt="f8ba7d0723c9a832cfd25400de031e3f55b9f1.j" />

--------------------------------------------------------------------------------------------------------------------------------------------------

測試多進程監控指令碼

#!/bin/bash

while :

do

 echo 1 > /dev/null

done

--------------------------------------------------

#!/bin/bash

if [ $# -ne 1]; then

      echo ‘必須跟一個數字‘

      exit 1

fi

echo "終止測試,請連續按ctrl+c"

trap ‘killall -9 sh &> /dev/null ; rm -rf /tmp/aa*.sh‘ INT


for i in `seq 1 $1`

do 

 cp /root/aa.sh /tmp/aa${i}.sh 

  sh /tmp/aa${i}.sh &

done

--------------------------------------------------------------------------------------------------------------------------------------------------

6.自訂KEY

在用戶端進行設定

 /etc/zabbix/zabbix_agentd.conf 

Include=/etc/zabbix/zabbix_agentd.d/ # 在此目錄寫自訂指令碼

文法: UserParameter=key的名稱,命令

例子:UserParameter=num-of,ps aux --no-header | wc -l

zabbix_get -s 192.168.178.132 -k num-of # 在伺服器上執行觸發用戶端執行num-of的命令或指令碼並將執行的結果回傳給伺服器

文法:UserParameter=key的名稱[*],命令 $1

例子:UserParameter=pro[*],echo $1 

zabbix_get -s 192.168.178.132 -k pro[1]


配置--主機--監控項--建立監控項

自訂的索引值在選擇按鈕列表是找不到索引值的,需要手工錄入

650) this.width=650;" src="http://s1.51cto.com/images/201607/199425496da7de36547196e181c0faa87c5135.jpg" width="715" height="806" alt="199425496da7de36547196e181c0faa87c5135.j" />


四.觸發器的使用及警示

1.觸發器的建立,針對某一個監控項

配置--主機--建立觸發器

僅僅建立觸發還不夠,必須建立一個動作,當滿足觸發器的條件的話,然後要執行什麼操作

650) this.width=650;" src="http://s1.51cto.com/images/201607/774322c42289f6b7705051ee00690cfdba2dd1.png" width="1200" height="703" alt="774322c42289f6b7705051ee00690cfdba2dd1.p" />


2.動態建立

配置---動作--事件來源[觸發器]--建立動作

建立了一個動作--->當觸發器觸發的時候,則把資訊發送給指定的人

當centos7.1上進程超過100的時則觸發了這個條件,觸發了動作會產生一些資訊並且將這些資訊發送給指定的人。

650) this.width=650;" src="http://s1.51cto.com/images/201607/64a7f5b417f06e6f576811582d16d0429385cb.png" width="965" height="482" alt="64a7f5b417f06e6f576811582d16d0429385cb.p" />


3.使用者管理

管理--使用者

決定admin收到資訊之後要執行的操作,決定使用什麼方式警示:

a.郵件

決定admin這個使用者以什麼郵件地址作為寄件者

b.指令碼

650) this.width=650;" src="http://s1.51cto.com/images/201607/f337aec5916eec17996737618984fcf608f3eb.jpg" width="1020" height="404" alt="f337aec5916eec17996737618984fcf608f3eb.j" />


4.媒介類型的建立與修改

管理--警示媒介類型--建立媒介類型

650) this.width=650;" src="http://s1.51cto.com/images/201607/c2ba9d99815bad6835791716d64a78110d7eeb.jpg" width="805" height="576" alt="c2ba9d99815bad6835791716d64a78110d7eeb.j" />

5.警報 (企業公眾號)

配置一個觸發器同,當cpu超過80%的時候就開始警示

/etc/zabbix/zabbix_server.conf

AlertScriptsPath=/usr/lib/zabbix/alertscripts # 將指令碼放至此目錄

/usr/lib/zabbix/alertscripts/WeiXin-Private-API/config.php # 修改此檔案

/usr/lib/zabbix/alertscripts/WeiXin-Private-API/test.php 

$testFakeId = "$argv[1]"; # 發送給指定的使用者

$msg="$argv[3]"; # 發送的資訊內容

./weixin "owZmQwSvaFm1RmaYvmAdhoaemoDU" ‘‘ ‘hello lincx‘ # 測試訊息發送

650) this.width=650;" src="http://s1.51cto.com/images/201607/15aa58b899cc159668f4072d07e158a464c59e.jpg" width="998" height="795" alt="15aa58b899cc159668f4072d07e158a464c59e.j" />


五.其它設定

1.應用集的定義

把相關的監控項定義一個應用集,對監控項進行分類

配置--主機--應用集--建立應用集


2.主機群組定義

基於伺服器進行分類,對類型相同的伺服器進行分組


3.模板的建立(應用集、監控項、觸發器 、圖形、彙總圖形、自動探索、Web監測,元素的集合被主機引用)


4.彙總圖形的使用(基於圖形)


5.投影片的使用(每隔一時間內自動切換多個彙總圖形)


6.網路拓撲圖

插入背景圖(管理--一般--圖片--建立圖片)用於拓撲區分地理位置


7.宏定義

{$變數名} # 一般使用大寫字母,全域性引用

全域性的設定

主機分級的變數

管理--一般--宏--添加--更新

監控項的名稱、索引值的參數可以引用自訂的宏xx[,{$AA},]

網路拓撲圖不能引用這種變數,使用的是內建的變數例如{HOST,NAME}

zabbix有很多內建的宏(查詢相關資料)

配置--主機--建立主機--宏定義(只能用於該主機,其它主機不能使用該主機自訂的宏)

650) this.width=650;" src="http://s1.51cto.com/images/201607/44411d557d4ffcf15856698589dda8ae8aee2c.jpg" width="937" height="469" alt="44411d557d4ffcf15856698589dda8ae8aee2c.j" />


七.自動化

1.網路發現:zabbix伺服器主動掃描環境中的主機,滿足條件的話,自動的添加過來

使用第三方軟體

puppet

saltstack

配置--自動探索--建立自動探索

650) this.width=650;" src="http://s1.51cto.com/images/201607/493782f10f5f9aa985c63518a0a4a44e4326f1.jpg" width="698" height="648" alt="493782f10f5f9aa985c63518a0a4a44e4326f1.j" />

2.自動探索動作的建立

發現主機後在哪個主機群組裡進行添加主機、使用哪個模板等的操作

650) this.width=650;" src="http://s1.51cto.com/images/201607/f47425b0261dab5889a7652a72ea4bdb4a75dd.png" width="1200" height="853" alt="f47425b0261dab5889a7652a72ea4bdb4a75dd.p" />

2.1.配置--動作--事件來源[自動探索]--建立動作

650) this.width=650;" src="http://s1.51cto.com/images/201607/132838f8429a9e5fdef74142bf06c231cd04cb.jpg" width="1184" height="880" alt="132838f8429a9e5fdef74142bf06c231cd04cb.j" />

3.自動註冊:zabbix server不主動,而是用戶端主動去向zabbix server發送請求,要求註冊

伺服器需要設定一個動作,指定哪些用戶端能加進來

配置--動作--事件來源[自動註冊]--建立動作

/etc/zabbix/zabbix_agentd.conf

HostMetadata=xx # xx用戶端與服務端匹配的字串

650) this.width=650;" src="http://s1.51cto.com/images/201607/516a1bd1146e5d95111288c4e3171b4497cbbc.png" width="1200" height="832" alt="516a1bd1146e5d95111288c4e3171b4497cbbc.p" />

4.低層級發現(low-level discovery):

可以讓其自動的發現用戶端要監測哪些東西

比如監測分區不同的機器的分區肯定是不一樣的

vfs.fs.size[/boot,used]

vfs.fs.size[/,used]

不同機器不同分區需要逐個去設定比較繁瑣,可以讓zabbix自動的去發現用戶端的分區情況,然後根據實際情況自動的定義監控項

zabbix_get -s 192.168.178.132 -k vfs.fs.discovery # 動態擷取被監控機器的分區類型

{#FSNAME}--->  掛載點

{#FSTYPE}--->  檔案系統類型

低層級發現是基於模板的,在這個模板裡不需要定義具體的監控項,需要定義的是原型,監控項原型、圖表原型

當某個主機使用這個模板的時候,會把模板裡面的監控項原型轉變為監控項、圖表原型轉變為圖表


4.1.配置--模板--建立模板--自動探索--建立發現規則

通過vfs.fs.discovery可以擷取用戶端所有的檔案系統資訊

650) this.width=650;" src="http://s1.51cto.com/images/201607/24ec3b5300fdd9c4fc713281f6dbaf3deb5e50.jpg" width="1200" height="633" alt="24ec3b5300fdd9c4fc713281f6dbaf3deb5e50.j" />

4.2.配置--模板--自動探索--監控項原型--建立監控項原型

650) this.width=650;" src="http://s1.51cto.com/images/201607/c1b15e2860b713480d2178ec6c0a004630ba0c.png" width="952" height="958" alt="c1b15e2860b713480d2178ec6c0a004630ba0c.p" />

4.3.配置--模板--自動探索--圖形項原型--建立圖形原型

650) this.width=650;" src="http://s1.51cto.com/images/201607/1679f6733868dd76b782534d102a671f891504.jpg" width="1079" height="608" alt="1679f6733868dd76b782534d102a671f891504.j" />


八.分布式

1.安裝zabbix-proxy

配置好相關yum源

yum install zabbix-proxy zabbix-proxy-mysql mariadb-server -y

2.配置mysql,解決編碼問題

vim /etc/my.cnf

character-set-server=utf8


mysql -uroot -p<password>

mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;


cd /usr/share/doc/zabbix-proxy-mysql-3.0.3/

shell> mysql -uzabbix -p<password> zabbix < images.sql

shell> mysql -uzabbix -p<password> zabbix < data.sql


3.Proxy 伺服器設定檔相關修改

/etc/zabbix/zabbix_proxy.conf

Server=192.168.178.134 # zabbix伺服器的IP

DBHost=localhost

DBPassword=zabbix

Hostname=Zabbix proxy

SourceIP=192.168.178.132 # Proxy 伺服器自己的IP


重啟動服務

systemctl restart zabbix_proxy

4.代理的配置

管理---代理---建立代理

清除日誌

cat /dev/nul > /var/log/zabbix/zabbix_agentd.log

650) this.width=650;" src="http://s1.51cto.com/images/201607/38095658978eac5a955974d43c2893c0c1abcd.jpg" width="900" height="518" alt="38095658978eac5a955974d43c2893c0c1abcd.j" />


本文出自 “忘記寒暑” 部落格,請務必保留此出處http://speedy.blog.51cto.com/389078/1826098

zabbix 3.0.3 學習筆記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.