zabbix監控部署 與添加主機

zabbix介紹:

  • zabbix([`z?biks])是一個基于WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。
  • zabbix能監視各種網絡參數,保證服務器系統的安全運營;并提供靈活的通知機制以讓系統管理員快速定位/解決存在的各種問題。
  • zabbix由2部分構成,zabbix server與可選組件zabbix agent。
  • zabbix server可以通過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它可以運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平臺上。
  • zabbix agent需要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操作系統有關的內存,CPU等信息的收集。
  • zabbix server可以單獨監視遠程服務器的服務狀態;同時也可以與zabbix agent配合,可以輪詢zabbix agent主動接收監視數據(agent方式),同時還可被動接收zabbix agent發送的數據(trapping方式)。
  • 要想搭建一個Zabbix的工作環境,需要從服務器入手。與服務器通信,管理員需要使用一個Zabbix前端界面,與Zabbix服務器和數據庫進行通信。三個關鍵(界面、服務器和數據庫)可以安裝在同一臺服務器上,但是如果你擁有一個更大更復雜的環境,將它們安裝在不同的主機上也是一個選項。Zabbix服務器能夠直接監控到同一網絡中的設備,如果其他網絡的設備也需要被監控,那還需要一臺Zabbix代理服務器。

主要功能:CPU負荷,內存使用,磁盤使用,網絡狀況,端口監視,日志監視。

官網:https://www.zabbix.com 下載安裝包以及查看官方文檔。

服務搭建:

安裝 Zabbix server 并使用 MySQL 數據庫

yum install zabbix-server-mysql.x86_64   -y

安裝 Zabbix 前端

yum install     zabbix-web-mysql  -y

安裝數據庫mariadb并進行安全初始化:

yum install mariadb-server.x86_64  -y   
systemctl enable mariadb.service 
systemctl start mariadb.service 
mysql_secure_installation

登陸數據庫并在數據庫中創建庫以及用戶并進行授權:

create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'westos';

導入數據,使用 MySQL 來導入 Zabbix server 的初始數據庫 schema 和數據

在這里插入圖片描述
由于該數據較多,導入的過程較長,不能中途打斷。

成功后可進入數據庫查看

mysql -p
use zabbix;
show tables;

在這里插入圖片描述
配置zabbix server 配置文件

/etc/zabbix/zabbix_server.conf116 DBUser=zabbix
#這里的密碼是zabbix用戶的密碼,不是數據庫的登錄密碼
124 DBPassword=westos

啟動 Zabbix server 進程
查看端口開啟沒:
在這里插入圖片描述
httpd服務配置
需要在前端web頁面展示監控結果。需要httpd服務開啟并設置開機自動啟動

/etc/httpd/conf.d/zabbix.confphp_value date.timezone Asia/Shanghai

在這里插入圖片描述

測試zabbix server 是否設置好,在物理機瀏覽器進行測試 http://192.168.13.111/zabbix/setup.php

在這里插入圖片描述
點擊Next step,之后會看到一個頁面,顯示檢查php的結果
繼續往下,輸入密碼,密碼是mysql中的密碼
在這里插入圖片描述
名字隨便來一個把

在這里插入圖片描述
顯示成功安裝的頁面
在這里插入圖片描述

登陸zabbix(默認用戶是Admin,密碼是zabbix)

在這里插入圖片描述

登陸成功后,顯示了以下的界面,點擊右上角的"小人"頭像
在這里插入圖片描述

點擊后選擇language為Chinese(以便我們之后更好的操作),注意這里也可以更改密碼。
在這里插入圖片描述

在這里插入圖片描述

監控的四種添加主機方式:

首先我們要做的是:
配置zabbix agent IP為192.168.13.112

yum install zabbix-agent.x86_64 -y

裝好之后修改配置文件

vim /etc/zabbix/zabbix_agentd.conf98 Server=192.168.13.111        指定server主機,agent主機主動上報數據給server主機
139 ServerActive=192.168.13.111    server主機主動前來agent主機提取數據
150 Hostname=server2         指定本機的主機名稱

啟動服務,并設置服務開機自動啟動

systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service

開啟之后查看10050端口開啟情況:已經正常開啟

netstat -antlp

在這里插入圖片描述
1 . 手動添加:

配置–>主機–>右上角創建主機
在這里插入圖片描述
選好后在填下模板
在這里插入圖片描述
添加完畢后的界面應該是這樣的
在這里插入圖片描述
手動的弊端就在于需要一個一個的去進行添加。當需要進行添加的服務器數量加大的時候,實現存在困難。

2 . 自動發現:

將之前創建的主機刪除,避免其影響之后的結果
在這里插入圖片描述
創建自動發現規則,填寫名稱;ip范圍;更新間隔;檢查等:(Zabbix 客戶端 “system.uname”)選中已啟用
在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

然后查看新的主機是否被發現上線。

在這里插入圖片描述
該過程是已經配置的好的agent主機,需要等待著被server主機按照一定的頻率以及一定的條件(都在規則中進行規定)發現之后才能添加進監控。

3 . 自動注冊:

  • agent可以實現自動注冊,進而服務器對其進行監控。通過這種方式,無需在服務器上進行手動配置便可直接啟動對新host的監控。
  • 當以前未知的active agent要求檢查時,會發生自動注冊。
  • 這樣功能可以非常方便的自動監控新的Cloud節點。一旦在Cloud中有一個新節點,Zabbix將自動啟動host的性能和可用性數據的收集。

在瀏覽器中點擊配置->自動發現,點擊“已啟用”將自動發現禁用(也可以將其打上對勾,選擇底下的禁用)

在配置—>動作—>選擇右上角為自動注冊—>點擊創建動作
在這里插入圖片描述
操作 新的,添加主機;添加到主機群組 linux server;鏈接到模板 template os linux;添加;

在這里插入圖片描述
重新啟動server2主機上的zabbix-agent服務。然后等待server2 主機被自動添加
在這里插入圖片描述

4 . Api
Zabbix API允許你以編程方式檢索和修改Zabbix的配置,并提供對歷史數據的訪問。

(1)它廣泛用于:

  • 創建新的應用程序以使用Zabbix;
  • 將Zabbix與第三方軟件集成;
  • 自動執行常規任務。

主機和主機組

什么是“主機”?

  • 一般來講,Zabbix主機是指你希望監控的那些設備,例如服務器、工作站、交換機等等。
  • 創建主機是使用Zabbix過程中的一個首要任務。例如,如果你想在一臺服務器“X”上監控一些參數,你必須首先創建一個主機稱之為“服務器X”,然后就可以查看添加監控項到這臺“服務器X”上。
  • 主機組是由主機組成的。

大多數API至少包含四種方法: get, create, update 和 delete ,分別是檢索,創建,更新和刪除數據,但是某些API提供一套完全不同的一組方法。

示例:

1 . 驗證:在訪問Zabbix中的任何數據之前,你需要登錄并獲取身份驗證令牌。這可以使用該 user.login 方法完成。

vim zabbix-api.sh
chmod +x zabbix-api 
./zabbix-api 

腳本內容如下圖:

在這里插入圖片描述

curl -s -XPOST -H "Content-Type: application/json-rpc" -d '
{"jsonrpc": "2.0","method": "user.login","params": {"user": "Admin","password": "zabbix"},"id": 1,"auth": null
}' http://192.168.13.111/zabbix/api_jsonrpc.php | python -m json.tool

運行腳本獲得身份驗證令牌:
在這里插入圖片描述

值得注意的是:

  1. 請求的 Content-Type 頭部必須設置為以下值之一: application/json-rpc, application/json 或 application/jsonrequest。

  2. 示例請求對象具有以下屬性:

    jsonrpc - API使用的JSON-RPC協議的版本; Zabbix API實現的JSON-RPC版本是2.0;
    method - 被調用的API方法名;
    params - 將被傳遞給API方法的參數;
    id - 請求的任意標識符;
    auth -用戶認證令牌; 因為我們還沒有一個,它的設置null。

  3. 如果你正確提供了憑據,API返回的響應將包含用戶身份驗證令牌:
    響應對象又包含以下屬性:
    jsonrpc - JSON-RPC協議的版本;
    result - 方法返回的數據;
    id - 相應請求的標識符。

2 . 檢索主機:

現在有一個有效的用戶身份驗證令牌,可以用來訪問Zabbix中的數據。例如,讓我們使用 host.get 方法檢索所有已配置主機的ID,主機名和接口 :

vim zabbix-api      # 修改腳本內容
./zabbix-api 

修改內容如下圖所示:

在這里插入圖片描述

curl -s -XPOST -H "Content-Type: application/json-rpc" -d '
{"jsonrpc": "2.0","method": "host.get","params": {"output": ["hostid","host"],"selectInterfaces": ["interfaceid","ip"]},"id": 2,"auth": "c565ff432984698f987811831128ceca"
}' http://192.168.13.111/zabbix/api_jsonrpc.php | python -m json.tool

執行腳本成功
在這里插入圖片描述

3 . 刪除主機:

使用 host.delete 方法刪除指定的主機。

vim zabbix-api
./zabbix-api

在這里插入圖片描述

curl -s -XPOST -H "Content-Type: application/json-rpc" -d '
{"jsonrpc": "2.0","method": "host.delete","params": ["10266"],"id": 2,"auth": "c565ff432984698f987811831128ceca"
}' http://192.168.13.111/zabbix/api_jsonrpc.php | python -m json.tool

執行腳本刪除
在這里插入圖片描述

4 . 創建主機:

創建一個具有IP接口的“Linux Server”主機,將其添加到主機組中,鏈接一個模板并且把MAC地址設置到主機資產清單里(注意:在實驗開始之前需要將之前做的自動發現和自動注冊取消,否則會報錯,而且在實驗開始之前需要將添加的主機進行刪除,否則無法成功添加):

vim zabbix-api
./zabbix-api 
curl -s -XPOST -H "Content-Type: application/json-rpc" -d '
{"jsonrpc": "2.0","method": "host.create","params": {"host": "server2","interfaces": [{"type": 1,"main": 1,"useip": 1,"ip": "192.168.13.112","dns": "","port": "10050"}],"groups": [{"groupid": "2"}],"templates": [{"templateid": "10001"}]},"id": 2,"auth": "c565ff432984698f987811831128ceca"
}' http://192.168.13.111/zabbix/api_jsonrpc.php | python -m json.tool

運行腳本:
在這里插入圖片描述

在網頁上查看發現server2存在

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/542022.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/542022.shtml
英文地址,請注明出處:http://en.pswp.cn/news/542022.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

線段樹 洛谷 p1531 I hate it(I hate it too)

這里寫鏈接內容 線段樹模板 字符串是一個很詭異的問題。。。。 #include<cstdio> #include<iostream> #include<string> #define q 200000 using namespace std; int a[q5],s[q<<25]; void bu(int o,int l,int r)//建樹 {if(lr){s[o]a[r];} else{int…

打開是什么樣子的圖片_情侶頭像 | 無論是什么樣子的你 我都好喜歡

點擊【情侶圖片大全】- 右上角找到【…】立刻設我為星標/置頂 - 不迷路哦情侶圖片大全“時光真瘋狂&#xff0c;我一路執迷與匆忙”情侶/閨蜜/動漫/閨蜜網名長按圖片保存 點擊圖片放大圖片高清&#xff0c;建議在 W i f i 下瀏覽這個世界是多么神奇我竟然遇見了你無論是什么…

Java File類File [] listFiles()方法(帶示例)

File類File [] listFiles() (File Class File[] listFiles()) This method is available in package java.io.File.listFiles(). 軟件包java.io.File.listFiles()中提供了此方法。 This method is used to return the names of all the files in the form of an array of files…

zabbix監控平臺添加服務(http,nginx,mysql)

1 . 監控httpd服務&#xff1a; 首先確保已經搭建zabbix監控平臺&#xff0c;并且將需要監控的主機已經添加。 對主機server2 上的http服務進行監控&#xff0c;首先確保server2主機安裝了http服務。 使用http在zabbix中自帶監控模版 點擊配置->主機->server2->模…

java為什么要重寫hashCode和equals方法

如果不被重寫&#xff08;原生&#xff09;的hashCode和equals是什么樣的&#xff1f;不被重寫&#xff08;原生&#xff09;的hashCode值是根據內存地址換算出來的一個值。 不被重寫&#xff08;原生&#xff09;的equals方法是嚴格判斷一個對象是否相等的方法&#xff0…

stl中map函數_map :: max_size()函數,以及C ++ STL中的Example

stl中map函數C STL映射:: max_size() (C STL map::max_size() ) It returns the maximum number of elements the container(map) is able to hold but at runtime, the size of the container may be limited to a value smaller than specified by max_size() by the amount…

arduino 藍牙示例_Arduino簡單實例之八_藍牙模塊

1) 說明&#xff1a;藍牙模塊用于和手機或其它帶藍牙的設備通訊。藍牙設備分為主從兩種模式&#xff0c;作為主設備時&#xff0c;它查找和連接其它設備&#xff1b;作為從設備時只能被只它設備連接&#xff1b;通訊模式分透明傳輸和AT命令模式。最好購買主從一體的藍牙模…

zabbix使用JMX監控tomcat

JMX 全稱是Java Management Extensions,即Java管理擴展。Java程序會開放一些端口&#xff0c;用來獲取運行狀況。 從Zabbix2.0開始&#xff0c;內置了監控JMX的功能,叫做"Zabbix Java Gateway ",在Zabbix Serve上會啟動名為"Zabbix Java Gateway "的進程&…

自定義控件添加屬性_|AutoCAD LT 2019 Mac自定義功能區的方法

AutoCAD LT是一款非常好用的CAD三維設計繪圖軟件&#xff0c;最新版本2019擁有改進的桌面、新應用實現跨設備工作流&#xff0c;以及DWG比較等新功能&#xff0c;并且AutoCAD LT 2019 Mac可以根據你的需要和工作習慣來自定義功能區&#xff0c;下面為大家帶來自定義功能區的詳細…

操作系統中的文件系統和訪問方法

文件 (File) A file is basically a sequence of bytes organized into blocks that are understandable by any machines. In other words, the collection of related information that is stored in a secondary storage device is also called a file. The file is a colle…

centos7鏡像加速_docker 鏡像加速CentOS7詳細介紹

前言在Docker Hub官網上注冊帳號&#xff0c;即可下載使用倉庫里的全部的docker鏡像。而因為網絡原因&#xff0c;國內的開發者沒辦法流暢的下載鏡像&#xff0c;經常會出現下載中斷的錯誤。解決方法就是使用國內的容器Hub加速服務&#xff0c;本質就是更改pull優先級較高的服務…

java 根據類名示例化類_Java LocalDateTime類| atOffset()方法與示例

java 根據類名示例化類LocalDateTime類atOffset()方法 (LocalDateTime Class atOffset() method) atOffset() method is available in java.time package. atOffset()方法在java.time包中可用。 atOffset() method is used to create an OffsetDateTime to merge this LocalDat…

Zabbix監控——proxy 分布式監控配置

proxy分布式監控 Zabbix proxy是在大規模分布式監控場景中&#xff0c;采用的一種用以分擔server端壓力的分層結構&#xff0c; proxy可以代替zabbix server檢索客戶端的數據&#xff0c;然后把數據匯報給zabbix server&#xff0c;極大的減輕了server的負載壓力&#xff0c;使…

AutoCAD_acadiso.dwt卡死

2019獨角獸企業重金招聘Python工程師標準>>> 問題描述&#xff1a;每次執行到打開acadiso.dwt就卡死&#xff0c;且電腦顯示有網&#xff0c;確打不開網頁 可能原因&#xff1a;可能是因為AotuCAD是盜版的 解決辦法&#xff1a; 1.在任務管理器中把WSCommCntr.exe進…

else 策略模式去掉if_java – 用狀態/策略模式替換if/else邏輯

我認為你應該使用GoF模式Chain of responsibility.你應該引入兩個接口&#xff1a;1)你將檢查正確條件的條件,例如“如果zip文件不存在”并返回布爾結果 – 如果條件滿足則返回“true”,否則“else”,2)執行策略,它將運行分配有條件的動作,例如&#xff1a; “從指定的URL下載它…

docker簡介與搭建

1 . 對docker的理解&#xff1a; Docker 是一個開源的應用容器引擎&#xff0c;讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中&#xff0c;然后發布到任何流行的 Linux或Windows 機器上&#xff0c;也可以實現虛擬化。容器是完全使用沙箱機制&#xff0c;相互之間…

Java BigInteger類| toByteArray()方法與示例

BigInteger類testBit()方法 (BigInteger Class testBit() method) testBit() method is available in java.math package. testBit()方法在java.math包中可用。 testBit() method is used to convert this BigInteger to a byte [] that holds 2s complement denotation of thi…

007_Web to lead

轉載于:https://www.cnblogs.com/bandariFang/p/6229491.html

設置header_Nginx的這些安全設置,你都知道嗎?

Nginx 是最流行的 Web 服務器&#xff0c;可以只占用 2.5 MB 的內存&#xff0c;卻可以輕松處理 1w 的 http 請求。做為網站的入口&#xff0c;Nginx 的安全設置重要性不言而喻。下面帶你一起去認識一下這些安全配置吧&#xff01;nginx.conf是 Nginx 最主要的配置文件&#xf…

動態路由協議_動態路由協議的類別

動態路由協議Dynamic routing protocols have been divided into 2 categories i.e Distance vector protocols and Link state protocols. Both of these protocols are being explained in detail in this tutorial. 動態路由協議分為距離矢量協議和鏈路狀態協議兩大類 。 本…