追逐繁星的孩子

お帰りなさい

首页 标签 归档 分类 关于
confluo安装
日期 2018-12-25   |    标签 confluo   |    评论

confluo是最近伯克利RISE Lab开源的一个多数据流实时分布式分析系统,宣称其吞吐量是kafka的4-10倍。应老大要求部署测试一番。

安装

详情请移步官方quick_start

部署环境

  • Centos6.10
  • GCC5.3及以上

centos6和7自带gcc版本都在4.X,因此需要重新编译安装gcc。

# gcc install
# 注意!我这边装的是gcc7的,但是很奇怪这个高版本的gcc在编译的时候报错(暂时不知道什么原因)。后来我换成了gcc5.4的版本就可以了。
wget https://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
tar -xf gcc-7.3.0.tar.gz 
cd gcc-7.3.0
./contrib/download_prerequisites
mkdir gcc-build-7.3.0 
cd gcc-build-7.3.0
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make && make install

# 指定cmake调用的gcc版本(上面gcc7默认安装在了/usr/local/bin)
export CC=/usr/local/bin/gcc 
export CXX=/usr/local/bin/g++
  • CMake3.2及以上

cmake要求3.2以上(我的yum库中cmake版本2.8,所以不建议yum安装)

# cmake install

wget https://cmake.org/files/v3.2/cmake-3.2.0-Linux-x86_64.tar.gz
tar -zxvf cmake-3.2.0-Linux-x86_64.tar.gz
vi /etc/profile
## export CMAKE_HOME=/opt/cmake/cmake-3.2.0-Linux-x86_64
## export PATH=${CMAKE_HOME}/bin:$PATH
  • boost1.58及以上

boost要求1.58以上

# boost install
# 下载地址
# https://www.boost.org/users/history/version_1_58_0.html

tar -zxvf boost_1_58_0.tar.gz
cd boost_1_58_0
./bootstrap.sh --prefix=/usr
./b2
./b2 install
  • Python2.7及以上
  • Java1.7及以上
  • ant
# ant install

wget http://mirrors.shu.edu.cn/apache//ant/binaries/apache-ant-1.10.5-bin.tar.gz
tar -zxvf apache-ant-1.10.5-bin
vi /etc/profile
# export ANT_HOME=/opt/ant/apache-ant-1.10.5
# export PATH=${ANT_HOME}/bin:$PATH

部署

git clone https://github.com/ucbrise/confluo.git
cd confluo
mkdir build
cd build
cmake ..
make && make install

遇到的问题

  1. GCC版本不宜过高,至少我试了GCC7编译失败,但是换成GCC5.4正常
  2. 编译的时候因为依赖的库比较多(什么Java、python等库),有时候会遇到有些库无法下载的情况(比如我就碰到java的gson库下载失败导致后续编译出错)。碰到这种情况需手动下载库。
  3. confluod --address=127.0.0.1 --port=9090 confluo启动的时候报错:"confluod: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by confluod)"。这是因为更新了GCC之后,相应的动态库还是老的gGCC版本的动态库,替换掉这些库就好了。具体请谷歌。