運維監控-Open-Falcon安裝Agent實戰篇


              運維監控-Open-Falcon安裝Agent實戰篇

                                       作者:尹正傑 

版權聲明:原創作品,謝絕轉載!否則將追究法律責任。

 

  本文參考鏈接來自:http://book.open-falcon.org/zh/install_from_src/agent.html 

 

一.介紹

  agent用於采集機器負載監控指標,比如cpu.idle、load.1min、disk.io.util等等,每隔60秒push給Transfer。agent與Transfer建立了長連接,數據發送速度比較快,agent提供了一個http接口/v1/push用於接收用戶手工push的一些數據,然后通過長連接迅速轉發給Transfer。

 

二.部署

  agent需要部署到所有要被監控的機器上,比如公司有10萬台機器,那就要部署10萬個agent。agent本身資源消耗很少,不用擔心。

1>.部署環境

 

2>.拷貝agent工具包到需要安裝的服務器上

[root@node101 ~]# cd /yinzhengjie/open-falcon/workspace/open-falcon
[root@node101 open-falcon]# 
[root@node101 open-falcon]# ll
total 3896
drwxrwxr-x. 7  501  501      72 Aug 15  2017 agent
drwxrwxr-x. 5  501  501      43 Aug 15  2017 aggregator
drwxrwxr-x. 5  501  501      43 Aug 15  2017 alarm
drwxrwxr-x. 6  501  501      55 Aug 15  2017 api
drwxr-xr-x. 3 root root      18 Dec 11 17:33 data
drwxrwxr-x. 5  501  501      43 Aug 15  2017 gateway
drwxrwxr-x. 6  501  501      55 Aug 15  2017 graph
drwxrwxr-x. 5  501  501      43 Aug 15  2017 hbs
drwxrwxr-x. 5  501  501      43 Aug 15  2017 judge
drwxrwxr-x. 5  501  501      43 Aug 15  2017 nodata
-rwxrwxr-x. 1  501  501 3987469 Aug 15  2017 open-falcon
lrwxrwxrwx. 1  501  501      16 Aug 15  2017 plugins -> ./agent/plugins/
lrwxrwxrwx. 1  501  501      15 Aug 15  2017 public -> ./agent/public/
drwxrwxr-x. 5  501  501      43 Aug 15  2017 transfer
[root@node101 open-falcon]# 
[root@node101 ~]# cd /yinzhengjie/open-falcon/workspace/open-falcon            #進入到“node101.yinzhengjie.org.cn”的open-Falcon安裝目錄
[root@node101 open-falcon]# scp -r agent/ root@node102.yinzhengjie.org.cn:~
The authenticity of host 'node102.yinzhengjie.org.cn (172.30.1.102)' can't be established.
ECDSA key fingerprint is SHA256:aGk7Wv77uRVAElcihCH0Zu0sAPp6qEs2sSA1Zsj3o7g.
ECDSA key fingerprint is MD5:2b:74:b8:ad:f8:92:78:04:38:90:f1:28:e7:70:68:fb.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node102.yinzhengjie.org.cn,172.30.1.102' (ECDSA) to the list of known hosts.
root@node102.yinzhengjie.org.cn's password: 
agent.log                                                                                                                                           100%   41KB 520.6KB/s   00:00    
scheduler.go                                                                                                                                        100% 2479   156.5KB/s   00:00    
reader.go                                                                                                                                           100% 1011   298.4KB/s   00:00    
plugins.go                                                                                                                                          100%  970    61.9KB/s   00:00    
odometer.js                                                                                                                                         100% 7564   192.3KB/s   00:00    
jquery.dataTables.min.js                                                                                                                            100%   69KB   2.9MB/s   00:00    
jquery.js                                                                                                                                           100%   93KB   2.3MB/s   00:00    
jquery-ui.min.js                                                                                                                                    100%  223KB  17.5MB/s   00:00    
dashboard.js                                                                                                                                        100% 7975     2.4MB/s   00:00    
bootstrap.js                                                                                                                                        100%   47KB   8.2MB/s   00:00    
base.js                                                                                                                                             100% 2220   934.5KB/s   00:00    
code.png                                                                                                                                            100%  540    37.9KB/s   00:00    
favicon.ico                                                                                                                                         100%   97KB  18.5MB/s   00:00    
font-awesome.min.css                                                                                                                                100%   22KB   1.0MB/s   00:00    
font-awesome-ie7.min.css                                                                                                                            100%   37KB  10.5MB/s   00:00    
font-awesome-ie7.css                                                                                                                                100%   40KB   5.7MB/s   00:00    
font-awesome.css                                                                                                                                    100%   27KB  12.8MB/s   00:00    
fontawesome-webfont.eot                                                                                                                             100%   37KB 969.0KB/s   00:00    
FontAwesome.otf                                                                                                                                     100%   60KB  12.9MB/s   00:00    
fontawesome-webfont.woff                                                                                                                            100%   43KB  11.5MB/s   00:00    
fontawesome-webfont.svg                                                                                                                             100%  193KB  13.5MB/s   00:00    
fontawesome-webfont.ttf                                                                                                                             100%   77KB   6.9MB/s   00:00    
odometer.css                                                                                                                                        100% 3849     1.8MB/s   00:00    
dashboard.css                                                                                                                                       100% 5150   206.1KB/s   00:00    
bootstrap-responsive.min.css                                                                                                                        100% 9149   500.0KB/s   00:00    
OpenSans-Regular-webfont.woff                                                                                                                       100%   83KB   5.1MB/s   00:00    
OpenSans-Regular-webfont.eot                                                                                                                        100%   71KB   3.4MB/s   00:00    
OpenSans-Regular-webfont.svg                                                                                                                        100%  266KB   6.5MB/s   00:00    
OpenSans-Regular-webfont.ttf                                                                                                                        100%  160KB   9.9MB/s   00:00    
style.css                                                                                                                                           100%   23KB   7.8MB/s   00:00    
bootstrap.min.css                                                                                                                                   100%   88KB  20.3MB/s   00:00    
g.css                                                                                                                                               100% 2637   175.5KB/s   00:00    
index.html                                                                                                                                          100%   15KB  10.1MB/s   00:00    
falcon-agent                                                                                                                                        100% 9849KB  37.1MB/s   00:00    
cfg.json                                                                                                                                            100% 1254    79.8KB/s   00:00    
[root@node101 open-falcon]# 
[root@node101 open-falcon]# scp -r agent/ root@node102.yinzhengjie.org.cn:~        #拷貝agent目錄到需要監控的"node102.yinzhengjie.org.cn"服務器上
[root@node101 open-falcon]# scp -r agent/ root@node103.yinzhengjie.org.cn:~
The authenticity of host 'node103.yinzhengjie.org.cn (172.30.1.103)' can't be established.
ECDSA key fingerprint is SHA256:aGk7Wv77uRVAElcihCH0Zu0sAPp6qEs2sSA1Zsj3o7g.
ECDSA key fingerprint is MD5:2b:74:b8:ad:f8:92:78:04:38:90:f1:28:e7:70:68:fb.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node103.yinzhengjie.org.cn,172.30.1.103' (ECDSA) to the list of known hosts.
root@node103.yinzhengjie.org.cn's password: 
agent.log                                                                                                                                           100%   47KB   2.1MB/s   00:00    
scheduler.go                                                                                                                                        100% 2479     3.1MB/s   00:00    
reader.go                                                                                                                                           100% 1011     1.7MB/s   00:00    
plugins.go                                                                                                                                          100%  970     1.5MB/s   00:00    
odometer.js                                                                                                                                         100% 7564   408.0KB/s   00:00    
jquery.dataTables.min.js                                                                                                                            100%   69KB   3.0MB/s   00:00    
jquery.js                                                                                                                                           100%   93KB  24.0MB/s   00:00    
jquery-ui.min.js                                                                                                                                    100%  223KB  13.4MB/s   00:00    
dashboard.js                                                                                                                                        100% 7975     5.9MB/s   00:00    
bootstrap.js                                                                                                                                        100%   47KB  32.1MB/s   00:00    
base.js                                                                                                                                             100% 2220     1.2MB/s   00:00    
code.png                                                                                                                                            100%  540   786.0KB/s   00:00    
favicon.ico                                                                                                                                         100%   97KB  29.9MB/s   00:00    
font-awesome.min.css                                                                                                                                100%   22KB  21.8MB/s   00:00    
font-awesome-ie7.min.css                                                                                                                            100%   37KB  12.2MB/s   00:00    
font-awesome-ie7.css                                                                                                                                100%   40KB  15.6MB/s   00:00    
font-awesome.css                                                                                                                                    100%   27KB   8.6MB/s   00:00    
fontawesome-webfont.eot                                                                                                                             100%   37KB   1.7MB/s   00:00    
FontAwesome.otf                                                                                                                                     100%   60KB  18.6MB/s   00:00    
fontawesome-webfont.woff                                                                                                                            100%   43KB  13.8MB/s   00:00    
fontawesome-webfont.svg                                                                                                                             100%  193KB  23.1MB/s   00:00    
fontawesome-webfont.ttf                                                                                                                             100%   77KB   3.4MB/s   00:00    
odometer.css                                                                                                                                        100% 3849     2.1MB/s   00:00    
dashboard.css                                                                                                                                       100% 5150     5.3MB/s   00:00    
bootstrap-responsive.min.css                                                                                                                        100% 9149     8.9MB/s   00:00    
OpenSans-Regular-webfont.woff                                                                                                                       100%   83KB  17.9MB/s   00:00    
OpenSans-Regular-webfont.eot                                                                                                                        100%   71KB  25.4MB/s   00:00    
OpenSans-Regular-webfont.svg                                                                                                                        100%  266KB  30.4MB/s   00:00    
OpenSans-Regular-webfont.ttf                                                                                                                        100%  160KB   6.1MB/s   00:00    
style.css                                                                                                                                           100%   23KB   8.9MB/s   00:00    
bootstrap.min.css                                                                                                                                   100%   88KB  24.3MB/s   00:00    
g.css                                                                                                                                               100% 2637     3.0MB/s   00:00    
index.html                                                                                                                                          100%   15KB  17.0MB/s   00:00    
falcon-agent                                                                                                                                        100% 9849KB  37.5MB/s   00:00    
cfg.json                                                                                                                                            100% 1254   394.1KB/s   00:00    
[root@node101 open-falcon]# 
[root@node101 open-falcon]# scp -r agent/ root@node103.yinzhengjie.org.cn:~        #拷貝agent目錄到需要監控的"node103.yinzhengjie.org.cn"服務器上
[root@node101 open-falcon]# scp open-falcon root@node102.yinzhengjie.org.cn:~
root@node102.yinzhengjie.org.cn's password: 
open-falcon                                                                                                                                         100% 3894KB  34.9MB/s   00:00    
[root@node101 open-falcon]# 
[root@node101 open-falcon]# scp open-falcon root@node102.yinzhengjie.org.cn:~      #拷貝open-falcon腳本到需要監控的服務器上面
[root@node101 open-falcon]# scp open-falcon root@node103.yinzhengjie.org.cn:~
root@node103.yinzhengjie.org.cn's password: 
open-falcon                                                                                                                                         100% 3894KB  56.7MB/s   00:00    
[root@node101 open-falcon]# 
[root@node101 open-falcon]# scp open-falcon root@node103.yinzhengjie.org.cn:~      #拷貝open-falcon腳本到需要監控的服務器上面

3>.修改node102.yinzhengjie.org.cn的cfg.json配置文件並啟動agent

[root@node102 ~]# ll
total 3896
drwxrwxr-x. 7 root root      72 Dec 12 10:57 agent
-rwxr-xr-x. 1 root root 3987469 Dec 12 11:04 open-falcon
[root@node102 ~]# 
[root@node102 ~]# cat agent/config/cfg.json 
{
    "debug": true,
    "hostname": "node102.yinzhengjie.org.cn",
    "ip": "",
    "plugin": {
        "enabled": false,
        "dir": "./plugin",
        "git": "https://github.com/open-falcon/plugin.git",
        "logs": "./logs"
    },
    "heartbeat": {
        "enabled": true,
        "addr": "node101.yinzhengjie.org.cn:6030",
        "interval": 60,
        "timeout": 1000
    },
    "transfer": {
        "enabled": true,
        "addrs": [
            "node101.yinzhengjie.org.cn:8433"
        ],
        "interval": 60,
        "timeout": 1000
    },
    "http": {
        "enabled": true,
        "listen": ":1988",
        "backdoor": false
    },
    "collector": {
        "ifacePrefix": ["eth", "em"],
        "mountPoint": []
    },
    "default_tags": {
    },
    "ignore": {
        "cpu.busy": true,
        "df.bytes.free": true,
        "df.bytes.total": true,
        "df.bytes.used": true,
        "df.bytes.used.percent": true,
        "df.inodes.total": true,
        "df.inodes.free": true,
        "df.inodes.used": true,
        "df.inodes.used.percent": true,
        "mem.memtotal": true,
        "mem.memused": true,
        "mem.memused.percent": true,
        "mem.memfree": true,
        "mem.swaptotal": true,
        "mem.swapused": true,
        "mem.swapfree": true
    }
}
[root@node102 ~]# 
{
    "debug": true, # 控制一些debug信息的輸出,生產環境通常設置為false
    "hostname": "", # agent采集了數據發給transfer,endpoint就設置為了hostname,默認通過`hostname`獲取,如果配置中配置了hostname,就用配置中的
    "ip": "", # agent與hbs心跳的時候會把自己的ip地址發給hbs,agent會自動探測本機ip,如果不想讓agent自動探測,可以手工修改該配置
    "plugin": {
        "enabled": false, # 默認不開啟插件機制
        "dir": "./plugin", # 把放置插件腳本的git repo clone到這個目錄
        "git": "https://github.com/open-falcon/plugin.git", # 放置插件腳本的git repo地址
        "logs": "./logs" # 插件執行的log,如果插件執行有問題,可以去這個目錄看log
    },
    "heartbeat": {
        "enabled": true, # 此處enabled要設置為true
        "addr": "127.0.0.1:6030", # hbs的地址,端口是hbs的rpc端口
        "interval": 60, # 心跳周期,單位是秒
        "timeout": 1000 # 連接hbs的超時時間,單位是毫秒
    },
    "transfer": {
        "enabled": true, # 此處enabled要設置為true
        "addrs": [
            "127.0.0.1:8433",
            "127.0.0.1:8433"
        ], # transfer的地址,端口是transfer的rpc端口, 可以支持寫多個transfer的地址,agent會保證HA
        "interval": 60, # 采集周期,單位是秒,即agent一分鍾采集一次數據發給transfer
        "timeout": 1000 # 連接transfer的超時時間,單位是毫秒
    },
    "http": {
        "enabled": true, # 是否要監聽http端口
        "listen": ":1988" # 如果監聽的話,監聽的地址
    },
    "collector": {
        "ifacePrefix": ["eth", "em"] # 默認配置只會采集網卡名稱前綴是eth、em的網卡流量,配置為空就會采集所有的,lo的也會采集。可以從/proc/net/dev看到各個網卡的流量信息
    },
    "ignore": { # 默認采集了200多個metric,可以通過ignore設置為不采集
        "cpu.busy": true,
        "mem.swapfree": true
    }
}
配置文件必須叫cfg.json,可以基於cfg.example.json修改(想要了解上述配置參數說明戳我)
./open-falcon start agent  啟動進程
./open-falcon stop agent  停止進程
./open-falcon monitor agent  查看日志
看var目錄下的log是否正常,或者瀏覽器訪問其1988端口。另外agent提供了一個--check參數,可以檢查agent是否可以正常跑在當前機器上
./falcon-agent --check

4>.修改node103.yinzhengjie.org.cn的cfg.json配置文件並啟動agent

[root@node103 ~]# ll
total 3896
drwxrwxr-x. 7 root root      72 Dec 12 11:02 agent
-rwxr-xr-x. 1 root root 3987469 Dec 12 11:04 open-falcon
[root@node103 ~]# 
[root@node103 ~]# cat agent/config/cfg.json 
{
    "debug": true,
    "hostname": "node103.yinzhengjie.org.cn",
    "ip": "",
    "plugin": {
        "enabled": false,
        "dir": "./plugin",
        "git": "https://github.com/open-falcon/plugin.git",
        "logs": "./logs"
    },
    "heartbeat": {
        "enabled": true,
        "addr": "node101.yinzhengjie.org.cn:6030",
        "interval": 60,
        "timeout": 1000
    },
    "transfer": {
        "enabled": true,
        "addrs": [
            "node101.yinzhengjie.org.cn:8433"
        ],
        "interval": 60,
        "timeout": 1000
    },
    "http": {
        "enabled": true,
        "listen": ":1988",
        "backdoor": false
    },
    "collector": {
        "ifacePrefix": ["eth", "em"],
        "mountPoint": []
    },
    "default_tags": {
    },
    "ignore": {
        "cpu.busy": true,
        "df.bytes.free": true,
        "df.bytes.total": true,
        "df.bytes.used": true,
        "df.bytes.used.percent": true,
        "df.inodes.total": true,
        "df.inodes.free": true,
        "df.inodes.used": true,
        "df.inodes.used.percent": true,
        "mem.memtotal": true,
        "mem.memused": true,
        "mem.memused.percent": true,
        "mem.memfree": true,
        "mem.swaptotal": true,
        "mem.swapused": true,
        "mem.swapfree": true
    }
}
[root@node103 ~]# 
[root@node103 ~]# ./open-falcon start agent
[falcon-agent] 8639
[root@node103 ~]# .
[root@node103 ~]# ./open-falcon start agent            #在node103.yinzhengjie.org.cn節點上啟動agent
[root@node103 ~]# ./open-falcon monitor agent 
2018/12/12 11:01:48 var.go:95: <= <Total=7, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:01:48 var.go:88: => <Total=6> <Endpoint:node101.yinzhengjie.org.cn, Metric:ss.estab, Type:GAUGE, Tags:, Step:60, Time:1544630508, Value:53>
2018/12/12 11:01:48 var.go:95: <= <Total=68, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:01:48 var.go:95: <= <Total=6, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:02:00 var.go:88: => <Total=4> <Endpoint:node101.yinzhengjie.org.cn, Metric:rate, Type:GAUGE, Tags:name=pfc.push.cnt, Step:60, Time:1544630520, Value:0.016666781240232065>
2018/12/12 11:02:00 var.go:88: => <Total=5> <Endpoint:node101.yinzhengjie.org.cn, Metric:rate, Type:GAUGE, Tags:name=pfc.push.cnt, Step:60, Time:1544630520, Value:0.01666669039142266>
2018/12/12 11:02:00 var.go:95: <= <Total=4, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:02:00 var.go:95: <= <Total=5, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:18:07 cfg.go:128: read config file: /root/agent/config/cfg.json successfully
2018/12/12 11:18:07 http.go:74: listening :1988
2018/12/12 11:19:07 var.go:88: => <Total=7> <Endpoint:node101.yinzhengjie.org.cn, Metric:df.bytes.free.percent, Type:GAUGE, Tags:mount=/,fstype=xfs, Step:60, Time:1544631547, Value:97.8937870429458>
2018/12/12 11:19:07 var.go:88: => <Total=68> <Endpoint:node101.yinzhengjie.org.cn, Metric:agent.alive, Type:GAUGE, Tags:, Step:60, Time:1544631547, Value:1>
2018/12/12 11:19:07 var.go:95: <= <Total=7, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:19:07 var.go:95: <= <Total=68, Invalid:0, Latency=0ms, Message:ok>
2018/12/12 11:19:07 var.go:88: => <Total=6> <Endpoint:node101.yinzhengjie.org.cn, Metric:ss.estab, Type:GAUGE, Tags:, Step:60, Time:1544631547, Value:3>
2018/12/12 11:19:07 var.go:95: <= <Total=6, Invalid:0, Latency=0ms, Message:ok>
[root@node103 ~]# ./open-falcon monitor agent          #查看agent端的日志信息

 

三.在open-falcon中的前端界面查看是否有對應的主機列表

1>.刷新前端頁面,會看到2台監控的主機信息,如下圖所示:

 

2>.以Endpoint視角查看agent采集的監控項目

3>.點擊后可查看到的視圖信息如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM