[大数据] zookeeper 3.4.8移植指南 for Linx 6.0.90 V1.0 ★★★


Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。本次移植以Zookeeper3.4.8为例进行说明。


1 软硬件环境

类别

子项

版本

硬件

硬件

CPU

鲲鹏916

OS

Linx

6.0.90

Kernel

4.19.0

 

 

软件

GCC

7.3.0

OpenJDK

    1.8.0_181

Maven

3.3.9

2 编译环境准备

2.1 安装系统自带的openjdk

java –version查看查看系统是否安装以及java版本号,如果未安装则通过如下命令进行安装





apt-get install openjdk-8-jdk













image.png


2.2 安装Maven下载并安装到指定目录(如/opt/tools/installed):

      wget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

      tar -zxf apache-maven-3.3.9-bin.tar.gz

      mv apache-maven-3.3.9 /opt/        

 

修改maven环境变量,在/etc/profile文件末尾增加下面高亮代码:

       M2_HOME=/opt/tools/installed/apache-maven-3.5.4

       PATH=$M2_HOME/bin:$PATH

       export M2_HOME GCC_HOME PATH


运行下面的命令,是修改的环境变量生效:




source /etc/profile



修改maven配置文件中的:本地仓路径、远程仓等:


      <!--默认在“~/.m2/”目录下,修改成你自己想保存的目录-->

      <localRepository>/path/to/local/repo</localRepository>

      <!--修改成自己搭建的maven仓库,ARM使能后的jar包替换到该仓库-->

      <mirror>

      </mirror>



这里配置的是镜像源地址,请根据自己的需要进行修改。

<mirror>

  <id>mirror</id>

  <mirrorOf>*</mirrorOf>

  <name>cmc-cd-mirror</name>

  <url>镜像源地址</url>

</mirror>

 

2.3 安装ant

1、安装antsvn工具

apt-get install ant libsvn1

 

2、安装automake工具

apt-get install autoconf automake libtool 

3 Zookeeper编译

1、从官网上下载zookeeper-release-3.4.8源码并解压:









wget https://github.com/apache/zookeeper/archive/release-3.4.8.tar.gz











tar -zxf zookeeper-release-3.4.8.tar.gz











cd zookeeper-release-3.4.8




2、由于内网网络代理问题,需要修改build.xml和ivysettings.xml文件

(由于在内网编译,需要配置代理。如果可以接入外网环境,不用修改文件,只需要执行ant编译命令)


http://downloads.sourceforge.net/project/ant-eclipse/ant-eclipse/1.0/ant-eclipse-1.0.bin.tar.bz2,






手动下载ant-eclipse-1.0.bin.tar.bz2,拷贝到${src.dir}/java/ 路径下,并修改build.xml。注释掉如下内容:











image.png






  在${src.dir}/java/lib/目录下载ivy-2.2.0.jar包,并注释掉相关记录。




wget http://repo1.maven.org/maven2/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar



















image.png



修改ivysettings.xml,修改为所需的镜像仓库地址。


3、执行编译:





ant package tar






    编译成功后将在源码目录下./build/目录生成zookeeper-3.4.8.tar.gz包。

4 测试

请参考鲲鹏社区zookeeper移植和测试指导


https://www.huaweicloud.com/kunpeng/software/zookeeper.html





5 参考信息

官方链接:https://zookeeper.apache.org/

6 FAQ

6.1  报错'AM_PATH_CPPUNIT' not found in library

     [exec] configure.ac:37: warning: macro 'AM_PATH_CPPUNIT' not found in library

     [exec] configure.ac:37: error: possibly undefined macro: AM_PATH_CPPUNIT

     [exec]       If this token and others are legitimate, please use m4_pattern_allow.

     [exec]       See the Autoconf documentation.

     [exec] autoreconf: /usr/bin/autoconf failed with exit status: 1

 

解决方法:安装cppunit

wget https://sourceforge.net/projects/cppunit/files/cppunit/1.12.1/cppunit-1.12.1.tar.gz

tar zxvf cppunit-1.12.1.tar.gz

cd cppunit-1.12.1

./configure --build=arm

make

make install