小米监控部署agent

centos6.9

工作目录:

[root@centos2 services]# /usr/local/services

安装环境

open-falcon的后端组件都是使用Go语言编写的,本节我们搭建Go语言开发环境,clone代码

我们使用64位Linux作为开发环境,与线上环境保持一致。如果你所用的环境不同,请自行解决不同平台的命令差异

首先安装Go语言开发环境:

[root@centos2 services]# wget https://storage.googleapis.com/golang/go1.6.3.linux-amd64.tar.gz

配置环境变量:

添加以下配置
[root@centos2 agent]# vim /etc/profile
export HOME=/usr/local/service
export GOROOT=$HOME/go
export GOPATH=$HOME/workspace
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
然后执行命令使其生效:
[root@centos2 agent]# source /etc/profile

解压go包。
下载小米监控安装包:

wget  https://github.com/open-falcon/of-release/releases/download/v0.1.0/open-falcon-v0.1.0.tar.gz  -O  open-falcon-latest.tar.gz

解压:

for x in `find ./tmp/ -name "*.tar.gz"`;do \
    app=`echo $x|cut -d '-' -f2`; \
    mkdir -p $app; \
    tar -zxf $x -C $app; \
done

我这里是用git 拉下来的代码:

[root@centos2 github.com]# pwd
/usr/local/services/go/src/github.com
[root@centos2 github.com]#  git clone --recursive https://github.com/open-falcon/of-release.git
然后: mv of-release open-falcon

进入agent:

[root@centos2 github.com]# ll open-falcon/
total 76
drwxr-xr-x 10 root root 4096 Aug 16 00:23 agent
drwxr-xr-x  7 root root 4096 Aug 15 23:47 aggregator
drwxr-xr-x 11 root root 4096 Aug 15 23:48 alarm
drwxr-xr-x  8 root root 4096 Aug 15 23:48 common
drwxr-xr-x  4 root root 4096 Aug 15 23:49 dashboard
drwxr-xr-x 12 root root 4096 Aug 15 23:49 fe
drwxr-xr-x  8 root root 4096 Aug 15 23:50 gateway
drwxr-xr-x 12 root root 4096 Aug 15 23:50 graph
drwxr-xr-x  8 root root 4096 Aug 15 23:50 hbs
drwxr-xr-x  8 root root 4096 Aug 15 23:50 judge
drwxr-xr-x  6 root root 4096 Aug 15 23:50 links
drwxr-xr-x 10 root root 4096 Aug 15 23:50 nodata
drwxr-xr-x  6 root root 4096 Aug 15 23:51 portal
drwxr-xr-x  9 root root 4096 Aug 15 23:51 query
-rw-r--r--  1 root root  310 Aug 15 23:46 README.md
drwxr-xr-x  4 root root 4096 Aug 15 23:51 scripts
drwxr-xr-x  9 root root 4096 Aug 15 23:51 sender
drwxr-xr-x  9 root root 4096 Aug 15 23:53 task
drwxr-xr-x  9 root root 4096 Aug 15 23:53 transfer

[root@centos2 github.com]# cd open-falcon/agent/
[root@centos2 agent]# ll

-rw-r--r-- 1 root root     1233 Aug 15 23:47 cfg.example.json
-rwxr-xr-x 1 root root     2291 Aug 15 23:47 control
drwxr-xr-x 2 root root     4096 Aug 15 23:47 cron
-rwxr-xr-x 1 root root 10933496 Aug 16 00:16 falcon-agent
-rw-r--r-- 1 root root  3900610 Aug 16 00:16 falcon-agent-5.1.0.tar.gz
drwxr-xr-x 2 root root     4096 Aug 15 23:47 funcs
drwxr-xr-x 2 root root     4096 Aug 15 23:47 g
-rw-r--r-- 1 root root        8 Aug 16 00:16 gitversion
drwxr-xr-x 2 root root     4096 Aug 15 23:47 http
-rw-r--r-- 1 root root    11358 Aug 15 23:47 LICENSE
-rw-r--r-- 1 root root      780 Aug 15 23:47 main.go
-rw-r--r-- 1 root root      462 Aug 15 23:47 NOTICE
drwxr-xr-x 2 root root     4096 Aug 15 23:47 plugins
drwxr-xr-x 5 root root     4096 Aug 15 23:47 public
-rw-r--r-- 1 root root      659 Aug 15 23:47 README.md
drwxr-xr-x 2 root root     4096 Aug 16 00:16 var
[root@centos2 agent]#  go get ./...
[root@centos2 agent]#  ./control build
[root@centos2 agent]#  ./control pack

最后一步会pack出一个tar.gz的安装包,拿着这个包去部署服务即可。
配置说明

配置文件必须叫cfg.json,可以基于cfg.example.json修改

{
    "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
    }
}

进程管理

我们提供了一个control脚本来完成常用操作

./control start 启动进程
./control stop 停止进程
./control restart 重启进程
./control status 查看进程状态
./control tail 用tail -f的方式查看var/app.log

ionice -c 3 nice -n 10 ./control start

参考 :https://book.open-falcon.org/zh/install_from_src/agent.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容

  • open-falcon(v0.2)部署手册 ---注:本文中出现的账号,IP信息均...
    痞子中阅读 4,819评论 4 4
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,497评论 18 139
  • 安装步骤 一、下载并且解压 wget https://github.com/XiaoMi/open-falcon/...
    泥瓦匠软件阅读 5,555评论 0 50
  • 文中只介绍个人搭建成功的经验,不介绍配置部分,全文在 root 账户下执行 原创文章,转载请声明,不,我拒绝转载。...
    孙小白话阅读 2,559评论 0 6
  • Open-falcon是小米运维团队从互联网公司的需求出发,根据多年的运维经验,结合SRE、SA、DEVS的使用经...
    猴子精h阅读 5,037评论 1 5