Open-Falcon 互联网企业级监控系统解决方案
Open-Falcon 是小米运维部开源的一款互联网企业级监控系统解决方案.github:https://github.com/open-falcon/of-release
Highlights and features
[*] 数据采集免配置:agent自发现、支持Plugin、主动推送模式
[*] 容量水平扩展:生产环境每秒50万次数据收集、告警、存储、绘图,可持续水平扩展。
[*] 告警策略自发现:Web界面、支持策略模板、模板继承和覆盖、多种告警方式、支持回调动作。
[*] 告警设置人性化:支持最大告警次数、告警级别设置、告警恢复通知、告警暂停、不同时段不同阈值、支持维护周期,支持告警合并。
[*] 历史数据高效查询:秒级返回上百个指标一年的历史数据。
[*] Dashboard人性化:多维度的数据展示,用户自定义Dashboard等功能。
[*] 架构设计高可用:整个系统无核心单点,易运维,易部署。
Quick Install
Open-Falcon,整体可以分为两部分,即绘图组件、告警组件。其中:
[*] 安装绘图组件 负责数据的采集、收集、存储、归档、采样、查询、展示(Dashboard/Screen)等功能,可以单独工作,作为time-series data的一种存储展示方案。
[*] 安装告警组件 负责告警策略配置(portal)、告警判定(judge)、告警处理(alarm/sender)、用户组管理(uic)等,可以单独工作。
[*] 如果你熟悉docker,想快速搭建并体验Open-Falcon的话,请参考 使用Docker镜像安装Open-Falcon
安装部署Open-Falcon:
1.1 环境准备
yum install redis -yyum install mysql-server -y 1.2 创建工作目录
export HOME=/home/workexport WORKSPACE=$HOME/open-falconmkdir -p $WORKSPACEcd $WORKSPACE 1.3 初始化mysql表结构
# open-falcon所有组件都无需root账号启动,推荐使用普通账号安装,提升安全性。此处我们使用普通
账号:work来安装部署所有组件
# 当然了,使用yum安装依赖的一些lib库的时候还是要有root权限的。
git clone https://github.com/open-falcon/scripts.gitcd ./scripts/mysql -h localhost -u root --password="" < db_schema/graph-db-schema.sqlmysql -h localhost -u root --password="" < db_schema/dashboard-db-schema.sql mysql -h localhost -u root --password="" < db_schema/portal-db-schema.sqlmysql -h localhost -u root --password="" < db_schema/links-db-schema.sqlmysql -h localhost -u root --password="" < db_schema/uic-db-schema.sql 1.4 下载编译好的组件
下载地址:http://pan.baidu.com/s/1eR1cNj8
DOWNLOAD="https://github.com/open-falcon/of-release/releases/download/v0.1.0/open-falcon-v0.1.0.tar.gz"cd $WORKSPACE mkdir ./tmp#下载wget $DOWNLOAD -O open-falcon-latest.tar.gz #解压tar -zxf open-falcon-latest.tar.gz -C ./tmp/for x in `find ./tmp/ -name "*.tar.gz"`;do \app=`echo $x|cut -d '-' -f2`; \mkdir -p $app; \tar -zxf $x -C $app; \done 2.1 安装绘图组件
export HOME=/home/workexport WORKSPACE=$HOME/open-falconmkdir -p $WORKSPACE 2.2 安装Transfer
transfer默认监听在:8433端口上,agent会通过jsonrpc的方式来push数据上来。
cd $WORKSPACE/transfer/mv cfg.example.json cfg.json # 默认情况下(所有组件都在同一台服务器上),保持cfg.json不变即可
# cfg.json中的各配置项,可以参考 https://github.com/open-falcon/transfer/blob/master/README.md
# 如有必要,请酌情修改cfg.json
# 启动transfer
./control start
# 校验服务,这里假定服务开启了6060的http监听端口。检验结果为ok表明服务正常启动。
curl -s "http://127.0.0.1:6060/health"
#查看日志
./control tail
# 停止transfer
./control stop
页:
[1]