欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

openfalcon单机部署

程序员文章站 2022-06-19 08:24:03
...

操作系统:centos7.1

1添加阿里源、epel源等

#获取管理员权限
sudo -s
#删除现有yum源
mv /etc/yum.repos.d /etc/yum.repos.d.bak
#增加新源
mkdir /etc/yum.repos.d
cd /etc/yum.repos.d
wget -O  http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O  http://mirrors.aliyun.com/repo/epel.repo
#重建缓存
yum clean all
yum makecache
#升级软件(可以暂时不做)
yum update -y
#安装git、golang
yum install -y git golang redis
#启动redis
systemctl start redis
#加redis开机启动
systemctl enable redis

#安装mysql
cd /tmp
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-server -y
#启动mysql
systemctl start mysql
# 默认mysql用户为root,无密码,端口3306

#设置环境变量
export GOROOT=/usr/lib/golang
export GOPATH=/home
#创建openfalcon的本地路径
mkdir -p $GOPATH/src/github.com/open-falcon
cd $GOPATH/src/github.com/open-falcon
#下载源码
git clone https://github.com/open-falcon/falcon-plus.git
#初始化数据库
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

#编译安装
cd $GOPATH/src/github.com/open-falcon/falcon-plus/
make all
make pack
#这时候,你会在当前目录下面,得到open-falcon-v0.2.0.tar.gz的压缩包,就表示已经编译和打包成功了
#创建安装目录
export WORKSPACE=/home/work
mkdir -p $WORKSPACE
#解压
cd $GOPATH/src/github.com/open-falcon/falcon-plus/
tar -xzvf open-falcon-v0.2.1.tar.gz -C $WORKSPACE

下面是需要修改一些模块内配置的mysql用户名和密码
(0.2.1版本已经将以下文件内的mysql连接都默认了root和空密码,不用修改了)
模块 配置文件所在路径
aggregator /home/work/aggregator/config/cfg.json
graph /home/work/graph/config/cfg.json
hbs /home/work/hbs/config/cfg.json
nodata /home/work/nodata/config/cfg.json
api /home/work/api/config/cfg.json
alarm /home/work/alarm/config/cfg.json

#启动后端模块
cd $WORKSPACE
./open-falcon start
#检查各模块启动情况
./open-falcon check

前端模块部署

export FRONTSPACE=/home/front/open-falcon
mkdir -p $FRONTSPACE
cd $FRONTSPACE
git clone https://github.com/open-falcon/dashboard.git
安装依赖包
yum install -y python-virtualenv python-devel openldap-devel mysql-devel
yum groupinstall "Development tools" -y

如果提示安装Development tools失败,使用以下方法解决

cd /etc/yum.repos.d
wget http://public-yum.oracle.com/public-yum-el5.repo
cd /etc/pki/rpm-gpg/
wget https://public-yum.oracle.com/RPM-GPG-KEY-oracle-el5
yum groupinstall "Development tools" -y

继续安装

cd $FRONTSPACE/dashboard/
virtualenv ./env
#pip安装python依赖库
./env/bin/pip install -r pip_requirements.txt

前端模块的配置文件为/home/front/open-falcon/dashboard/rrd/config.py
需要把里面的数据库连接部分做修改(如果不修改,网页内部分菜单会出错)

# portal database
# TODO: read from api instead of db
PORTAL_DB_HOST = os.environ.get("PORTAL_DB_HOST","127.0.0.1")
PORTAL_DB_PORT = int(os.environ.get("PORTAL_DB_PORT",3306))
PORTAL_DB_USER = os.environ.get("PORTAL_DB_USER","root")
#密码需要置空
PORTAL_DB_PASS = os.environ.get("PORTAL_DB_PASS","")
PORTAL_DB_NAME = os.environ.get("PORTAL_DB_NAME","falcon_portal")

# alarm database
# TODO: read from api instead of db
ALARM_DB_HOST = os.environ.get("ALARM_DB_HOST","127.0.0.1")
ALARM_DB_PORT = int(os.environ.get("ALARM_DB_PORT",3306))
ALARM_DB_USER = os.environ.get("ALARM_DB_USER","root")
#密码需要置空
ALARM_DB_PASS = os.environ.get("ALARM_DB_PASS","")
ALARM_DB_NAME = os.environ.get("ALARM_DB_NAME","alarms")

开启端口8081

#永久开启
firewall-cmd --add-port=8081/tcp --permanent 
#重新载入配置 
firewall-cmd --reload

生产环境启动,路径为/home/front/open-falcon/dashboard

bash control start

或者以开发者模式启动,路径为/home/front/open-falcon/dashboard

./env/bin/python wsgi.py

<meta charset="utf-8">

使用浏览器访问

http://127.0.0.1:8081

生产环境下排错:

查看日志:bash control tail

停止dashboard运行:bash control stop

后端日志查看:moduleName/log/logs/xxx.log

账号建立

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

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

防火墙端口:

开放6030(heartbeat)和8433(transfer)

#永久开启
firewall-cmd --add-port=6030/tcp --permanent 
firewall-cmd --add-port=8433/tcp --permanent 
#重新载入配置 
firewall-cmd --reload

转载于:https://www.jianshu.com/p/50715dda29d8