返回顶部
首页 > 资讯 > 数据库 >open-falcon搭建
  • 635
分享到

open-falcon搭建

2024-04-02 19:04:59 635人浏览 独家记忆
摘要

环境准备yum install -y Redisyum install -y Mysql-server###安装并开机自启### export HOME=/

环境准备

yum install -y Redis

yum install -y Mysql-server
###安装并开机自启###
 
export HOME=/home/work
export WORKSPACE=$HOME/open-falcon
mkdir -p $WORKSPACE
cd $WORKSPACE
git clone https://GitHub.com/open-falcon/scripts.git
cd ./scripts/
mysql -h localhost -u root --passWord="" < db_schema/graph-db-schema.sql
mysql -h localhost -u root --password="" < db_schema/dashboard-db-schema.sql
 
mysql -h localhost -u root --password="" < db_schema/portal-db-schema.sql
mysql -h localhost -u root --password="" < db_schema/links-db-schema.sql
mysql -h localhost -u root --password="" < db_schema/uic-db-schema.sql

####数据库密码为空####

mkdir ./tmp

导入安装包open-falcon-v0.1.0.tar.gz

shell脚本执行

        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
 

安装Go环境

cd ~
wget Http://dinp.qiniudn.com/go1.4.1.linux-amd64.tar.gz
tar zxf go1.4.1.linux-amd64.tar.gz
mkdir -p workspace/src
echo "" >> .bashrc
echo 'export GOROOT=$HOME/go' >> .bashrc
echo 'export GOPATH=$HOME/workspace' >> .bashrc
echo 'export PATH=$GOROOT/bin:$GOPATH/bin:$PATH' >> .bashrc
echo "" >> .bashrc
source .bashrc

接下来clone代码,以备后用

cd $GOPATH/src
mkdir github.com
cd github.com
git clone --recursive https://github.com/open-falcon/of-release.git

安装agent(采集机器监控指标)

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

###所有组件配置文件必须叫cfg.JSON,可以基于cfg.example.json修改

open-falcon搭建

./control start 启动进程
./control stop 停止进程
./control restart 重启进程
./control status 查看进程状态
./control tail 用tail -f的方式查看var/app.log
./falcon-agent –check检查是否可以正常跑在当前机器
 
 
安装Transfer(数据转发服务)
Cd transfer
vim cfg.json
 
{
    "debug": false,
    "minStep": 30,
    "http": {
        "enabled": true,
        "listen": "0.0.0.0:6060"
    },
    "rpc": {
        "enabled": true,
        "listen": "0.0.0.0:8433"
    },
    "Socket": {
        "enabled": false,
        "listen": "0.0.0.0:4444",
        "timeout": 3600
    },
    "judge": {
        "enabled": true,
        "batch": 200,
        "connTimeout": 1000,
        "callTimeout": 5000,
        "maxConns": 32,
        "maxIdle": 32,
        "replicas": 500,
        "cluster": {
            "judge-00" : "127.0.0.1:6080"
        }
    },
    "graph": {
        "enabled": true,
        "batch": 200,
        "connTimeout": 1000,
        "callTimeout": 5000,
        "maxConns": 32,
        "maxIdle": 32,
        "replicas": 500,
        "cluster": {
            "graph-00" : "127.0.0.1:6070"
        }
    },
    "tsdb": {
        "enabled": true,
        "batch": 200,
        "connTimeout": 1000,
        "callTimeout": 5000,
        "maxConns": 32,
        "maxIdle": 32,
        "retry": 3,
        "address": "127.0.0.1:8088"
    }
}
 
启动
./control start
curl -s "127.0.0.1:6060/health"  校验
 
cd graph
mv cfg.example.json cfg.json
vim cfg.json
{
        "debug": false,
        "http": {
                "enabled": true,
                "listen": "0.0.0.0:6071"
        },
        "rpc": {
                "enabled": true,
                "listen": "0.0.0.0:6070"
        },
        "rrd": {
                "storage": "/home/work/data/6070"
        },
        "db": {
                "dsn": "root:@tcp(127.0.0.1:3306)/graph?loc=Local&parseTime=true",
                "maxIdle": 4
        },
        "callTimeout": 5000,
        "migrate": {
                "enabled": false,
                "concurrency": 2,
                "replicas": 500,
                "cluster": {
                        "graph-00" : "127.0.0.1:6070"
                }
        }
}
 
./control start
curl -s "127.0.0.1:6071/health"
 
cd ../queph
mv cfg.example.json cfg.json
vim cfg.json
{
    "debug": "false",
    "http": {
        "enabled":  true,
        "listen":   "0.0.0.0:9966"
    },
    "graph": {
        "connTimeout": 1000,
        "callTimeout": 5000,
        "maxConns": 32,
        "maxIdle": 32,
        "replicas": 500,
        "cluster": {
            "graph-00": "127.0.0.1:6070"
        }
    },
    "api": {
        "query": "http://127.0.0.1:9966",
        "dashboard": "http://127.0.0.1:8081",
        "max": 500
服务启动后,可以通过日志查看服务的运行状态,日志文件地址为./var/app.log。可以通过查询脚本./scripts/query读取绘图数据,如 运行 bash ./scripts/query "ur.endpoint" "ur.counter"可以查询Endpoint="ur.endpoint" & Counter="ur.counter"对应的绘图数据。
 
注意: 请确保 graph.replicas和graph.cluster 的内容与transfer的配置完全一致
 
 
安装dashboard
yum install -y python-virtualenv
cd /path/to/dashboard/
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt
###这里MySQL-Python会出错。在pip_requirements.txt里去掉MySQL-Python单独安装。参考地址:http://blog.csdn.net/winsonyuan/article/details/65447796
 
vim ./gunicorn.conf
vim ./rrd/config.py
 
workers = 4
bind = ':8081'
proc_name = 'falcon-dashboard-opensource'
pidfile = '/tmp/falcon-dashboard-opensource.pid'
limit_request_field_size = 0
limit_request_line = 0
 
#-*-coding:utf8-*-
import os
 
#-- dashboard db config --
DASHBOARD_DB_HOST = "127.0.0.1"
DASHBOARD_DB_PORT = 3306
DASHBOARD_DB_USER = "root"
DASHBOARD_DB_PASSWD = ""
DASHBOARD_DB_NAME = "dashboard"
 
#-- graph db config --
GRAPH_DB_HOST = "127.0.0.1"
GRAPH_DB_PORT = 3306
GRAPH_DB_USER = "root"
GRAPH_DB_PASSWD = ""
GRAPH_DB_NAME = "graph"
 
#-- app config --
DEBUG = True
SECRET_KEY = "secret-key"
SESSioN_COOKIE_NAME = "open-falcon"
PERMANENT_SESSION_LIFETIME = 3600 * 24 * 30
SITE_COOKIE = "open-falcon-ck"
 
#-- query config --
QUERY_ADDR = "http://127.0.0.1:9966"
 
BASE_DIR = "/home/work/open-falcon/dashboard/"
LOG_PATH = os.path.join(BASE_DIR,"log/")
 
try:
    from rrd.local_config import *
except:
pass
 
邮件短信接口这里需要单独安装falcon-mail-provider的安装包
{
    "debug": true,
    "http": {
        "listen": "10.0.0.60:4000",
        "token": ""
    },
    "smtp": {
        "addr": "smtp.qq.com:587",
        "username": "XXXX@qq.com",
        "password": "eahqkylmljenbfge",==》这里有个授权码问题。
        "from": "XXXX@qq.com"
    }
}
~  ./control start
 
发送一份测试邮件:curl http://10.0.0.60:4000/sender/mail -d tos=XXXX@qq.com&subject=helloworld&content=test
 
安装sender(调用公司提供的邮件、短信接口)
Cd sender
Vi cfg.json
{
    "debug": true,
    "http": {
        "enabled": true,
        "listen": "0.0.0.0:6066"
    },
    "redis": {
        "addr": "127.0.0.1:6379",
        "maxIdle": 5
    },
    "queue": {
        "sms": "/sms",
        "mail": "/mail"
    },
    "worker": {
        "sms": 10,
        "mail": 50
    },
    "api": {
        "sms": "http://10.0.0.60:8000/sms",
        "mail": "http://10.0.0.60:4000/sender/mail"
    }
}
 
curl 127.0.0.1:6066/health
 
安装FE(UIC  WEB入口)
Cd fe
Vi cfg.json
{
    "log": "debug",
    "company": "PJwuliu",        ==》这里是公司名称用于生成二维码
    "http": {
        "enabled": true,
        "listen": "0.0.0.0:1234"
    },
    "cache": {
        "enabled": true,
        "redis": "127.0.0.1:6379",
        "idle": 10,
        "max": 1000,
        "timeout": {
            "conn": 10000,
            "read": 5000,
            "write": 5000
        }
    },
    "salt": "fdfdfdsfsdfsfdsfs",
    "canReGISter": true,
    "ldap": {
        "enabled": false,
        "addr": "ldap.example.com:389",
        "baseDN": "dc=example,dc=com",
        "bindDN": "cn=mananger,dc=example,dc=com",
        "bindPasswd": "12345678",
        "userField": "uid",
        "attributes": ["sn","mail","telephoneNumber"]
    },
    "uic": {
        "addr": "root:@tcp(127.0.0.1:3306)/uic?charset=utf8&loc=Asia%2FChongqing",
        "idle": 10,
        "max": 100
    },
    "shortcut": {
        "falconPortal": "http://10.0.0.60:5050/",
        "falconDashboard": "http://10.0.0.60:8081/",
        "falconAlarm": "http://10.0.0.60:9912/"
}
 
安装portal(配置报警策略)
# yum install -y python-virtualenv
 
$ cd /path/to/portal/
$ virtualenv ./env
 
$ ./env/bin/pip install -r pip_requirements.txt
vi ../portal/frame/config.py
# -*- coding:utf-8 -*-
__author__ = 'Ulric Qin'
 
# -- app config --
DEBUG = True
 
# -- db config --
DB_HOST = "127.0.0.1"
DB_PORT = 3306
DB_USER = "root"
DB_PASS = ""
DB_NAME = "falcon_portal"
 
# -- cookie config --
SECRET_KEY = "4e.5tyg8-u9iojds"
SESSION_COOKIE_NAME = "falcon-portal"
PERMANENT_SESSION_LIFETIME = 3600 * 24 * 30
 
UIC_ADDRESS = {
    'internal': 'http://10.0.0.60:1234',
    'external': 'http://10.0.0.60:1234',
}
 
UIC_TOKEN = ''
 
MAINTAINERS = ['root']
CONTACT = 'ulric.qin@gmail.com'
 
COMMUnity = True
 
try:
    from frame.local_config import *
except Exception, e:
    print "[warning] %s" % e
 
cd hbs
 
{
    "debug": true,
    "database": "root:@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true",
    "hosts": "",
    "maxIdle": 100,
    "listen": ":6030",
    "trustable": [""],
    "http": {
        "enabled": true,
        "listen": "0.0.0.0:6031"
    }
}
 
Cd judge~(告警判断)
{
    "debug": true,
    "debugHost": "nil",
    "remain": 11,
    "http": {
        "enabled": true,
        "listen": "10.0.0.60:6081"
    },
    "rpc": {
        "enabled": true,
        "listen": "0.0.0.0:6080"
    },
    "hbs": {
        "servers": ["10.0.0.60:6030"],
        "timeout": 300,
        "interval": 60
    },
    "alarm": {
        "enabled": true,
        "minInterval": 300,
        "queuePattern": "event:p%v",
        "redis": {
            "dsn": "127.0.0.1:6379",
            "maxIdle": 5,
            "connTimeout": 5000,
            "readTimeout": 5000,
            "writeTimeout": 5000
        }
    }
}
 
curl 127.0.0.1:6081/health
 
cd links
virtualenv ./env
 
./env/bin/pip install -r pip_requirements.txt
 
# -*- coding:utf-8 -*-
__author__ = 'Ulric Qin'
 
# -- app config --
DEBUG = True
 
# -- db config --
DB_HOST = "10.0.0.60"
DB_PORT = 3306
DB_USER = "root"
DB_PASS = ""
DB_NAME = "falcon_links"
 
# -- cookie config --
SECRET_KEY = "4e.5tyg8-u9ioj"
SESSION_COOKIE_NAME = "falcon-links"
PERMANENT_SESSION_LIFETIME = 3600 * 24 * 30
 
try:
    from frame.local_config import *
except Exception, e:
print "[warning] %s" % e
 
安装alarm(处理报警event),judge产生的报警event写入redis,alarm从redis读取处理
 
{
    "debug": true,
    "uicToken": "",
    "http": {
        "enabled": true,
        "listen": "10.0.0.60:9912"
    },
    "queue": {
        "sms": "/sms",
        "mail": "/mail"
    },
    "redis": {
        "addr": "127.0.0.1:6379",
        "maxIdle": 5,
        "highQueues": [
            "event:p0",
            "event:p1",
            "event:p2",
            "event:p3",
            "event:p4",
            "event:p5"
        ],
        "lowQueues": [
            "event:p6"
        ],
        "userSmsQueue": "/queue/user/sms",
        "userMailQueue": "/queue/user/mail"
    },
    "api": {
        "portal": "http://10.0.0.60:5050",
        "uic": "http://10.0.0.60:1234",
        "links": "http://10.0.0.60:5090"
    }
}
 
安装task(定时任务)
{
    "debug": false,
    "http": {
        "enable": true,
        "listen": "0.0.0.0:8002"
    },
    "index": {
        "enable": false,
        "dsn": "root:root@tcp(127.0.0.1:3306)/graph?loc=Local&parseTime=true",
        "maxIdle": 4,
        "autoDelete": false,
        "cluster":{
            "test.hostname01:6071" : "0 0 0 ? * 0-5",
            "test.hostname02:6071" : "0 30 0 ? * 0-5"
        }
    },
    "collector" : {
        "enable": true,
        "destUrl" : "http://127.0.0.1:1988/v1/push",
        "srcUrlFmt" : "http://%s/statistics/all",
        "cluster" : [
            "transfer,open-falcon.te:6060",
            "graph,open-falcon.te:6071",
            "task,open-falcon.te:8001"
        ]
    }
}
 
安装nodata(监测监控数据的上报异常)
{
    "debug": true,
    "http": {
        "enabled": true,
        "listen": "0.0.0.0:6090"
    },
    "query":{
        "connectTimeout": 5000,
        "requestTimeout": 30000,
        "queryAddr": "127.0.0.1:9966"
    },
    "config": {
        "enabled": true,
        "dsn": "root:@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true&wait_timeout=604800",
        "maxIdle": 4
    },
    "collector":{
        "enabled": true,
        "batch": 200,
        "concurrent": 10
    },
    "sender":{
        "enabled": true,
        "connectTimeout": 5000,
        "requestTimeout": 30000,
        "transferAddr": "127.0.0.1:6060",
        "batch": 500,
        "block": {
            "enabled": false,
            "threshold": 32
        }
    }
}
 
安装aggregator  (集群聚合模块)
{
    "debug": true,
    "http": {
        "enabled": true,
        "listen": "0.0.0.0:6055"
    },
    "database": {
        "addr": "root:@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true",
        "idle": 10,
        "ids": [1, -1],
        "interval": 55
    },
    "api": {
        "hostnames": "http://127.0.0.1:5050/api/group/%s/hosts.json",
        "push": "http://127.0.0.1:6060/api/push",
        "graphLast": "http://127.0.0.1:9966/graph/last"
    }
}


至此open-falcon已经搭建完成。现在open-falcon刚发布不久plus版,有时间再去看看吧!
            祝玩的开心!!!
            
    官网地址:
                https://github.com/open-falcon-arcHive/of-release
您可能感兴趣的文档:

--结束END--

本文标题: open-falcon搭建

本文链接: https://lsjlt.com/news/41207.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • open-falcon搭建
    环境准备yum install -y redisyum install -y mysql-server###安装并开机自启### export HOME=/...
    99+
    2024-04-02
  • linux中如何安装使用open-falcon agent
    这篇文章将为大家详细讲解有关linux中如何安装使用open-falcon agent,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。open-falcon agent项目之前是一个独立项目名字叫falco...
    99+
    2023-06-27
  • Linux下如何部署Open-Falcon监控系统
    本篇内容介绍了“Linux下如何部署Open-Falcon监控系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Open-Falcon 是人...
    99+
    2023-06-27
  • 超详细open vn搭建之Linux亲测可用
    目录 1      安装 2     配置 2.1      CA证书 2.2      Server证书 2.3      客户端证书 2.4      归档证书 3      配置 3.1      配置服务端 3.2      wi...
    99+
    2023-08-31
    linux 运维 服务器
  • 开源系统监控工具Nagios、Zabbix和Open-Falcon的功能特性汇总及优缺点比较的示例分析
    开源系统监控工具Nagios、Zabbix和Open-Falcon的功能特性汇总及优缺点比较的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Nagios...
    99+
    2023-06-05
  • centos7搭建gitlab服务器搭建
    在当今的技术领域,代码管理和版本控制变得越来越重要。为了组织和管理代码,越来越多的开发团队开始使用GitLab进行代码管理。GitLab是一个流行的基于Git的开源代码管理平台,提供了多种功能,例如版本控制、问题跟踪、CI/CD等。在本篇文...
    99+
    2023-10-22
  • Oracle 11gR2 RAC搭建(虚拟机搭建)
    安装环境说明与虚拟机规化: 安装环境主机操作系统:windows 10 虚拟机VMware15:两台CentOS-7.6Oracle Database software: Oracle11gR2 (11.2...
    99+
    2024-04-02
  • [Open-source tool] 可搭配PHP和SQL的表單開源工具_Form tools(1):簡介和建置
    Form tools是一套可搭配PHP和SQL的表單開源工具,可讓開發者靈活運用,同時其有數個表單模板和應用模組供挑選,方便且彈性。Form tools已開發超過20年,為不同領域的需求者或開發者提供一個自由和開放的平台,使他們可建構自...
    99+
    2023-09-05
    php 开发语言 sql 开源软件 linux
  • mongodb搭建
    最新版mongodb3.0的搭建,最简单的是新建mongodb-org-3.0.repo的yum源(官网www.mongodb.org)  [root@n2 ~]# cat /etc/yum.re...
    99+
    2024-04-02
  • zabbix搭建
    1、添加zabbix用户groupadd zabbix -g 201useradd -g zabbix -u 201 -m zabbixyum install net-snmp-devel curl cur...
    99+
    2024-04-02
  • Oracle搭建
    简介:Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上...
    99+
    2024-04-02
  • MHA 搭建
    备注: 此处搭建的MHA 为 一主一从的环境manager:192.168.162.132master:192.168.162.134 node134slave:192.168.162.133 node13...
    99+
    2024-04-02
  • gerrit搭建
    gerrit web搭建手册安装openjdk 7# apt-get install openjdk-7-jdk 安装apache2# apt-get install apache2 安...
    99+
    2024-04-02
  • keybox 搭建
      keybox是基于web的ssh终端管理软件,在生产和测试环境中,服务器一般放在内网中,想要通过外网远程连接就需要先连接有外网的代理服务器,然后再ssh内网的机器,有了keybox就免去其中的...
    99+
    2024-04-02
  • wordpres搭建
    准备篇一个域名可以去万网,新网,...,...一个云空间(最好买香港主机,或者外国的,不用备案)然后将域名添加解析到自己的云空间的ip地址即添加一条A记录安装篇下载wordpress安装包。安装lamp:C...
    99+
    2024-04-02
  • oracle11g_dataguard搭建
      ...
    99+
    2024-04-02
  • Inception 搭建
    Inception安装 Inception是集审核、执行、回滚于一体的一个自动化运维系统,它是根据MySQL代码修改过来的,用它可以很明确的,详细的,准确的审核MySQL的SQL语句,它的工作模...
    99+
    2024-04-02
  • suiteCrm搭建
    php sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm rpm -Uvh https://mirror.webtatic.com/yum/e...
    99+
    2023-09-02
    php nginx 服务器
  • LNMP搭建
    一、编译安装nginx1.1 关闭防火墙,将安装nginx所需软件包传到/opt目录下并解压1.2 安装依赖包1.3 创建运行用户与组1.4 编译安装Nginx1.5 检查配置文件是否配置...
    99+
    2023-09-02
    nginx 运维 服务器
  • microk8s 搭建
    microk8s不通过虚拟机但与主机隔离方式,快速轻巧安装Kubernetes。通过在单个快照包中打包Kubernetes,Docker.io,iptables和CNI的所有上游二进制文件来实现此隔离。 snap包是一个应用程序容器 - 您...
    99+
    2023-01-31
    microk8s
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作