选一台机器作为编译服务器。在开始impala编译之前需要操作系统安装编译依赖。
1.1 操作系统
磁盘预留20G空间
1.1.1 挂载系统盘并设置为本地yum源
挂载系统盘(设备为/dev/cdrom)
mount -t auto /dev/cdrom /mnt
在/etc/yum.repo.d/下创建文件 cdrom.repo,内容为
[cdrom]
name=cdrom
baseurl=file:///mnt
gpgcheck=1
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7
enabled=1
新建个bak目录,把其他的repo文件移动到bak目录下,优先使用cdrom安装。
1.1.2 安装JDK
安装 jdk 里面 openjdk-devel的包, openjdk只是jre
yum install -y java-1.8.0-openjdk-devel
修改环境变量 ~/.bash_profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
1.1.3 安装lsb-release
yum install -y redhat-lsb.x86_64
1.1.4 安装mvn
https://maven.apache.org/download.cgi
拷贝到服务器上
tar -xvf apache-maven-3.5.0-bin.tar.gz
mv apache-maven-3.5.0 /usr/local
设置环境变量
Vim ~/.bash_profile
export M2_HOME=/usr/local/apache-maven-3.5.0
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
1.1.5 安装编译依赖
#yum groupinstall "Development Tools"
#yum -y install git ant libevent-devel automake libtool flex bison gcc-c++ openssl-devel make cmake
#yum -y install doxygen.x86_64 glib-devel python-devel bzip2-devel svn libevent-devel krb5-workstation
#yum -y install openldap-devel db4-devel python-setuptools python-pip cyrus-sasl* postgresql postgresql-server ant-nodeps lzo-devel lzop
1.1.6 安装python依赖
下载get-pip.py
https://bootstrap.pypa.io/get-pip.py
#python get-pip.py
#pip install allpairs pytest pytest-xdist paramiko texttable prettytable sqlparse psutil==0.7.1 pywebhdfs gitpython jenkinsapi boto3
1.1.7 设置环境变量
export IMPALA_HOME=/root/impala
这个路径是impala源码根目录所对应的路径
1.2 源码下载
打开impala github ,选择分支 branch-2.8.0,下载为zip文件。然后将文件拷贝到编译服务器,/root目录下。
https://github.com/apache/incubator-impala
unzip incubator-impala-branch-2.8.0.zip
mv incubator-impala-branch-2.8.0 impala