open-falcon的部署流程<1>

来源:互联网 发布:c语言n次方怎么表示 编辑:程序博客网 时间:2024/06/05 01:57

本文档记录了centos6.4下open-falcon监控系统的部署流程,以及一些需要注意的地方。
参考了官方文档 http://book.open-falcon.org/zh/

    • 部署前的准备
      • 设置环境变量
      • redis安装
      • MySql安装
        • 初始化Mysql脚本
      • 下载open-falcon
      • 安装GoLang环境
    • 开始部署
      • 安装agent
      • 安装hbs
      • 安装transfer
      • 安装graph
      • 安装query
      • 安装 dashboard
      • 安装judge
      • 安装portal
      • 安装alarm
      • 安装sender
      • 安装links
      • 安装fe

部署前的准备

设置环境变量

    export WORKSPACE=/root/open-falcon

redis安装

  • yum安装
    yum install redis-cli redis-server
  • 源码安装
    tar zxvf redis-3.2.1.tar.gz    cd redis-3.2.1    make && make install    

安装完之后,将源码目录下的redis.conf拷贝到/etc目录,并且修改,最后启动redis-server。

    redis-server /etc/redis.conf 

MySql安装

    yum install mysql mysql-server php-mysql.x86_64

初始化Mysql脚本

    git clone https://github.com/open-falcon/scripts.git    cd scripts    mysql -uroot < db_schema/dashboard-db-schema.sql     mysql -uroot < db_schema/graph-db-schema.sql     mysql -uroot < db_schema/links-db-schema.sql    mysql -uroot < db_schema/portal-db-schema.sql     mysql -uroot < db_schema/uic-db-schema.sql    /* mysql如果有密码,需要指定密码.*/

下载open-falcon

直接使用官方编译好的二进制包, [地址](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 $WORKSPACEmkdir ./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

安装GoLang环境

如果不是源码编译安装,可以不装golang环境。

开始部署

安装agent

每台机器上,都需要部署agent,agent会自动采集预先定义的各种采集项,每隔60秒,push到transfer。

cd agentmv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置*/./control start     /*启动*/./control tail      /*查看启动日志*//* 椒盐服务, 这里假定服务开启了1988的http监听端口。 在浏览器中打开下面的页面 */goto -->  http://127.0.0.1:1988

安装hbs

心跳服务器,公司所有agent都会连到HBS,每分钟发一次心跳请求。

cd hbsmv cfg.example.json cfg.json vim cfg.json  /*编辑cfg.json, 修改对应的配置*/./control start     /*启动*/./control tail      /*查看启动日志*/

安装transfer

transfer默认监听在:8433端口上,agent会通过jsonrpc的方式来push数据上来。

cd transfermv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置*/./control start     /*启动*/./control tail      /*查看启动日志*//* 校验服务,这里假定服务开启了6060的http监听端口。检验结果为ok表明服务正常启动。 */curl -s http://127.0.0.1:6060/health

安装graph

graph组件是存储绘图数据、历史数据的组件。transfer会把接收到的数据,转发给graph。

cd graphmv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置*/./control start     /*启动*/./control tail      /*查看启动日志*//* 校验服务,这里假定服务开启了默认6071的http监听端口。检验结果为ok表明服务正常启动。 */curl -s http://127.0.0.1:6071/health

安装query

query组件,绘图数据的查询接口,query组件收到用户的查询请求后,会从后端的多个graph,查询相应的数据,聚合后,再返回给用户。

cd querymv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置*/./control start     /*启动*/./control tail      /*查看启动日志*/

安装 dashboard

dashboard是面向用户的查询界面,在这里,用户可以看到push到graph中的所有数据,并查看其趋势图。

这里需要安装两个软件, pip 和virtualenv 。 如果软件仓库里面有,直接用yum安装,否则需要用源码来安装。

下面介绍用源码来安装 pip 和 virtualenv。

pip项目在github上面 https://github.com/pypa/pip。

安装过程如下:

wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gztar zxvf 1.5.5.tar.gzcd pip-1.5.5python ./setup.py install

pip安装virtualenv

pip install virtualenv

install dependency

cd dashboardvirtualenv ./env./env/bin/pip install -r pip_requirements.txt  /*这里可能会报错,可能是系统没有安装某些软件包*/

配置

dashboard的config的路径为 $WORKSPACE/dashboard/rrd/config.py,里面有数据库相关的配置信息,如有必要,请修改。默认情况下(所有组件都在同一台服务器上),保持默认配置即可

    ./control start    ./control tail    goto ---> http://127.0.0.1:8081

安装judge

Judge用于告警判断,agent将数据push给Transfer,Transfer不但会转发给Graph组件来绘图,还会转发给Judge用于判断是否触发告警。

cd judgemv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置  这里要注意redis的配置*/./control start     /*启动*/./control tail      /*查看启动日志*/

安装portal

Portal是用来配置报警策略的
Portal是个Python的项目,无需像Go的项目那样去做编译。不过Go的项目是静态编译的,编译好了之后二进制无依赖,拿到其他机器也可以跑起来,Python的项目就需要安装一些依赖库了。

cd portalvirtualenv ./env./env/bin/pip install -r pip_requirements.txt

Portal的配置文件在frame/config.py
设置好配置文件之后就可以用下面的方式启动

./control start./control tail

安装alarm

alarm模块是处理报警event的,judge产生的报警event写入redis,alarm从redis读取处理

cd alarmmv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置  这里要注意redis的配置*/./control start     /*启动*/./control tail      /*查看启动日志*/

安装sender

Sender这个模块专门用于调用各公司提供的邮件、短信发送接口。

cd sendermv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置  这里要注意redis的配置*/./control start     /*启动*/./control tail      /*查看启动日志*/

Links是为报警合并功能写的组件。如果你不想使用报警合并功能,这个组件是无需安装的。

cd linksvirtualenv ./env./env/bin/pip install -r pip_requirements.txt

Links的配置文件在frame/config.py,注意里面的配置。

安装fe

这是Go版本的UIC,也是一个统一的web入口,因为监控组件众多,记忆ip、port去访问还是比较麻烦。fe像是一个监控的hao123

cd femv cfg.example.json cfg.jsonvim cfg.json  /*编辑cfg.json, 修改对应的配置  这里要注意redis的配置*/./control start     /*启动*/./control tail      /*查看启动日志*/

安装完fe之后,需要设置一个root密码, 如下:
http://fe.example.com/root?password=abc

0 0
原创粉丝点击