一、 数据采集
数据采集又falcon-agent负责,采集上报到falcon-transfer,falcon-transfer将上报的各种监控数据发送给falcon-graph,falcon-graph通过各种归档策略和rrdtool归档工具来归档数据。
二、 数据归档
监控数据归档按照归档策略来进行,设置的归档策略目前有如下几种:
1. 一分钟一个点,存12小时(时间跨度为1小时、6小时、12小时)采样方法:平均值
2. 5分钟一个点,存2天(时间跨度为12小时、24小时)采样方法:最大值、最小值、平均值
3. 20分钟一个点,存7天(时间跨度为3天、7天)采样方法:最大值、最小值、平均值
4. 3小时一个点,存3个月(时间跨度为1个月)采样方法:最大值、最小值、平均值
5. 12小时一个点,存1年(时间跨度为3个月、6个月)采样方法:最大值、最小值、平均值
备注说明:
在采集时间不到5分钟时,绘图数据只有平均值的采样数据。
三、 数据绘图
由于数据归档时是按照时序归档,在绘图时,绘图数据也是按照时序来排列。在拉去绘图庶数据时,会根据请求选择的时间跨度和采样方法来拉去对应归档策略中的归档数据,并通过图表的形式展示。
四、 绘图索引操作
(一) 手动同步索引全量更新
1.进行一次索引数据的全量更新。方法为: 针对每个graph实例,运行curl-s "127.0.0.1:6071/index/updateAll"
,异步地触发graph实例的索引全量更新(这里假设graph的http监听端口为6071),等待所有的graph实例完成索引全量更新后进行第2步操作。单个graph实例,索引全量更新的耗时,因counter数量、mysql数据库性能而不同,一般耗时不大于30min。
2.待索引全量更新完成后,发起过期索引删除 curl -s "127.0.0.1:8002/index/delete"
,
异步地触发task实例的索引删除(这里假设task的http监听端口为8002)。运行索引删除前,请务必确保索引全量更新已完成。
(二) 索引全量更新并行数
方法为: 针对每个graph实例,运行curl -s "127.0.0.1:6071/index/updateAll /concurrent
"
,异步地触发graph实例的索引全量更新(这里假设graph的http监听端口为6071)
(三) 更新一条索引数据
该方法用于手动建立的索引数据,运行curl -s "127.0.0.1:6071/ index/update/endpoint/metric/step/dstype/tags"
,异步地触发graph实例的索引全量更新(这里假设graph的http监听端口为6071)
(四) 删除endpoint对应的索引
方法为: 针对每个dashboard实例,运行curl -X 'DELETE' -H 'Content-type: application/json' -v http://127.0.0.1:8081/api/endpoints/<endpoint_name>
,异步地触发dashboard实例的索引删除(这里假设dashboard的http监听端口为8081)