openfalcon架构详解
一:绘图组件:
1.falcon-agent
数据采集组件
agent内置了一个http接口,会自动采集预先定义的各种采集项,每隔60秒,push到transfer。
2.transfer
agent与transfer建立长连接,将数据汇报给tarnsfer
transfer默认监听在:8433端口上,agent会通过jsonrpc的方式来push数据上来
transfer将数据发送给judge和graph
3.graph
graph组件是存储绘图数据、历史数据的组件。transfer会把接收到的数据,转发给graph。
监听端口为6071,校验方法如下,返回ok表示服务正常。
#url -s "http://127.0.0.1:6071/health"
4.query
绘图数据的查询接口,因为graph是分片存储的,如果要传输给dashboard,就需要query组件收集用户的数据进行聚合再返回给用户。
5.dashboard
dashboard是面向用户的查询界面,在这里,用户可以看到push到graph中的所有数据,并查看其趋势图。
二:告警组件
1.judge
告警判断
2.alarm
alarm模块是处理报警事件的,judge产生的报警事件写入redis,alarm从redis读取数据。
3.sender
调用各个公司提供的mail-privider和sms-privider,按照某个并发度,从redis读取邮件,短信并发送,
alarm生成的报警短信和报警邮件是直接写入redis即可,由sender来发送。
4.mail-privider&&sms-provider
发送邮件短信接口
5.protal
配置报警策略的地方
6.HBS
Heartbeat Server心跳服务,只依赖Protal的DB