CentOS 7单机部署Open-Falcon监控

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

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

一、环境准备

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

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

1
yum install -y wget vim

1.2 安装git

1
yum install -y git

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

1
git version

CentOS 7单机部署Open-Falcon监控

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

1
2
yum install -y epel-release
yum install golang -y

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

1
go version

CentOS 7单机部署Open-Falcon监控

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

1
yum install redis -y

启动redis

1
systemctl start redis

设置redis开机启动 

1
systemctl enable redis

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

1
systemctl status redis

1.5 安装MySQL

 步骤

 1) 下载repo源

1
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

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

    3)安装mysql

1
yum install mysql-server -y
1
systemctl start mysql

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

1
systemctl status mysql

1.6 设置环境变量GOROOT和GOPATH

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

1.7 open-falcon的源码从githubget下来

      步骤:

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

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

      2)进入该路径

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

      3)将源码get到本地

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

1.8 初始化数据库

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

1
2
3
4
5
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)进入本地源码路径下

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

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

1
go get github.com/open-falcon/rrdlite

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

CentOS 7单机部署Open-Falcon监控

     3)编译所有模块

1
make all

       4)打包

1
make pack


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

 CentOS 7单机部署Open-Falcon监控

二、启动后端

2.1 创建工作目录

1
2
export WORKSPACE=/home/work
mkdir -p $WORKSPACE

2.2 解压二进制包(包名根据实际进行修改) 

由于我是根据本教程编译源码获得的压缩包,故需要切换到“$GOPATH/src/github.com/open-falcon/falcon-plus/”路径下。

1
2
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的配置文件

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

CentOS 7单机部署Open-Falcon监控 

2)修改graph的配置文件

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

CentOS 7单机部署Open-Falcon监控 

3)修改hbs的配置文件

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

CentOS 7单机部署Open-Falcon监控

4)修改nodata的配置文件

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

CentOS 7单机部署Open-Falcon监控 

5)修改api的配置文件

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

CentOS 7单机部署Open-Falcon监控 

6)修改alarm的配置文件

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


CentOS 7单机部署Open-Falcon监控 

 

2.4 启动后端模块

1
2
cd $WORKSPACE
./open-falcon start

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

1
./open-falcon check

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

1
2
3
4
5
6
7
8
9
10
11
12
13
# ./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 创建工作目录

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

3.2 获取前端代码

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

3.3 安装依赖包

1
2
3
4
5
6
7
8
9
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 在生产环境启动

1
bash control start

CentOS 7单机部署Open-Falcon监控

3.6 以开发者模式启动 

1
./env/bin/python wsgi.py

四、登陆测试通过公网IP

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

CentOS 7单机部署Open-Falcon监控


CentOS 7单机部署Open-Falcon监控


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

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

五、遇到的问题

5.1 遇到不能启动dashboard问题,

CentOS 7单机部署Open-Falcon监控

提示没有gunicorn,故停止。

针对此问题需要先安装pip

CentOS 7单机部署Open-Falcon监控

CentOS 7单机部署Open-Falcon监控

安装pip后使用pip安装gunicorn

1
# pip install gunicorn

CentOS 7单机部署Open-Falcon监控

5.2 启动dashboard遇到

CentOS 7单机部署Open-Falcon监控

此时在重新执行

1
 virtualenv ./env  再启动即可

CentOS 7单机部署Open-Falcon监控


本文转自 Bill_Xing 51CTO博客,原文链接:http://blog.51cto.com/zhanx/2059434

上一篇:关于 Java 的静态工厂方法,看这一篇就够了!


下一篇:java 字节流和字符流的区别