Open-Falcon 是小米运维部开源的一款互联网企业级监控系统解决方案.mysql
github:https://github.com/open-falcon/of-releasegit
数据采集免配置:agent自发现、支持Plugin、主动推送模式github
容量水平扩展:生产环境每秒50万次数据收集、告警、存储、绘图,可持续水平扩展。redis
告警策略自发现:Web界面、支持策略模板、模板继承和覆盖、多种告警方式、支持回调动做。sql
告警设置人性化:支持最大告警次数、告警级别设置、告警恢复通知、告警暂停、不一样时段不一样阈值、支持维护周期,支持告警合并。docker
历史数据高效查询:秒级返回上百个指标一年的历史数据。json
Dashboard人性化:多维度的数据展现,用户自定义Dashboard等功能。安全
架构设计高可用:整个系统无核心单点,易运维,易部署。bash
Open-Falcon,总体能够分为两部分,即绘图组件、告警组件。其中:服务器
安装绘图组件 负责数据的采集、收集、存储、归档、采样、查询、展现(Dashboard/Screen)等功能,能够单独工做,做为time-series data的一种存储展现方案。
安装告警组件 负责告警策略配置(portal)、告警断定(judge)、告警处理(alarm/sender)、用户组管理(uic)等,能够单独工做。
若是你熟悉docker,想快速搭建并体验Open-Falcon的话,请参考 使用Docker镜像安装Open-Falcon
1.1 环境准备
yum
install
redis -y
yum
install
mysql-server -y
1.2 建立工做目录
export
HOME=
/home/work
export
WORKSPACE=$HOME
/open-falcon
mkdir
-p $WORKSPACE
cd
$WORKSPACE
1.3 初始化mysql表结构
# open-falcon全部组件都无需root帐号启动,推荐使用普通帐号安装,提高安全性。此处咱们使用普通
帐号:work来安装部署全部组件
# 固然了,使用yum安装依赖的一些lib库的时候仍是要有root权限的。
git clone https:
//github
.com
/open-falcon/scripts
.git
cd
.
/scripts/
mysql -h localhost -u root --password=
""
< db_schema
/graph-db-schema
.sql
mysql -h localhost -u root --password=
""
< db_schema
/dashboard-db-schema
.sql
mysql -h localhost -u root --password=
""
< db_schema
/portal-db-schema
.sql
mysql -h localhost -u root --password=
""
< db_schema
/links-db-schema
.sql
mysql -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/work
export
WORKSPACE=$HOME
/open-falcon
mkdir
-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