今天安装falcon-plus,下面为用基础环境配置。

centos 6.8  alisql5.6.32   redis-3.2.8 cmake-3.9.1 bison-3.0 openssl-1.0.2h redis-3.2.8

yum环境安装

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel zip unzip ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssh openssl-devel libxslt-devel libevent-devel ntp  libtool-ltdl bison libtool vim-enhanced python wget lsof iptraf strace lrzsz kernel-devel kernel-headers pam-devel Tcl/Tk  cmake  ncurses-devel bison setuptool popt-devel net-snmp screen perl-devel pcre-devel net-snmp screen tcpdump rsync sysstat man  sudo idconfig git system-config-network-tui bind-utils update arpscan tmux elinks numactl iftop  bwm-ng redhat-lsb-core
yum -y install  readline* gcc* xmlto kernel-devel yum* screen vim* psmisc wget lrzsz pcre-devel libtidy libtidy-devel iptraf sysstat libevent libevent-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker tar rrdtool ntp* dos2unix setup* net-snmp-utils net-snmp-devel ruby ruby-devel php-snmp cmake net-snmp-perl net-snmp net-snmp-libs wget elinks make autoconf213 m4 gcc gcc-c++ automake autoconf fontconfig fontconfig-devel libjpeg libjpeg* libjpeg-devel libpng libpng-devel freetype freetype* freetype-devel libxml2 libxml2-devel libdhash libdhash-devel  libxslt* zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2* libc-client libc-client-devel libicu-devel ncurses ncurses-devel xmlrpc-c xmlrpc-c-devel curl curl-devel e2fsprogs e2fsprogs-devel  krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel openldap-clients openldap-servers net-tools deltarpm gd gd-devel pam* gettext gettext-devel  keyutils  compat* mpfr cpp libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libXpm*  php-gd ncurses* libtool*  patch unzip bison-devel bison libcom_err-devel libsepol-devel gtk* libselinux-devel libtiff libtiff*  php-common policycoreutils telnet t1lib t1lib* nasm nasm*

cmake安装

yum remove cmake
wget https://cmake.org/files/v3.9/cmake-3.9.1.tar.gz . tar zxvf
cmake-3.9.1.tar.gz
cd cmake-3.9.1 ./configure make && make install
cmake -version
----------------------
显示如下成功 cmake version 3.9.1

bison安装

yum remove bison*
wget http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz .
tar zxvf bison-3.0.tar.gz
cd bison-3.0
./configure
make && make install bison --version
-------------------- 显示如下成功 bison (GNU Bison) 3.0

openssl安装

wget https://www.openssl.org/source/openssl-1.0.2h.tar.gz .
yum install -y zlib
tar zxf openssl-1.0.2h.tar.gz
cd openssl-1.0.2h
./config shared zlib
make
make install mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo “/usr/local/ssl/lib” >> /etc/ld.so.conf
ldconfig -v openssl version -a
-------------------
显示如下成功

OpenSSL 1.0.2h  3 May 2016

创建用户和所属组

groupadd mysql
useradd -M -s/sbin/nologin -g mysql -r mysql

改变并且使用devtoolset-4 里面的GCC 套装

yum install scl-utils centos-release-scl-rh centos-release-scl
yum install devtoolset-4
yum install devtoolset-4-gcc*
scl enable devtoolset-4 bash
gcc -v
-------------
显示如下成功

gcc version 5.3.1 20160406 (Red Hat 5.3.1-6) (GCC)

下载阿里开源数据库

wget https://github.com/alibaba/AliSQL/archive/master.zip .
unzip master.zip
cd AliSQL-master
cmake -DCMAKE_BUILD_TYPE="Release" -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_EMBEDDED_SERVER=0 -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1  -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_CSV_STORAGE_ENGINE=1  -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 
make && make install

安装环境变量

export PATH=/usr/local/mysql/bin:$PATH
开启TokuDB,不执行会提示:[ERROR] TokuDB: Huge pages are enabled, disable them before continuing
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

配置并启动

cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
cp ./support-files/my-default.cnf /etc/my.cnf
cp ./support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chown -R mysql:mysql /usr/local/mysql vim /etc/profile
export PATH=/usr/local/mysql/bin:$PATH

source /etc/profile
修改启动文件里面的base和data
vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data 启动mysql service mysqld start

开机启动

chkconfig --level 35 mysqld on

设置mysql密码

mysqladmin -u root password

安装redis

tar zxvf redis-3.2.8.tar.gz
cd redis-3.2.8
make
make PREFIX=/usr/local/redis install
mkdir /usr/local/redis/etc
mkdir /usr/local/redis/var
cp redis.conf /usr/local/redis/etc/

修改配置文件

daemonize yes
bind 192.168.20.88
port 6379
timeout 300
loglevel notice
logfile "/usr/local/redis/var/redis.log"
databases 16
dbfilename dump.rdb
dir "/usr/local/redis/var"
#requirepass 123456
maxclients 10000
maxmemory 1024MB appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec

启动redis

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

编译二进制文件

因为我的golang是原安装默认位置在/usr/lib/golang/,所以要在这个目录下建立github.com/open-falcon/
cd /usr/lib/golang/src/github.com/open-falcon/
git clone https://github.com/open-falcon/falcon-plus.git
cd falcon-plus
make all
make pack 建立工作目录
export HOME=/home/work
export WORKSPACE=$HOME/open-falcon
mkdir -p $WORKSPACE
cd /home/work/open-falcon
tar -zxvf /usr/lib/golang/src/github.com/open-falcon/open-falcon-v0.2.0.tar.gz -C /home/work/open-falcon

查找要修改的数据库文件,修改password为你的数据库密码

grep -r root ./*/config/cfg.json

检查redis配置

导入数据库文件

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

启动falcon

./open-falcon start

检查

./open-falcon check

安装登录页

备注: dashboard 和open-falcon 同级目录

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 groupinstall "Development tools" 安装插件
cd $WORKSPACE/dashboard/
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt

修改配置

dashboard的配置文件为: 'rrd/config.py',请根据实际情况修改

## API_ADDR 表示后端api组件的地址
API_ADDR = "http://127.0.0.1:8080/api/v1" ## 根据实际情况,修改PORTAL_DB_*, 默认用户名为root,默认密码为""
## 根据实际情况,修改ALARM_DB_*, 默认用户名为root,默认密码为""

在生产环境启动

先用./env/bin/python wsgi.py 测试启动是否正确

如果报so文件找不到,是因为你自己安装的msyql没有关联系统目录下

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18 (32位)
  ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18 (64位)

生产方式启动
bash control start

访问

open http://IP:8081 in your browser.

注册

登陆

页面

-------------------------------------------

在其他机器安装agent

复制一份agent出来,修改里面的2处配置文件

vim agent/config/cfg.json

把图里0.0.0.0替换成open-falcon也就是server端的地址

然后打包此agent

tar zcvf agent.tar.gz agent

把这个修改完的agent可以放到任意你需要采集的机器上去,启动agengt(open-falcon是server的你可以复制一个过去)

./open-falcon start agent

open-falcon(v0.2)部署手册(源码编译)的更多相关文章

  1. WordPress安装篇(5):源码编译安装LNMP并部署WordPress

    与YUM方式安装相比,源码编译安装方式更灵活,安装过程中能自定义功能和参数,特别是在批量部署服务器又要求软件版本及配置一致时,源码编译安装的优势很明显.本文介绍如何通过源码编译方式安装Nginx1.1 ...

  2. Spark1.0.0 源码编译和部署包生成

    问题导读:1.如何对Spark1.0.0源码编译?2.如何生成Spark1.0的部署包?3.如何获取包资源? Spark1.0.0的源码编译和部署包生成,其本质只有两种:Maven和SBT,只不过针对 ...

  3. Zabbix监控系统部署:源码安装

    1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...

  4. Eureka 源码编译 部署

    Netflix开源的Eureka 是使用Gradle 构建的,所以我们也使用Gradle来编译它   所需环境 Eclipse , Gradle , Tomcat ,git 这些插件如果己经安装可直接 ...

  5. 脚本自动化部署varnish源码包

    #!bin/bash#功能:自动化部署 varnish 源码包软件,运行脚本前,需提前下载 varnish-5.0.0.tar.gz#作者:liusingbonyum -y install gcc r ...

  6. Shell脚本一键部署——源码编译安装MySQL及自动补全工具

    Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...

  7. 部署 LNMP(源码安装版本)shell脚本

    #!/bin/bash # 一键部署 LNMP(源码安装版本) menu() { clear echo " ##############‐‐‐‐Menu‐‐‐‐##############& ...

  8. 源码编译配置lnmp部署zabbix

    环境说明: [root@wcy ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@wcy ~]# uname -a Linux ...

  9. Httpd服务进阶知识-LAMP源码编译安装

    Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理  ...

  10. Nginx-入门(源码编译安装http://nginx.org/en/download.html)

    比较早的时候  web主要经典组合--->LAMP 近几年---->nginx后来居上--->LNMP=LEMP   Nginx = Engine x Nginx和Apache 都是 ...

随机推荐

  1. unity3d资源打包总结

    http://www.manew.com/blog-33734-12973.html unity 打包的时候会把下面几个文件资源打进apk或者ipa包里面 1. Asset下的所有脚本文件 2. As ...

  2. 《java.util.concurrent 包源码阅读》25 Fork/Join框架之Fork与Work-Stealing(重写23,24)

    在写前面两篇文章23和24的时候自己有很多细节搞得不是很明白,这篇文章把Fork和Work-Stealing相关的源代码重新梳理一下. 首先来看一些线程池定义的成员变量: 关于scanGuard: v ...

  3. javascript图片隐写术,感觉可以用它来干点有想法的事情

    1.什么是图片隐写术? 权威的wiki说法是“隐写术是一门关于信息隐藏的技巧与科学,所谓信息隐藏指的是不让除预期的接收者之外的任何人知晓信息的传递事件或者信息的内容.”,图片隐写术简而言之就是利用图片 ...

  4. bundles.Add( )下无法绑定后缀为min.css的文件

    1.问题描述: 在绑定css的时候,除了后缀名为.min.css的文件,在render.style()不显示外,其他的css都正常加载, 2.解决办法: 这个是我在调试了几遍之后发现的规律,然后解决办 ...

  5. Mysql实现企业级数据库主从复制架构实战

    场景 公司规模已经形成,用户数据已成为公司的核心命脉,一次老王一不小心把数据库文件删除,通过mysqldump备份策略恢复用了两个小时,在这两小时中,公司业务中断,损失100万,老王做出深刻反省,公司 ...

  6. OpenStack搭建遇到的问题

    前言:对于像我这种新手来说,搭建OpenStack真的很费劲,因为我总是每配置一个服务,我就想弄懂,后来搭建过程很累人,因此我想了个办法,等我搭建出来再学.我这里将记录我从开始之初到我学习,再到我毕业 ...

  7. 实践作业2:黑盒测试实践——编写自动化脚本并拍摄测试过程视频 Day 6

    下午下课之后小组成员一起交流了一下实验过程遇到的一些问题,并汇总了下各个项目完成情况 该实验目前(写博客是时间)基本完成,具体情况如下 (1)分析系统需求 .(done) (2)设计测试用例.(don ...

  8. 【NOIP2016提高组】蚯蚓

    https://www.luogu.org/problem/show?pid=2827 首先考虑暴力:每次都是拿最长的蚯蚓,容易想到用堆.每次除拿出来的以外所有的蚯蚓都增长,容易想到用一个懒惰标记来记 ...

  9. Eureka学习例子

    Eureka学习 Spring Cloud下有很多工程: Spring Cloud Config:依靠git仓库实现的中心化配置管理.配置资源可以映射到Spring的不同开发环境中,但是也可以使用在非 ...

  10. 【技能大赛笔记01】Zigbee点对点按键控制程序开发

    [技能大赛笔记01]Zigbee点对点按键控制程序开发 --2017年"物联网物联网技术应用与维护"任务五题1(中职组) 1.题目要求 2.工程文件 在比赛中,提供了一个基于Bas ...