环境准备:

git clone https://github.com/open-falcon/falcon-plus.git
cd falcon-plus/scripts/mysql/db_schema/
mysql -h 192.168.0.103 -u root -p < 1_uic-db-schema.sql
mysql -h 192.168.0.103 -u root -p < 2_portal-db-schema.sql
mysql -h 192.168.0.103 -u root -p < 3_dashboard-db-schema.sql
mysql -h 192.168.0.103 -u root -p < 4_graph-db-schema.sql
mysql -h 192.168.0.103 -u root -p < 5_alarms-db-schema.sql

现在查看数据库

mysql -uroot -p -e "show databases;"

部署后端(服务端)

mkdir -p open-falcon && cd open-falcon

wget https://github.com/open-falcon/falcon-plus/releases/download/v0.2.1/open-falcon-v0.2.1.tar.gz

需要修改以下文件

1)修改aggregator的配置文件

vim aggregator/config/cfg.json

"database": {
"addr": "root:linux2008@tcp(192.168.0.103:3306)/falcon_portal?loc=Local&parseTime=true", "idle": 10,
"ids": [1, -1],
"interval": 55
},

mysql的root密码为空,则去掉“password”,若不为空,则用root密码替换“password”

2)修改graph的配置文件

vim graph/config/cfg.json

"db": {
"dsn": "root:linux2008@tcp(192.168.0.103:3306)/graph?loc=Local&parseTime=true", "maxIdle": 4

}

 3)修改hbs的配置文件

vim hbs/config/cfg.json

"database": "root:linux2008@tcp(192.168.0.103:3306)/falcon_portal?loc=Local&parseTime=true"

4)修改nodata的配置文件

vim nodata/config/cfg.json

"plus_api":{
"connectTimeout": 500,
"requestTimeout": 2000,
"addr": "http://192.168.0.103:8080", "token": "default-token-used-in-server-side"
},
"config": {
"enabled": true,
"dsn": "root:linux2008@tcp(192.168.0.103:3306)/falcon_portal?loc=Local&parseTime=true&wait_timeout=604800", "maxIdle": 4
}

5)修改api的配置文件

vim api/config/cfg.json

"db": {
"falcon_portal": "root:linux2008@tcp(192.168.0.103:3306)/falcon_portal?charset=utf8&parseTime=True&loc=Local", "graph": "root:linux2008@tcp(192.168.0.103:3306)/graph?charset=utf8&parseTime=True&loc=Local", "uic": "root:linux2008@tcp(192.168.0.103:3306)/uic?charset=utf8&parseTime=True&loc=Local", "dashboard": "root:linux2008@tcp(192.168.0.103:3306)/dashboard?charset=utf8&parseTime=True&loc=Local", "alarms": "root:linux2008@tcp(192.168.0.103:3306)/alarms?charset=utf8&parseTime=True&loc=Local", "db_bug": true
}

6)修改alarm的配置文件

vim alarm/config/cfg.json

"api": {
"im": "http://192.168.0.103:10086/wechat", "sms": "http://192.168.0.103:10086/sms", "mail": "http://192.168.0.103:10086/mail", "dashboard": "http://192.168.0.103:8081", "plus_api":"http://192.168.0.103:8080", "plus_api_token": "default-token-used-in-server-side"
},
"falcon_portal": {
"addr": "root:linux2008@tcp(192.168.0.103:3306)/alarms?charset=utf8&loc=Local",
"idle": 10,
"max": 100
}

启动后端模块

./open-falcon start

[falcon-graph] 5924
[falcon-hbs] 5939
[falcon-judge] 5953
[falcon-transfer] 5964
[falcon-nodata] 5976
[falcon-aggregator] 5987
[falcon-agent] 6000
[falcon-gateway] 6013
[falcon-api] 6023
[falcon-alarm] 6038

检查服务启动状态

./open-falcon check

更多的命令行工具用法

./open-falcon [start|stop|restart|check|monitor|reload] module

前端部署

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

cd dashboard

#Centos

yum install -y python-virtualenv

yum install -y python-devel

yum install -y openldap-devel

yum install -y mysql-devel

yum groupinstall "Development tools"

cd open-falcon/dashboard/

virtualenv ./env

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

#Ubuntu

apt-get install -y python-virtualenv

apt-get install -y slapd ldap-utils

apt-get install -y libmysqld-dev

apt-get install -y build-essential

apt-get install -y python-dev libldap2-dev libsasl2-dev libssl-dev

cd open-falcon/dashboard/

virtualenv ./env

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

修改配置

cd open-falcon/dashboard/rrd

cp config.py config.py.bak

vim config.py

# app config
import os
LOG_LEVEL = os.environ.get("LOG_LEVEL",'DEBUG')
SECRET_KEY = os.environ.get("SECRET_KEY","secret-key")
PERMANENT_SESSION_LIFETIME = os.environ.get("PERMANENT_SESSION_LIFETIME",3600 * 24 * 30)
SITE_COOKIE = os.environ.get("SITE_COOKIE","open-falcon-ck")

# Falcon+ API
API_ADDR = os.environ.get("API_ADDR","http://192.168.0.103:8080/api/v1")
API_USER = os.environ.get("API_USER","admin")
API_PASS = os.environ.get("API_PASS","linux2008")

# portal database
# TODO: read from api instead of db
PORTAL_DB_HOST = os.environ.get("PORTAL_DB_HOST","192.168.0.103")
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","linux2008")
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","192.168.0.103")
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","linux2008")
ALARM_DB_NAME = os.environ.get("ALARM_DB_NAME","alarms")

# ldap config
LDAP_ENABLED = os.environ.get("LDAP_ENABLED",False)
LDAP_SERVER = os.environ.get("LDAP_SERVER","ldap.forumsys.com:389")
LDAP_BASE_DN = os.environ.get("LDAP_BASE_DN","dc=example,dc=com")
LDAP_BINDDN = os.environ.get("LDAP_BINDDN","cn=manager,dc=example,dc=org")
LDAP_BIND_PASS = os.environ.get("LDAP_BIND_PASS","wanzixiang163")
LDAP_SEARCH_FMT = os.environ.get("LDAP_SEARCH_FMT","uid=%s")
LDAP_ATTRS = ["cn","mail","telephoneNumber"]
LDAP_TLS_START_TLS = False
LDAP_TLS_CACERTDIR = ""
LDAP_TLS_CACERTFILE = "/etc/openldap/certs/ca.crt"
LDAP_TLS_CERTFILE = ""
LDAP_TLS_KEYFILE = ""
LDAP_TLS_REQUIRE_CERT = True
LDAP_TLS_CIPHER_SUITE = ""

# i18n
BABEL_DEFAULT_LOCALE   = 'zh_CN'
BABEL_DEFAULT_TIMEZONE = 'Asia/Shanghai'
# available translations
LANGUAGES   = {
    'en':  'English',
    'zh_CN':  'Chinese-Simplified',
}

# portal site config
MAINTAINERS = ['root']
CONTACT = 'root@open-falcon.com'

DEBUG = True

try:
    from rrd.local_config import *
except:
    print "[warning] no local config file"

启动服务

有两种方法:
法一:
bash control start
法二:
./control start
 
./control tail  //查看日志
[2019-11-16 14:36:56 +0000] [4029] [INFO] Starting gunicorn 19.9.0
[2019-11-16 14:36:56 +0000] [4029] [INFO] Listening at: http://0.0.0.0:8081 (4029)
[2019-11-16 14:36:56 +0000] [4029] [INFO] Using worker: sync
[2019-11-16 14:36:56 +0000] [4034] [INFO] Booting worker with pid: 4034
[2019-11-16 14:36:56 +0000] [4036] [INFO] Booting worker with pid: 4036
[2019-11-16 14:36:56 +0000] [4038] [INFO] Booting worker with pid: 4038
[2019-11-16 14:36:56 +0000] [4039] [INFO] Booting worker with pid: 4039

web界面打开:

192.168.0.103:8081

 

 

 

posted on 2019-11-15 20:08  wanzixiang163  阅读(307)  评论(0)    收藏  举报