open-falcon其他篇
目录:
- 1.1 安装open-falcon环境准备
- 1.2 部署open-falcon后端
- 1.2.1 agent配置文件
- 1.2.2 transfer(数据上报)
- 1.2.3 judge(告警判断)
- 1.2.4 Alarm(告警)
- 1.2.5 graph(数据存储&归档)
- 1.2.6 API
- 1.2.7 Aggregator
- 1.2.8 Nodata
- 1.3 部署前端(dashboard)
- 1.4 被监控主机安装open-falcon agent
1.1 安装open-falcon环境准备返回顶部
环境准备:https://book.open-falcon.org/zh_0_2/quick_install/prepare.html
参考博客:https://www.cnblogs.com/yaohong/p/8713723.html
1、依赖组件
1)安装一些基本工具(与open-falcon无关)
yum install -y wget
yum install -y vim
yum install -y git
2) 安装redis
yum install -y redis
systemctl start redis # 启动redis
systemctl enable redis # 设置redis开机启动
systemctl status redis # 查看redis是否开启
3)安装mysql
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm # 下载repo源
rpm -ivh mysql-community-release-el7-5.noarch.rpm # 安装该rpm包
yum install mysql-server -y # 安装mysql
systemctl start mysql
systemctl status mysql
4)初始化mysql表结构
cd /tmp/ && git clone https://github.com/open-falcon/falcon-plus.git
cd /tmp/falcon-plus/scripts/mysql/db_schema/
mysql -h 127.0.0.1 -u root -p < 1_uic-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 2_portal-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 3_dashboard-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 4_graph-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 5_alarms-db-schema.sql
rm -rf /tmp/falcon-plus/
2、安装Go语言开发环境 & 编译打包 open-falcon-v0.2.1.tar.gz
注:https://book.open-falcon.org/zh_0_2/quick_install/prepare.html 中官方有提供编译包,如果编译过程不顺利可以直接下载编译包。
1)安装go语言环境
yum install -y epel-release
yum install golang -y
go version # 确认是否满足官方要求的Go >= 1.6
2)设置环境变量GOROOT和GOPATH
export GOROOT=/usr/lib/golang
export GOPATH=/home
3)将open-falcon的源码从github上get下来
mkdir -p $GOPATH/src/github.com/open-falcon # 创建GOPATH下的一个本地的路径
cd $GOPATH/src/github.com/open-falcon # 进入该路径
git clone https://github.com/open-falcon/falcon-plus.git # 将源码get到本地
4)编译源码并打包 open-falcon-v0.2.1.tar.gz
cd $GOPATH/src/github.com/open-falcon/falcon-plus/ # 进入本地源码路径下
go get github.com/open-falcon/rrdlite # 使用go get获取rrdtool工具包(make过程卡壳的一个点)
make all # 编译所有模块
make pack # 打包
注:在$GOPATH/src/github.com/open-falcon/falcon-plus/ 目录下就多了刚才的压缩包 “open-falcon-v0.2.1.tar.gz”。
1.2 部署open-falcon后端返回顶部
https://book.open-falcon.org/zh_0_2/quick_install/backend.html
1、创建工作目录
export WORKSPACE=/home/work
mkdir -p $WORKSPACE
2、解压二进制包(包名根据实际进行修改)
cd $GOPATH/src/github.com/open-falcon/falcon-plus/
tar -xzvf open-falcon-v0.2.1.tar.gz -C $WORKSPACE
注:由于我是根据本教程编译源码获得的压缩包,故需要切换到“$GOPATH/src/github.com/open-falcon/falcon-plus/”路径下。
包名由于make pack的时候就是open-falcon-v0.2.0.tar.gz,具体根据实际情况(17/12/6再部署时发现官方已有0.2.1)。
3、修改配置文件说明
下面这些模块需要使用mysql数据库,将下面文件的mysql用户名密码替换成真实的即可
模块 | 配置文件所在路径 |
aggregator | /home/work/aggregator/config/cfg.json |
graph | /home/work/graph/config/cfg.json |
hbs | /home/work/hbs/config/cfg.json |
nodata | /home/work/nodata/config/cfg.json |
api | /home/work/api/config/cfg.json |
alarm | /home/work/alarm/config/cfg.json |
4、启动后端命令
cd $WORKSPACE
./open-falcon start # 检查所有模块的启动状况
./open-falcon check
1.2.1 agent配置文件返回顶部
1、agent(数据采集组件):golang项目
1. 需要监控的服务器都要安装falcon-agent,falcon-agent是一个golang开发的daemon程序,用于自发现的采集单机的各种数据和指标
2. falcon-agent提供了一个proxy-gateway,用户可以方便的通过http接口,push数据到本机的gateway
3. gateway会将用户push的数据转发到server端,所有自实现的插件都使用这个REST接口传送数据。。
4. 部署好agent后,能自动获取到系统的基础监控指标,并上报给transfer,agent与transfer建立了TCP长连接,每隔60秒发送一次数据到transfer。
2、配置说明
http://192.168.56.12:1988/
vim /home/work/agent/config/cfg.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,
"addrs": [
"127.0.0.1:18433"
], # transfer的地址,端口是transfer的rpc端口, 可以支持写多个transfer的地址,agent会保证HA
"interval": 60, # 采集周期,单位是秒,即agent一分钟采集一次数据发给transfer
"timeout": 1000 # 连接transfer的超时时间,单位是毫秒
},
"http": {
"enabled": true, # 是否要监听http端口
"listen": ":1988",
"backdoor": false
},
"collector": {
"ifacePrefix": ["eth", "em"], # 默认配置只会采集网卡名称前缀是eth、em的网卡流量,配置为空就会采集所有的,lo的也会采集。可以从/proc/net/dev看到各个网卡的流量信息
"mountPoint": []
},
"default_tags": {
},
"ignore": { # 默认采集了200多个metric,可以通过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
}
}
agent配置文件
3、进程管理
./open-falcon start agent 启动进程
./open-falcon stop agent 停止进程
./open-falcon monitor agent 查看日志
4、验证agent是否正常
cd /home/work/agent/bin/
./falcon-agent --check
curl 127.0.0.1:1988/config/reload # 重载agent配置
5、/v1/push接口,监控脚本定制
ts=`date +%s`; curl -X POST -d "[{\"metric\": \"metric.demo\", \"endpoint\": \"qd-open-falcon-judge01.hd\", \"timestamp\": $ts,\"step\": 60,\"value\": 9,\"counterType\": \"GAUGE\",\"tags\": \"project=falcon,module=judge\"}]" http://127.0.0.1:1988/v1/push
1.2.2 transfer(数据上报)返回顶部
1、transfer(数据上报)
1. transfer进程负责分发从agent上送的监控指标数据,并根据哈希分片。
2. 将数据分发给judge进程和graph进程,供告警判定和绘图。
2、服务管理
./open-falcon start transfer # 启动服务
curl -s "127.0.0.1:6060/health" # 校验服务,这里假定服务开启了6060的http监听端口。检验结果为ok表明服务正常启动。
./open-falcon stop transfer # 停止服务
./open-falcon monitor transfer # 查看日志
3、补充说明
部署完成transfer组件后,请修改agent的配置,使其指向正确的transfer地址。
在安装完graph和judge后,请修改transfer的相应配置、使其能够正确寻址到这两个组件。
4、配置说明
{
"debug": true, # 如果为true,日志中会打印debug信息
"minStep": 30, # 允许上报的数据最小间隔,默认为30秒
"http": {
"enabled": true, # 表示是否开启该http端口,该端口为控制端口,主要用来对transfer发送控制命令、统计命令、debug命令等
"listen": "0.0.0.0:6060" # 表示监听的http端口
},
"rpc": {
"enabled": true, # 表示是否开启该jsonrpc数据接收端口, Agent发送数据使用的就是该端口
"listen": "0.0.0.0:8433" # 表示监听的http端口
},
"socket": { # 即将被废弃,请避免使用
"enabled": true,
"listen": "0.0.0.0:4444",
"timeout": 3600
},
"judge": {
"enabled": true, # 表示是否开启向judge发送数据
"batch": 200, # 数据转发的批量大小,可以加快发送速度,建议保持默认值
"connTimeout": 1000, # 单位是毫秒,与后端建立连接的超时时间,可以根据网络质量微调,建议保持默认
"callTimeout": 5000, # 单位是毫秒,发送数据给后端的超时时间,可以根据网络质量微调,建议保持默认
"maxConns": 32, # 连接池相关配置,最大连接数,建议保持默认
"maxIdle": 32, # 连接池相关配置,最大空闲连接数,建议保持默认
"replicas": 500, # 这是一致性hash算法需要的节点副本数量,建议不要变更,保持默认即可
"cluster": { # key-value形式的字典,表示后端的judge列表,其中key代表后端judge名字,value代表的是具体的ip:port
"judge-00" : "0.0.0.0:6080"
}
},
"graph": {
"enabled": true, # 表示是否开启向graph发送数据
"batch": 200,
"connTimeout": 1000,
"callTimeout": 5000,
"maxConns": 32,
"maxIdle": 32,
"replicas": 500,
"cluster": { # key-value形式的字典,表示后端的graph列表,其中key代表后端graph名字,value代表的是具体的ip:port
"graph-00" : "0.0.0.0:6070" # (多个地址用逗号隔开, transfer会将同一份数据发送至各个地址,利用这个特性可以实现数据的多重备份)
}
},
"tsdb": {
"enabled": false, # 表示是否开启向open tsdb发送数据
"batch": 200,
"connTimeout": 1000,
"callTimeout": 5000,
"maxConns": 32,
"maxIdle": 32,
"retry": 3, # 连接后端的重试次数和发送数据的重试次数
"address": "127.0.0.1:8088" # tsdb地址或者tsdb集群vip地址, 通过tcp连接tsdb.
}
}
transfer配置文件
1.2.3 judge(告警判断)返回顶部
1、judge(告警判断)
1.Judge从Heartbeat server获取所有的报警策略,并判断transfer推送的指标数据是否触发告警。
2. 若触发了告警,judge将会产生告警事件,这些告警事件会写入Redis(使用Redis消息队列)。
3. redis中告警事件,供处理告警事件的Alarm进程转发告警消息,或是Email,或是手机短信等。
2、部署说明
1. Judge监听了一个http端口,提供了一个http接口:/count,访问之,可以得悉当前Judge实例处理了多少数据量。
2. 推荐的做法是一个Judge实例处理50万~100万数据,用个5G~10G内存,如果所用物理机内存比较大,比如有128G,可以在一个物理机上部署多个Judge实例。
3、进程管理
1. ./open-falcon start judge # 启动
2. ./open-falcon stop judge # 停止
3. ./open-falcon monitor judge # 查看日志
4、配置说明
{
"debug": true,
"debugHost": "nil",
"remain": 11,
"http": {
"enabled": true,
"listen": "0.0.0.0:6081"
},
"rpc": {
"enabled": true,
"listen": "0.0.0.0:6080"
},
"hbs": {
"servers": ["127.0.0.1:6030"], # hbs最好放到lvs vip后面,所以此处最好配置为vip:port
"timeout": 300,
"interval": 60
},
"alarm": {
"enabled": true,
"minInterval": 300, # 连续两个报警之间至少相隔的秒数,维持默认即可
"queuePattern": "event:p%v",
"redis": {
"dsn": "127.0.0.1:6379", # 与alarm、sender使用一个redis
"maxIdle": 5,
"connTimeout": 5000,
"readTimeout": 5000,
"writeTimeout": 5000
}
}
}
judge配置文件
1.2.4 Alarm(告警)返回顶部
1、Alarm(告警)
1. Alarm进程监听Redis中的消息队列,并将judge产生的告警事件转发给微信、短信和邮件三种REST接口,REST接口才是具体的发送动作。
2. 另外,关于告警,每条告警策略都会定义不同的优先级,Redis中的消息队列也按优先级划分。
3. Alarm不仅消费告警事件,优先级比较低的报警,其合并逻辑都是在alarm中做,所以目前Alarm进程只能部署一个实例。
4. 已经发送出去的告警事件,Alarm将会负责写入MySQL。
说明:
1)我们在配置报警策略的时候配置了报警级别,比如P0/P1/P2等等,每个及别的报警都会对应不同的redis队列
2)alarm去读取这个数据的时候我们希望先读取P0的数据,再读取P1的数据,最后读取P5的数据,因为我们希望先处理优先级高的。
注:alarm是个单点。对于未恢复的告警是放到alarm的内存中的,alarm还需要做报警合并,故而alarm只能部署一个实例。后期需要想办法改进。
2、部署说明
1. alarm是个单点,对于未恢复的告警是放到alarm的内存中的,alarm还需要做报警合并,故而alarm只能部署一个实例。需要对alarm的存活做好监控。
3、进程管理
./open-falcon start alarm # 启动
./open-falcon stop alarm # 停止
./open-falcon monitor alarm # 查看日志
4、配置说明
{
"log_level": "debug",
"http": {
"enabled": true,
"listen": "0.0.0.0:9912"
},
"redis": {
"addr": "127.0.0.1:6379",
"maxIdle": 5,
"highQueues": [
"event:p0",
"event:p1",
"event:p2"
],
"lowQueues": [
"event:p3",
"event:p4",
"event:p5",
"event:p6"
],
"userIMQueue": "/queue/user/im",
"userSmsQueue": "/queue/user/sms",
"userMailQueue": "/queue/user/mail"
},
"api": {
"im": "http:#127.0.0.1:10086/wechat", #微信发送网关地址
"sms": "http:#127.0.0.1:10086/sms", #短信发送网关地址
"mail": "http:#127.0.0.1:10086/mail", #邮件发送网关地址
"dashboard": "http:#127.0.0.1:8081", #dashboard模块的运行地址
"plus_api":"http:#127.0.0.1:8080", #falcon-plus api模块的运行地址
"plus_api_token": "default-token-used-in-server-side" #用于和falcon-plus api模块服务端之间的通信认证token
},
"falcon_portal": {
"addr": "root:@tcp(127.0.0.1:3306)/alarms?charset=utf8&loc=Asia%2FChongqing",
"idle": 10,
"max": 100
},
"worker": {
"im": 10,
"sms": 10,
"mail": 50
},
"housekeeper": {
"event_retention_days": 7, #报警历史信息的保留天数
"event_delete_batch": 100
}
}
alarm配置文件
5、报警合并
1. 如果某个核心服务挂了,可能会造成大面积报警,为了减少报警短信数量,我们做了报警合并功能。
2. 把报警信息写入dashboard模块,然后dashboard返回一个url地址给alarm,alarm将这个url链接发给用户,
这样用户只要收到一条短信(里边是个url地址),点击url进去就是多条报警内容。
3. highQueues中配置的几个event队列中的事件是不会做报警合并的,因为那些是高优先级的报警,报警合并只是针对lowQueues中的事件。
4. 如果所有的事件都不想做报警合并,就把所有的event队列都配置到highQueues中即可
1.2.5 graph(数据存储&归档)返回顶部
1、graph(数据存储&归档)
1. graph进程接收从transfer推送来的指标数据,操作rrd文件存储监控数据。
2. graph也为API进程提供查询接口,处理query组件的查询请求、返回绘图数据。
2、进程管理
./open-falcon start graph # 启动服务
./open-falcon stop graph # 停止服务
./open-falcon monitor graph # 查看日志
注:部署完graph组件后,请修改transfer和api的配置,使这两个组件可以寻址到graph。
3、配置说明
{
"debug": false, #true or false, 是否开启debug日志
"http": {
"enabled": true, #true or false, 表示是否开启该http端口,该端口为控制端口,主要用来对graph发送控制命令、统计命令、debug命令
"listen": "0.0.0.0:6071" #表示监听的http端口
},
"rpc": {
"enabled": true, #true or false, 表示是否开启该rpc端口,该端口为数据接收端口
"listen": "0.0.0.0:6070" #表示监听的rpc端口
},
"rrd": {
"storage": "./data/6070" # 历史数据的文件存储路径(如有必要,请修改为合适的路)
},
"db": {
"dsn": "root:@tcp(127.0.0.1:3306)/graph?loc=Local&parseTime=true", #MySQL的连接信息,默认用户名是root,密码为空,host为127.0.0.1,database为graph(如有必要,请修改)
"maxIdle": 4 #MySQL连接池配置,连接池允许的最大连接数,保持默认即可
},
"callTimeout": 5000, #RPC调用超时时间,单位ms
"ioWorkerNum": 64, #底层io.Worker的数量, 注意: 这个功能是v0.2.1版本之后引入的,v0.2.1版本之前的配置文件不需要该参数
"migrate": { #扩容graph时历史数据自动迁移
"enabled": false, #true or false, 表示graph是否处于数据迁移状态
"concurrency": 2, #数据迁移时的并发连接数,建议保持默认
"replicas": 500, #这是一致性hash算法需要的节点副本数量,建议不要变更,保持默认即可(必须和transfer的配置中保持一致)
"cluster": { #未扩容前老的graph实例列表
"graph-00" : "127.0.0.1:6070"
}
}
}
graph配置文件
1.2.6 API返回顶部
1、API(提供统一的restAPI操作接口) :go的后端模块
1. API组件,提供统一的绘图数据查询入口 (提供http接口))。
2. API组件接收查询请求,根据一致性哈希算法去相应的graph实例查询不同metric的数据,然后汇总拿到的数据,最后统一返回给用户。
补充说明:
部署完成api组件后,请修改dashboard组件的配置、使其能够正确寻址到api组件。
请确保api组件的graph列表 与 transfer的配置 一致。
2、进程管理
./open-falcon start api # 启动服务
./open-falcon stop api # 停止服务
./open-falcon monitor api # 查看日志
3、配置说明
{
"log_level": "debug",
"db": { //数据库相关的连接配置信息
"faclon_portal": "root:@tcp(127.0.0.1:3306)/falcon_portal?charset=utf8&parseTime=True&loc=Local",
"graph": "root:@tcp(127.0.0.1:3306)/graph?charset=utf8&parseTime=True&loc=Local",
"uic": "root:@tcp(127.0.0.1:3306)/uic?charset=utf8&parseTime=True&loc=Local",
"dashboard": "root:@tcp(127.0.0.1:3306)/dashboard?charset=utf8&parseTime=True&loc=Local",
"alarms": "root:@tcp(127.0.0.1:3306)/alarms?charset=utf8&parseTime=True&loc=Local",
"db_bug": true
},
"graphs": { // graph模块的部署列表信息
"cluster": {
"graph-00": "127.0.0.1:6070"
},
"max_conns": 100,
"max_idle": 100,
"conn_timeout": 1000,
"call_timeout": 5000,
"numberOfReplicas": 500
},
"metric_list_file": "./api/data/metric",
"web_port": ":8080", // http监听端口
"access_control": true, // 如果设置为false,那么任何用户都可以具备管理员权限
"salt": "pleaseinputwhichyouareusingnow", //数据库加密密码的时候的salt
"skip_auth": false, //如果设置为true,那么访问api就不需要经过认证
"default_token": "default-token-used-in-server-side", //用于服务端各模块间的访问授权
"gen_doc": false,
"gen_doc_path": "doc/module.html"
}
API配置说明
1.2.7 Aggregator返回顶部
1、Aggregator
1. 集群聚合模块,聚合某集群下的所有机器的某个指标的值,提供一种集群视角的监控体验。
2、进程管理
./open-falcon start aggregator # 启动服务
./open-falcon monitor aggregator # 检查log
./open-falcon stop aggregator # 停止服务
3、配置说明
{
"debug": true,
"http": {
"enabled": true,
"listen": "0.0.0.0:6055"
},
"database": {
"addr": "root:@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true",
"idle": 10,
"ids": [1, -1],
"interval": 55
},
"api": {
"connect_timeout": 500,
"request_timeout": 2000,
"plus_api": "http://127.0.0.1:8080", #falcon-plus api模块的运行地址
"plus_api_token": "default-token-used-in-server-side", #和falcon-plus api 模块交互的认证token
"push_api": "http://127.0.0.1:1988/v1/push" #push数据的http接口,这是agent提供的接口
}
}
Aggregator配置说明
1.2.8 Nodata返回顶部
1、Nodata
1. nodata用于检测监控数据的上报异常。
2. nodata和实时报警judge模块协同工作,过程为: 配置了nodata的采集项超时未上报数据,nodata生成一条默认的模拟数据;
3. 用户配置相应的报警策略,收到mock数据就产生报警。
4. 采集项上报异常检测,作为judge模块的一个必要补充,能够使judge的实时报警功能更加可靠、完善。
2、进程管理
./open-falcon start nodata # 启动服务
./open-falcon stop nodata # 停止服务
./open-falcon monitor nodata # 检查日志
3、配置说明
{
"debug": true,
"http": {
"enabled": true,
"listen": "0.0.0.0:6090"
},
"plus_api":{
"connectTimeout": 500,
"requestTimeout": 2000,
"addr": "http://127.0.0.1:8080", #falcon-plus api模块的运行地址
"token": "default-token-used-in-server-side" #用于和falcon-plus api模块的交互认证token
},
"config": {
"enabled": true,
"dsn": "root:@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true&wait_timeout=604800",
"maxIdle": 4
},
"collector":{
"enabled": true,
"batch": 200,
"concurrent": 10
},
"sender":{
"enabled": true,
"connectTimeout": 500,
"requestTimeout": 2000,
"transferAddr": "127.0.0.1:6060", #transfer的http监听地址,一般形如"domain.transfer.service:6060"
"batch": 500
}
}
Nodata配置说明
1.3 部署前端(dashboard)返回顶部
1、创建工作目录
export FRONTSPACE=/home/front/open-falcon
mkdir -p $FRONTSPACE
2、克隆前端组件代码
cd $FRONTSPACE
git clone https://github.com/open-falcon/dashboard.git
3、安装依赖包
yum install -y python-virtualenv
yum install -y python-devel
yum install -y openldap-devel
yum install -y mysql-devel
yum groupinstall "Development tools" -y cd $FRONTSPACE/dashboard/
virtualenv ./env ./env/bin/pip install -r pip_requirements.txt
4、修改配置
注:由于前端后台搭在一台虚拟机里,且暂时不接入LDAP,且数据库root的密码为空,故先不修改配置文件。
# dashboard的配置文件为: '/home/front/open-falcon/dashboard/rrd/config.py',请根据实际情况修改 #1、portal database
PORTAL_DB_USER = os.environ.get("PORTAL_DB_USER","root")
PORTAL_DB_PASS = os.environ.get("PORTAL_DB_PASS","") #2、alarm database
ALARM_DB_USER = os.environ.get("ALARM_DB_USER","root")
ALARM_DB_PASS = os.environ.get("ALARM_DB_PASS","")
5、启动服务
浏览器打开: http://192.168.56.12:8081
1)开发者模式启动
cd $FRONTSPACE/dashboard/
./env/bin/python wsgi.py
2)在生产环境启动
bash control start # 在生产环境启动
bash control stop # 停止dashboard运行
bash control tail # 查看日志
1.4 被监控主机安装open-falcon agent返回顶部
参考博客: https://blog.csdn.net/qq_27384769/article/details/79569776
1、在被监控服务器中创建工作目录
# 1、在被监控服务器中创建工作目录
mkdir -p /home/work/ # 2、将server端agent文件夹和启动脚本 拷贝到被监控服务器上
scp -r /home/work/agent/ root@192.168.56.13:/home/work/ # 拷贝agent目录
scp -r /home/work/open-falcon root@192.168.56.13:/home/work/ # 拷贝启动脚本 # 3、修改配置文件
vim /home/work/agent/config/cfg.json
{
"debug": true,
"hostname": "",
"ip": "",
"plugin": {
"enabled": false,
"dir": "./plugin",
"git": "https://github.com/open-falcon/plugin.git",
"logs": "./logs"
},
"heartbeat": {
"enabled": true,
"addr": "192.168.56.12:6030",
"interval": 60,
"timeout": 1000
},
"transfer": {
"enabled": true,
"addrs": [
"192.168.56.12: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
}
}
/home/work/agent/config/cfg.json
2、agent进程管理
./open-falcon start agent 启动进程
./open-falcon stop agent 停止进程
./open-falcon monitor agent 查看日志