Linux记录-open-falcon开源监控系统部署
参考https://book.open-falcon.org/zh_0_2/quick_install/prepare.html
一、安装后端
1.环境准备
yum -y install redis
yum install golang -y ##需要epel源
配置环境变量(/etc/profile)
export GOROOT=/usr/lib/golang
export GOPATH=/home
配置mysql
yum install -y mysql-server
/etc/init.d/mysqld start
初始化数据库
cd /tmp/ && git clone https://github.com/open-falcon/falcon-plus.git
cd /tmp/falcon-plus/scripts/mysql/db_schema/
mysql -uroot -p0 <1_uic-db-schema.sql
mysql -uroot -p0 <2_portal-db-schema.sql
mysql -uroot -p0 <3_dashboard-db-schema.sql
mysql -uroot -p0 <4_graph-db-schema.sql
mysql -uroot -p0 <5_alarms-db-schema.sql
rm -rf /tmp/falcon-plus/
如果你是从v0.1.0升级到当前版本v0.2.0,那么只需要执行如下命令:
mysql -h 127.0.0.1 -u root -p < 5_alarms-db-schema.sql
创建工作目录
export FALCON_HOME=/usr/app/falcon
export WORKSPACE=$FALCON_HOME/open-falcon
mkdir -p $WORKSPACE
wget https://github.com/open-falcon/falcon-plus/releases/download/v0.2.1/open-falcon-v0.2.1.tar.gz
tar -xzvf open-falcon-v0.2.1.tar.gz -C $WORKSPACE
aggregator /usr/app/falcon/aggregator/config/cfg.json
graph /usr/app/falcon/graph/config/cfg.json
hbs /usr/app/falcon/hbs/config/cfg.json
nodata /usr/app/falcon/nodata/config/cfg.json
api /usr/app/falcon/api/config/cfg.json
alarm /usr/app/falcon/alarm/config/cfg.json
修改数据库用户密码
cd $WORKSPACE
grep -Ilr 3306 ./ | xargs -n1 -- sed -i 's/root:/root:0/g'
启动
cd $WORKSPACE
./open-falcon start
# 检查所有模块的启动状况
./open-falcon check
# ./open-falcon [start|stop|restart|check|monitor|reload] module
./open-falcon start agent
./open-falcon monitor agent
二、安装前端
cd $WORKSPACE
git clone https://github.com/open-falcon/dashboard.git
yum install -y python-virtualenv
yum install -y python-devel
yum install -y openldap-devel
yum install -y mysql-devel
yum groupinstall "Development tools"
#下载ez_setup.py
wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py --insecure
#下载pip
wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz
#解压并安装
tar xf pip-9.0.1.tar.gz
cd pip-9.0.1
python setup.py install
#测试,查看版本
pip -V
#pip安装软件
cd /home/work/open-falcon/dashboard
pip install -r pip_requirements.txt
open-falcon/dashboard/rrd/config.py
dashboard的配置文件为: 'rrd/config.py',请根据实际情况修改
## API_ADDR 表示后端api组件的地址
API_ADDR = "http://127.0.0.1:8080/api/v1"
## 根据实际情况,修改PORTAL_DB_*, 默认用户名为root,默认密码为""
## 根据实际情况,修改ALARM_DB_*, 默认用户名为root,默认密码为""
bash control start
访问网站 http://IP:8081 ,刚登陆需要注册用户,注册的第一个用户名为root的帐号会被认为是超级管理员,超级管理员可以设置其他用户为管理员。
以开发者模式启动
./env/bin/python wsgi.py
open http://127.0.0.1:8081 in your browser.
在生产环境启动
bash control start
open http://127.0.0.1:8081 in your browser.
停止dashboard运行
bash control stop
查看日志
bash control tail
import urllib
import requests
import json f = open('qname.txt','r')
content = f.read()
f.close() queues = content.split("\n")
queues = [ x.strip() for x in queues if x.strip() != "" ] name_template = "each(metric=bdp.ops.queue_used endpoint=bdp.ops.queue_used##qname@@{0}##cluster@@bdp##env@@prod)"
query_url = "http://bdp-falcon-api.sf-express.com/api/v1/getExpression"
delete_url = "http://bdp-falcon-proxy.sf-express.com/falcon/rule/deleteExpression" for q in queues:
r = requests.get(query_url + "/" + urllib.pathname2url(name_template.format(q)))
result = json.loads(r.text)
try:
result = result[0]
policy_id = result['id']
delete_r = requests.get(delete_url, data="%d" % policy_id)
print delete_r.text
except IndexError:
continue
Linux记录-open-falcon开源监控系统部署的更多相关文章
- 开源监控系统Prometheus介绍
前言 Prometheus是CNCF的一个开源项目,Google BorgMon监控系统的开源版本,是一个系统和服务的监控系统.周期性采集metrics指标,匹配规则和展示结果,以及触发某些条件的告警 ...
- Zabbix 监控系统部署
Zabbix 监控系统部署 实验环境 Zabbix server:RHEL8 ip:192.168.121.10 一.关闭防火墙和selinux [root@Zabbix-server ~]# sys ...
- Zabbix监控系统部署:基本功能测试
1. 概述2. 登陆2.1 登陆账号密码2.1 设置中文语言环境3. 创建用户3.1 用户创建入口3.2 添加用户信息3.3 用户报警媒介3.4 用户权限4. 创建监控主机4.1 添加一台监控主机4. ...
- Nagios监控系统部署(源码)
1. 概述2. 部署Nagios2.1 创建Nagios用户组2.2 下载Nagios和Nagios-plugin源码2.3 编译安装3. 部署Nagios-plugin3.1 编译安装nagios- ...
- Centos 7.2天兔(Lepus 3.8)数据库监控系统部署
天兔(Lepus 3.8)数据库监控系统部署 转载自:https://blog.csdn.net/m0_38039437/article/details/79613260 一.安装LAMP基础环境 首 ...
- Nagios监控系统部署(源码)(四)
Nagios监控系统部署(源码) 1. 概述2. 部署Nagios2.1 创建Nagios用户组2.2 下载Nagios和Nagios-plugin源码2.3 编译安装3. 部署Nagios-pl ...
- Zabbix监控系统部署:前端初始化
1. 概述 在上一篇博客<Zabbix监控系统部署:源码安装.md>中,主要进行了zabbix最新版的源码编译安装. (博客园地址:https://www.cnblogs.com/liwa ...
- Zabbix监控系统部署:源码安装
1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...
- 基于Linux平台的Lotus Domino 8系统部署五部曲(全视频展示)
基于Linux平台的Lotus Domino 8系统部署五部曲(全视频展示),学习就像看电影 第一部:安装部署 第二部:配置Domino 第三部:Notes8客户端配置 第四部:为Domino系统加装 ...
随机推荐
- man -f/-k [keyword]在fedora 29 中报错nothing appropriate
我们在使用 man 手册的时候,可以使用man -f [keyword]去查询keyword的在线文档,但是这时候会报错:(图来源自网络) 这是因为我们还没有建立 man 手册的索引缓存: 我们可以使 ...
- .NET CORE学习笔记系列(2)——依赖注入[4]: 创建一个简易版的DI框架[上篇]
原文https://www.cnblogs.com/artech/p/net-core-di-04.html 本系列文章旨在剖析.NET Core的依赖注入框架的实现原理,到目前为止我们通过三篇文章从 ...
- python爬虫【实战篇】模拟登录人人网
requests 提供了一个叫做session类,来实现客户端和服务端的会话保持 使用方法 1.实例化一个session对象 2.让session发送get或者post请求 session = req ...
- flink window的early计算
Tumbing Windows:滚动窗口,窗口之间时间点不重叠.它是按照固定的时间,或固定的事件个数划分的,分别可以叫做滚动时间窗口和滚动事件窗口.Sliding Windows:滑动窗口,窗口之间时 ...
- 001_python多进程实例
一.工作中需要执行zk数据对比,需要按照机器进行并发,举例以下的例子 # coding:utf8 # !/usr/bin/python import time from multiprocessing ...
- leetcode 136. Single Number 、 137. Single Number II 、 260. Single Number III(剑指offer40 数组中只出现一次的数字)
136. Single Number 除了一个数字,其他数字都出现了两遍. 用亦或解决,亦或的特点:1.相同的数结果为0,不同的数结果为1 2.与自己亦或为0,与0亦或为原来的数 class Solu ...
- Busybox的syslogd认识与使用
关键词:rcS.start-stop-daemon.syslogd.syslog().klogd.klogctl().syslog.conf./dev/log.facility/level等等. sy ...
- L2-4 部落 (25 分)
在一个社区里,每个人都有自己的小圈子,还可能同时属于很多不同的朋友圈.我们认为朋友的朋友都算在一个部落里,于是要请你统计一下,在一个给定社区中,到底有多少个互不相交的部落?并且检查任意两个人是否属于同 ...
- 私有云方案——利用阿里云云解析实现DDNS
各位都是程序员,工作中是不是遇到个类似情况.在家里研究的一些开源代码或写的一些demo或试验代码,在工作中正好需要参考一下,但是在家里的电脑上. 虽然这些都可以用云 ...
- Day3 Numerical simulation of optical wave propagation之标量衍射理论基本原理(三)
3.标量衍射理论 光源通常不是简单地平面.球面或高斯光束波.对于更一般的情况,必须使用更老练的方法来求解标量赫姆霍兹方程,需要利用格林定理并灵活使用边界条件. 基本问题:给定源平面光场U(x1,y1) ...