监控软件之open-falcon安装配置篇

2019-07-10

一、open-falcon简介

open-falcon是由小米运维团队,从互联网公司角度为出发点,开发出来的一套面向互联网行业的企业级的开源监控系统,截至2019年7月,open-falcon最新稳定版本为v0.2

二、open-falcon特性

  • 数据采集方式多样灵活:支持agent、snmp、用户主动push、自定义插件等多种方式进行数据采集
  • 高效率报警策略管理
  • 人性化的告警设置
  • dashboard多维度数据展示
  • 模板支持继承的同时支持覆盖策略项
  • server端无需做配置,只需要在client端按照agent则可以自动监控
  • 引入tag概念,通过tag多维度对数据进行查询展示

三、open-falcon系统架构

四、open-falcon组件功能

  • falcon-agent:负责采集监控目标的数据,agent本身有一个http接口,用户可以通过http接口将数据主动push到agent。agent和transfer保持长连接,将采集到的数据上报给transfer。
  • transfer:会将数据分别转发给judge和graph,judge和graph使用一致性hash进行数据的分片。
  • judge:从heartbeat中获取报警策略,进行策略报警判断,并将判断是否告警的事件放进redis队列。
  • alerm:从redis中取出事件,根据配置做告警处理,如发送邮件通知等。
  • graph:负责数据的存储和归档以及数据查询功能。
  • heartbeat:统计agent上报信息,下发报警策略。
  • dashboard: 数据展示,用户配置。

五、open-falcon单机版安装

5.1安装redis

#创建redis工作目录mkdir /home/redis && cd /home/redis
#下载redis程序包:
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
#编译安装
tar -zxvf redis-4.0.9.tar.gz
mv redis-4.0.9 redis4.0.9 && cd redis4.0.9
mkdir logs
make && make install
#修改配置文件
vim redis.conf
bind 0.0.0.0
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "/home/redis/redis4.0.9/logs/redis.log"
#启动redis
redis-server /home/redis/redis4.0.9/redis.conf
#连接测试
redis-cli -h 127.0.0.1 -p 6379

5.2安装mysql

#安装yum-utils
yum -y install yum-utils
#mysql官网上下载mysql的yum源安装包
wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
#添加yum源
rpm -ivh mysql80-community-release-el7-1.noarch.rpm
#开启5.7安装,关闭8.0安装源
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
#yum安装mysql
yum -y install mysql-community-server
#修改mysql配置文件,关闭复杂密码策略
echo "validate-password=OFF" >> /etc/my.cnf
#启动mysql 并加入开机启动项
systemctl start mysqld.service
systemctl status mysqld.service
systemctl enable mysqld.service
#查看默认root密码
grep ‘temporary password‘ /var/log/mysqld.log
#登陆mysql后修改root密码
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘123456‘;
#root用户授权
GRANT ALL  ON *.* TO ‘root‘@‘localhost‘ IDENTIFIED BY ‘123456‘;
GRANT ALL  ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘123456‘;
flush privileges;

5.3初始化表结构

#clone项目至本地git clone  https://github.com/open-falcon/falcon-plus.git#导入表结构
cd ./falcon-plus/scripts/mysql/db_schema/
mysql -uroot -p123456 < 1_uic-db-schema.sql
mysql -uroot -p123456 < 2_portal-db-schema.sql
mysql -uroot -p123456 < 3_dashboard-db-schema.sql
mysql -uroot -p123456 < 4_graph-db-schema.sql
mysql -uroot -p123456 < 5_alarms-db-schema.sql#删除目录
rm -rf falcon-plus/

5.4安装golang

#下载go安装包
https://dl.google.com/go/go1.12.7.linux-amd64.tar.gz
#解压至/home目录下
tar -zxvf go1.12.7.linux-amd64.tar.gz -C /home
#声明PATH
echo "export PATH=$PATH:/home/go/bin" >> /etc/profile
source  /etc/profile
#查看go版本
go version

5.5创建工作目录

export FALCON_HOME=/home
export WORKSPACE=$FALCON_HOME/open-falcon
mkdir -p $WORKSPACE

5.6下载安装包

#下载安装包
wget https://github.com/open-falcon/falcon-plus/releases/download/v0.2.0/open-falcon-v0.2.0.tar.gz
#解压
cd /home/open-falcon
tar  -zxvf open-falcon-v0.2.0.tar.gz

5.7后端启动

#修改配置文件为自己设置的mysql用户和密码
grep -Ilr 3306  ./ | xargs -n1 -- sed -i ‘s/root:/real_user:real_password/g‘
#启动服务
/home/open-falcon/open-falcon start
/home/open-falcon/open-falcon check
#显示如下则全部启动成功

  falcon-graph UP 27685
  falcon-hbs UP 27697
  falcon-judge UP 27707
  falcon-transfer UP 27716
  falcon-nodata UP 27724
  falcon-aggregator UP 27732
  falcon-agent UP 27743
  falcon-gateway UP 27753
  falcon-api UP 27761
  falcon-alarm UP 28201

 

5.8前端启动

#下载dashboard项目至本地
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"
#创建独立的虚拟环境
cd $WORKSPACE/dashboard/
virtualenv ./env
#pip安装依赖
./env/bin/pip install -r pip_requirements.txt -i https://pypi.douban.com/simple
#修改配置文件
vim rrd/config
# 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","123456")
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","123456")
ALARM_DB_NAME = os.environ.get("ALARM_DB_NAME","alarms")
#启动
bash control start
bash control status
#查看日志
bash control tail

5.9安装agent

#将agent目录及启动命令拷贝至客户端上
scp -r agent/ [email protected]192.168.1.66:/home/open-falcon/
scp open-falcon [email protected]192.168.1.66:/home/open-falcon/
#编辑agent配置文件,修改hostname、transfer、heaetbeat配置项
vim agent/config/cfg.json
#启动agent,查看agent状态
./open-falcon start agent
./open-falcon check agent
tailf agent/logs/agent.log
#重载配置文件
curl 127.0.0.1:1988/config/reload

5.10访问测试

agent访问地址:
http://ip:1988/
dashboard访问地址:
http://ip:8081/

六、open-falcon相关资料

中文手册:http://book.open-falcon.com/zh_0_2/项目地址:https://github.com/open-falcon/falcon-plus

  

原文地址:https://www.cnblogs.com/LAlexH/p/11161943.html

时间: 2024-10-06 15:27:07

监控软件之open-falcon安装配置篇的相关文章

实战Nagios NSCA方式监控Linux系统资源使用情况 -- Nagios配置篇 -- 被监控端

Nagios要求被监控端按照约定格式定时将数据发送到Nagios端.监控包括节点和服务2种. 节点监控约定数据格式如下: [<timestamp>] PROCESS_HOST_CHECK_RESULT;<host_name>;<host_status>;<plugin_output> 格式很容易理解,数据提交时间戳,被监控节点名称,节点状态(UP/DOWN/UNREARCHABLE),插件自定义的额外数据.状态具体每个字段的解释如下: 1. timestam

ArcGIS for Android 在Eclipse上的安装配置 (下:安装配置篇)

承接上一篇ArcGIS for Android 在 Eclipse上的安装配置(上:下载篇),本文详细说明一下ArcGIS Runtime SDK for Android 在Eclipse环境下安装配置. 本文主要包括两部分: 一.自动安装(适用于arcgis-android-sdk-v10.2.4 以及之前SDK版本): 二.手动配置(适用于arcgis-android-sdk-v10.2.5 以及之后SDK版本): 以下自动安装以v10.2.4版本为例,手动配置以v10.2.5版本为例,默认

企业管理中电脑监控软件是否有必要安装?

据权威部门调查统计,只有36%的员工在上班时间利用电脑工作,而高达64%的员工在上班时间干与工作无关的事情,其中25%的用于浏览无关网页, 24%的用于QQ聊天,15%的玩游戏,几乎2/3的员工干与工作无关的事情:更有甚者,高达83%的员工离职前都曾将公司资料拷贝带走.如果不对这些 行为采取必要的防护措施,轻则导致带宽滥用,企业的整体工作效率受到影响:重则导致机密外泄,直接造成重大经济损失,甚至法律追究,危害 之大不容小觑. 现如今的工作模式,大部分已经从传统办公转变为互联网办公,员工管理模式也

SVN+FTP服务器搭建(一)——SVN安装配置篇

Subversion是一个自由,开源的版本控制系统.在Subversion管理下,文件和目录可以超越时空.Subversion将文件存放在中心版本库里.这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况.这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节.正因为如此,许多人将版本控制系统当作一种神奇的“时间机器”. 就服务器而言,个人认为最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用. 需要的工具(务必下载服务器

高性能集群软件Keepalived之安装配置篇

一.Keepalived的安装过程 Keepalived的安装非常简单,下面通过源码编译的方式介绍下Keepalived的安装过程.首先打开Keepalived的官方网址http://www.keepalived.org,从中可以下载到各种版本的Keepalived,这里下载的是keepalived-1.2.12.tar.gz.以操作系统环境Centos6.3为例,Keepalived安装步骤如下: [[email protected] app]#tar zxvf keepalived-1.2.

实战Nagios NSCA方式监控Linux系统资源使用情况 -- Nagios配置篇 -- Nagios Server端

关于nrpe的方式网上已经有很多很好的总结,我现在说说在我们系统中如何是用NSCA方式来获取我们需要的被监控节点的资源使用情况信息. 先讲讲Nagios Server端的基本配置: 1. nagios web gui 访问配置,系统中使用的是nagios core中推荐的配置方式,通过apache httpd访问nagios web,安装nagios的时候会自动寻找系统中安装的httpd,把nagios的httpd文件放到httpd的conf.d目录下,这样,只要生成一次nagios web访问

2.监控软件zabbix-客户端安装

环境准备 Zabbix-Agent只要http://www.zabbix.com/download.php中可以下载的Zabbix-Agent均可以搭建Zabbix-Agent环境,本文选用CentOS 6 和Windows 7系统来阐述安装步骤. 要求:必须联网 软件准备 Zabbix客户端对软件的依赖很少,只需要安装Zabbix-Agent即可. Zabbix官网镜像:http://repo.zabbix.com/zabbix/2.4/ 阿里云镜像:http://mirrors.aliyun

2.监控软件zabbix-服务端安装

环境准备 Zabbix服务端环境要求: Red Hat Enterprise Linux CentOS Oracle Linux Debian Ubuntu 注意,要安装的Zabbix服务器需要联网,如果没有网络以下内容不适用. 软件准备 Zabbix服务端安装包 Zabbix官网镜像:http://repo.zabbix.com/zabbix/2.4/ 阿里云镜像:http://mirrors.aliyun.com/zabbix/zabbix/2.4/ 关联软件安装包 数据库 Zabbix-S

React Native01-开始 Windows环境安装配置篇

转载本文章的童鞋请注明原链接. 查阅文档之类的资料,建议到 http://reactnative.cn/ 本人使用环境Win10. 在阅读本文之前,请了解我们安装React Native之前,要安装Python2.7.git.android环境.Visual Studio 2015.nodejs. 1.安装Python 1)下载地址 https://www.python.org/downloads/release/python-2711/ 建议安装2.7.11版本,3.x以上版本不支持. 我安装