基於jmx的flume的指標採集展示

2021-10-06 14:43:39 字數 1300 閱讀 9085

最近參與乙個專案,需求:採集flume指標並通過視覺化頁面顯示。flume可以配置jmx埠,通過jmxtrant採集指標,並寫入influxdb,進而通過grafana進行展示。所以本文對這一部分做乙個簡單介紹。

1.啟用jmx步驟:在flume的啟動指令碼中加入如下內容(同理:其他服務開啟jmx埠,也可通過如下方式進行配置),然後啟動agent:

-dcom.sun.management.jmxremote.port=19999 -dcom.sun.management.jmxremote.authenticate=false -dcom.sun.management.jmxremote.ssl=false
rpm -ihv influxdb-1.7.6-1.x86_64.rpm

service influxdb start

登入influxdb:influx

creat database flume_db;

3.部署安裝jmxtrans:jmxtrans的部署建議用最新版本271/272,(270版本的jmx對於flume的支援不是很友好,原因是其中的influxdbfactory類不全)

rpm -ihv jmxtrans-271.rpm

啟動該版本jmxtrans方式:

service jmxtrans start
],

"obj" : "flume:type=channel",

"attr" : [ "channelcapacity" ],

"resultalias":"channelcounter"

}] } ]

}

將flume_host1.json放入/var/lib/jmstrans/目錄下,重啟jmxtrans即可。其中幾個引數說明如下

(1)flume_jmxport指元件開啟jmx的埠;flume_host指啟動元件的主機名

(2)本文採用influxdb儲存指標資訊。influxdb_host指安裝influxdb服務的主機;influxdb_port指influxdb的埠,預設8086

(3)其中type/obj/attr等內容資訊。可以通過jconsole方式遠端連線到對應機器進行檢視。

4.通過influxdb即可檢視到相關定義的相關指標內容:

influx

show databases;

use flume_db;

show measurements;

JMX讀書筆記) JMX的架構

jmx採用的是3層的架構模型 分配層 distributed layer 這一層主要包含了能jmxagent和外部世界進行通訊的元件。有兩種型別的互動,一種稱為adaptor,一種稱為connector.層 agent layer 這一層主要包含了agent和mbeanserver,前者為了方便管理...

JMX的查詢機制

之前查資料做的記錄,放上來,興許某天用的著 jmx發現和查詢服務 乙個jmx agent 通常包括了乙個 mbean server 和若干個協議聯結器和介面卡,也稱作連線伺服器,因為這些東西負責為遠端客戶端提供獲取和操作 mbean server 中的mbean 的介面。但是,如果乙個 mbeans...

JMX的使用步驟

jmx的運用場景 客戶端呼叫伺服器端的方法。服務端做服務。從這一點來講 jmx可用於分布式專案。將服務分布在不同的伺服器上,形成分布式專案。先從小demo入手,理解jmx是怎麼玩的。1.準備好材料 1.需要乙個mbean介面,並且實現這個介面。2.乙個服務端,用來將介面註冊進去。3.乙個客戶端,用來...