CentOS 7单机部署Open-Falcon监控

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS 7单机部署Open-Falcon监控相关的知识,希望对你有一定的参考价值。

    对于Open-Falcon 系统的部署,研究了一段时间才部署成功,文档主要部署的为v0.2.1版本,参考官网文档。

关于该监控系统的部署分为三个部分,一、环境准备;二、启动后端;三、安装前段。

一、环境准备

    首先将服务器内部防火墙关闭,并关机开机启动,并关闭selinux,此处不在赘述。

1.1 安装wgetvim软件(个人习惯使用vim编辑文件)

yum install -y wget vim

1.2 安装git

yum install -y git

安装结束后安全起见,确认是否满足官方要求的Git >=1.7.5

git version

技术分享图片

1.3 安装go语言环境(因为yum源中没有go的安装包,故通过fedoraepel仓库来安装)

yum install -y epel-release
yum install golang -y

安装结束后安全起见,确认是否满足官方要求的Go >= 1.6

go version

技术分享图片

1.4 安装redis(通过yum安装即可)

yum install redis -y

启动redis

systemctl start redis

设置redis开机启动 

systemctl enable redis

可以用下面的语句查看redis是否开启

systemctl status redis

1.5 安装mysql

 步骤

 1) 下载repo源

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

 2) 安装rpm包(安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo

rpm -ivh mysql-community-release-el7-5.noarch.rpm

    3)安装mysql

yum install mysql-server -y
systemctl start mysql

可以用下面的语句查看mysql是否开启

systemctl status mysql

1.6 设置环境变量GOROOT和GOPATH

export GOROOT=/usr/lib/golang
export GOPATH=/home

1.7 open-falcon的源码从githubget下来

      步骤:

      1)创建GOPATH下的一个本地的路径

mkdir -p $GOPATH/src/github.com/open-falcon

      2)进入该路径

cd $GOPATH/src/github.com/open-falcon

      3)将源码get到本地

git clone https://github.com/open-falcon/falcon-plus.git

1.8 初始化数据库

cd $GOPATH/src/github.com/open-falcon/falcon-plus/scripts/mysql/db_schema/

mysql -h 127.0.0.1 -u root -p < 1_uic-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 2_portal-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 3_dashboard-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 4_graph-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 5_alarms-db-schema.sql

再运行“mysql -h..................”时会提示“Enter password”,如果mysql的root没有设置密码,回车即可。

1.9 编译源码并打包

       步骤:

       1)进入本地源码路径下

cd $GOPATH/src/github.com/open-falcon/falcon-plus/

       2)使用go get获取rrdtool工具包(make过程卡壳的一个点) 

go get github.com/open-falcon/rrdlite

这一步是官方教程没有提到的内容,如果不获取该工具包make的时候会报错

技术分享图片

     3)编译所有模块

make all

       4)打包

make pack


 $GOPATH/src/github.com/open-falcon/falcon-plus/目录下就多了刚才的压缩包“open-falcon-v0.2.1.tar.gz”

 技术分享图片

二、启动后端

2.1 创建工作目录

export WORKSPACE=/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 -xzvf open-falcon-v0.2.0.tar.gz -C $WORKSPACE

2.3 修改配置文件cfg.json

我这里的MySQL密码都为空,如果密码不为空,在root后面加上密码

1)修改aggregator的配置文件

vim /home/work/aggregator/config/cfg.json

技术分享图片 

2)修改graph的配置文件

vim /home/work/graph/config/cfg.json

技术分享图片 

3)修改hbs的配置文件

vim /home/work/hbs/config/cfg.json

技术分享图片

4)修改nodata的配置文件

vim /home/work/nodata/config/cfg.json

技术分享图片 

5)修改api的配置文件

vim /home/work/api/config/cfg.json

技术分享图片 

6)修改alarm的配置文件

vim /home/work/alarm/config/cfg.json


技术分享图片 

 

2.4 启动后端模块

cd $WORKSPACE
./open-falcon start

可以用下面的命令检查各个模块的启动情况

./open-falcon check

更多命令的用法(命令的例子是启动agent模块)

# ./open-falcon [start|stop|restart|check|monitor|reload] module./open-falcon start agent
./open-falcon check
        falcon-graph         UP           53007          
        falcon-hbs         UP           53014
        falcon-judge         UP           53020
        falcon-transfer         UP           53026
        falcon-nodata         UP           53032
        falcon-aggregator         UP           53038
        falcon-agent         UP           53044
        falcon-gateway         UP           53050
        falcon-api         UP           53056
        falcon-alarm         UP           53063
For debugging , You can check $WorkDir/$moduleName/log/logs/xxx.log



三、安装前端

3.1 创建工作目录

export FRONTSPACE=/home/front/open-falcon
mkdir -p $FRONTSPACE

3.2 获取前端代码

cd $FRONTSPACE
git clone https://github.com/open-falcon/dashboard.git

3.3 安装依赖包

yum install -y python-virtualenv
yum install -y python-devel
yum install -y openldap-devel
yum install -y mysql-devel
yum groupinstall "Development tools" -y
 
cd $FRONTSPACE/dashboard/virtualenv ./env./env/bin/pip install -r pip_requirements.txt

3.4 修改配置

  根据本次记录的配置,dashboard的配置文件在/home/front/open-falcon/dashboard/rrd/config.py,需要根据实际情况对内部配置进行修改。

由于前端后台搭在一台虚拟机里,且暂时不接入LDAP,且数据库root的密码为空,故先不修改配置文件。

3.5 在生产环境启动

bash control start

技术分享图片

3.6 以开发者模式启动 

./env/bin/python wsgi.py

四、登陆测试通过公网IP

通过公网IP及8081端口进行登陆测试。

技术分享图片


技术分享图片


dashbord没有默认创建任何账号包括管理账号,需要你通过页面进行注册账号。
想拥有管理全局的超级管理员账号,需要手动注册用户名为root的账号(第一个帐号名称为root的用户会被自动设置为超级管理员)。
超级管理员可以给普通用户分配权限管理。

小提示:注册账号能够被任何打开dashboard页面的人注册,所以当给相关的人注册完账号后,需要去关闭注册账号功能。只需要去修改api组件的配置文件cfg.json,将signup_disable配置项修改为true,重启api即可。当需要给人开账号的时候,再将配置选项改回去,用完再关掉即可。

五、遇到的问题

5.1 遇到不能启动dashboard问题,

技术分享图片

提示没有gunicorn,故停止。

针对此问题需要先安装pip

技术分享图片

技术分享图片

安装pip后使用pip安装gunicorn

# pip install gunicorn

技术分享图片

5.2 启动dashboard遇到

技术分享图片

此时在重新执行

 virtualenv ./env  再启动即可

技术分享图片


以上是关于CentOS 7单机部署Open-Falcon监控的主要内容,如果未能解决你的问题,请参考以下文章

centos 7 部署 open-falcon 0.2.0

centos7 部署 open-falcon 0.2.1

单机部署open-falcon 0.2

小米监控--Open-Falcon

Open-Falcon install script(Open-Falcon监控一键安装脚本)

运维监控-小米OpenFalcon部署汇总