对于Open-Falcon 系统的部署,研究了一段时间才部署成功,文档主要部署的为v0.2.1版本,参考官网文档。
关于该监控系统的部署分为三个部分,一、环境准备;二、启动后端;三、安装前段。
一、环境准备
首先将服务器内部防火墙关闭,并关机开机启动,并关闭selinux,此处不在赘述。
1.1 安装wget和vim软件(个人习惯使用vim编辑文件)
- yuminstall-ywgetvim
1.2 安装git
- yuminstall-ygit
安装结束后安全起见,确认是否满足官方要求的Git >=1.7.5
- gitversion
1.3 安装go语言环境(因为yum源中没有go的安装包,故通过fedora的epel仓库来安装)
- yuminstall-yepel-release
- yuminstallgolang-y
安装结束后安全起见,确认是否满足官方要求的Go >= 1.6
- goversion
1.4 安装redis(通过yum安装即可)
- yuminstallredis-y
启动redis
- systemctlstartredis
设置redis开机启动
- systemctlenableredis
可以用下面的语句查看redis是否开启
- systemctlstatusredis
1.5 安装MysqL
步骤
1)下载repo源
2)安装rpm包(安装这个包后,会获得两个MysqL的yum repo源:/etc/yum.repos.d/MysqL-community.repo,/etc/yum.repos.d/MysqL-community-source.repo)
- rpm-ivhMysqL-community-release-el7-5.noarch.rpm
3)安装MysqL
- yuminstallMysqL-server-y
- systemctlstartMysqL
可以用下面的语句查看MysqL是否开启
- systemctlstatusMysqL
1.6设置环境变量GOROOT和GOPATH
- exportGOROOT=/usr/lib/golang
- exportGOPATH=/home
1.7将open-falcon的源码从github上get下来
步骤:
1)创建GOPATH下的一个本地的路径
- mkdir-p$GOPATH/src/github.com/open-falcon
2)进入该路径
- cd$GOPATH/src/github.com/open-falcon
3)将源码get到本地
- gitclonehttps://github.com/open-falcon/falcon-plus.git
1.8初始化数据库
- cd$GOPATH/src/github.com/open-falcon/falcon-plus/scripts/MysqL/db_schema/
再运行“MysqL -h..................”时会提示“Enter password”,如果MysqL的root没有设置密码,回车即可。
1.9编译源码并打包
步骤:
1)进入本地源码路径下
- cd$GOPATH/src/github.com/open-falcon/falcon-plus/
2)使用go get获取rrdtool工具包(make过程卡壳的一个点)
- gogetgithub.com/open-falcon/rrdlite
这一步是官方教程没有提到的内容,如果不获取该工具包make的时候会报错
3)编译所有模块
- makeall
4)打包
- makepack
在$GOPATH/src/github.com/open-falcon/falcon-plus/目录下就多了刚才的压缩包“open-falcon-v0.2.1.tar.gz”。
二、启动后端
2.1 创建工作目录
- exportWORKSPACE=/home/work
- mkdir-p$WORKSPACE
2.2 解压二进制包(包名根据实际进行修改)
由于我是根据本教程编译源码获得的压缩包,故需要切换到“$GOPATH/src/github.com/open-falcon/falcon-plus/”路径下。
- cd$GOPATH/src/github.com/open-falcon/falcon-plus/
- tar-xzvfopen-falcon-v0.2.0.tar.gz-C$WORKSPACE
我这里的MysqL密码都为空,如果密码不为空,在root后面加上密码
- vim/home/work/aggregator/config/cfg.json
- vim/home/work/graph/config/cfg.json
- vim/home/work/hbs/config/cfg.json
- vim/home/work/nodata/config/cfg.json
- vim/home/work/api/config/cfg.json
- vim/home/work/alarm/config/cfg.json
2.4 启动后端模块
- cd$WORKSPACE
- ./open-falconstart
可以用下面的命令检查各个模块的启动情况
- ./open-falconcheck
更多命令的用法(命令的例子是启动agent模块)
- #./open-falcon[start|stop|restart|check|monitor|reload]module./open-falconstartagent
- ./open-falconcheck
- falcon-graphUP53007
- falcon-hbsUP53014
- falcon-judgeUP53020
- falcon-transferUP53026
- falcon-nodataUP53032
- falcon-aggregatorUP53038
- falcon-agentUP53044
- falcon-gatewayUP53050
- falcon-apiUP53056
- falcon-alarmUP53063
- Fordebugging,Youcancheck$WorkDir/$moduleName/log/logs/xxx.log
三、安装前端
3.1 创建工作目录
- exportFRONTSPACE=/home/front/open-falcon
- mkdir-p$FRONTSPACE
- cd$FRONTSPACE
- gitclonehttps://github.com/open-falcon/dashboard.git
3.3 安装依赖包
- yuminstall-ypython-virtualenv
- yuminstall-ypython-devel
- yuminstall-yopenldap-devel
- yuminstall-yMysqL-devel
- yumgroupinstall"Developmenttools"-y
- cd$FRONTSPACE/dashboard/
- virtualenv./env
- ./env/bin/pipinstall-rpip_requirements.txt
3.4 修改配置
根据本次记录的配置,dashboard的配置文件在/home/front/open-falcon/dashboard/rrd/config.py,需要根据实际情况对内部配置进行修改。
由于前端后台搭在一台虚拟机里,且暂时不接入LDAP,且数据库root的密码为空,故先不修改配置文件。
3.5 在生产环境启动
- bashcontrolstart
3.6 以开发者模式启动
- ./env/bin/pythonwsgi.py
四、登陆测试通过公网IP
通过公网IP及8081端口进行登陆测试。
五、遇到的问题
5.1 遇到不能启动dashboard问题,
提示没有gunicorn,故停止。
针对此问题需要先安装pip
安装pip后使用pip安装gunicorn
- #pipinstallgunicorn
5.2 启动dashboard遇到
此时在重新执行
- virtualenv./env再启动即可