impala debug前期部署

一.准备LLVM
LLVM :从nobida143拷贝 scp -rq nobida143:/opt/llvm-3.3 /opt/
1. 添加LLVM_HOME vim ~/.bashrc 增加一行 export LLVM_HOME=/opt/llvm-3.3
二.准备BOOST
2. BOOST : 从nobida143拷贝 scp -rq nobida143:/usr/local/lib/boost /usr/local/lib/
3. vim /etc/ld.so.conf.d/boost-x86_64.conf 增加一行/usr/local/lib/boost
4. ldconfig
三.准备Maven
四.Impala编译(hadoop,hive使用的是impala中的thirdparty中带的)
5. cd /home/data2/wangyh/Impala-cdh5-2.0_5.2.0/
6. 修改impala-config.sh
export HIVE_HOME=$IMPALA_HOME/thirdparty/hive-${IMPALA_HIVE_VERSION}
export HIVE_CONF_DIR=$HIVE_HOME/conf
export HADOOP_HOME=$IMPALA_HOME/thirdparty/hadoop-${IMPALA_HADOOP_VERSION}
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
7. source bin/impala-config.sh
8. ./build-all.sh –notests –noclean
9. 修改thirdparty/hadoop-2.5.0-cdh5.2.0/etc/hadoop core-site.xml hdfs-site.xml slaves文件(红色标红的是需要修改的)
core-site.xml 如下:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://nobida145:8020</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>10080</value>
</property>
<property>
<name>io.native.lib.available</name>
<value>true</value>
</property>
</configuration>


hdfs-site.xml如下:
<configuration>
<property>
<name>fs.checkpoint.dir</name>
<value>/home/data3/secondarynamenode</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/data1/hadoop-cdh5.2-nn</value>
</property>
<property>
<name>dfs.datanode.data.dir</name> <value>/home/data6/hdfs-data,/home/data7/hdfs-data,/home/data8/hdfs-data,/home/data9/hdfs-data</value>
</property>
<property>
<name>dfs.datanode.hdfs-blocks-metadata.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.client.use.legacy.blockreader.local</name>
<value>false</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.support.append</name>
<value>true</value>
</property>
<property>
<name>dfs.block.local-path-access.user</name>
<value>root</value>
</property>
<property>
<name>dfs.client.read.shortcircuit</name>
<value>true</value>
</property>

<property>
<name>dfs.domain.socket.path</name>
<value>/var/run/hadoop-hdfs/dn._PORT</value>
</property>
<property>
<name>dfs.client.file-block-storage-locations.timeout</name>
<value>10000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/data1/hdfs-data</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>

<!-- fs.default.name - 这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。-->
<!-- dfs.data.dir - 这是DataNode结点被指定要存储数据的本地文件系统路径。DataNode结点上的这个路径没有必要完全相同,因为每台机器的环境很可能是不一样的。但如果每台机器上的这个路径都是统一配置的话,会使工作变得简单一些。默认的情况下,它的值hadoop.tmp.dir, 这个路径只能用于测试的目的,因为,它很可能会丢失掉一些数据。所以,这个值最好还是被覆盖。
dfs.name.dir - 这是NameNode结点存储hadoop文件系统信息的本地系统路径。这个值只对NameNode有效,DataNode并不需要使用到它。上面对于/temp类型的警告,同样也适用于这里。在实际应用中,它最好被覆盖掉。-->
<!—hadoop.tmp.dir 是hadoop文件系统依赖的基础配置,很多路径都依赖它。如果hdfs-site.xml中不配置namenode和datanode的存放位置,默认就放在这个路径中-->

slaves如下:
nobida145
10. 修改 thirdparty/ hive-0.13.1-cdh5.2.0/conf下的hive-site.xml
hive-site.xml如下:(请见附件hive-site.xml)

11. 修改 bin/set-classpath.sh
CLASSPATH=\
$IMPALA_HOME/conf:\
$IMPALA_HOME/fe/src/test/resources:\
$IMPALA_HOME/fe/target/classes:\
$IMPALA_HOME/fe/target/dependency:\
$IMPALA_HOME/fe/target/test-classes:\
${HIVE_HOME}/lib/datanucleus-api-jdo-3.2.1.jar:\
${HIVE_HOME}/lib/datanucleus-core-3.2.2.jar:\
${HIVE_HOME}/lib/datanucleus-rdbms-3.2.1.jar:
增加一行,$IMPALA_HOME/conf:\,同时在$IMPALA_HOME下建立conf文件夹,将core-site.xml hdfs-site.xml hive-site.xml三个文件考到conf目录下

12. Hadoop namenode –format 并启动dfs,hive
13. bin/start-impala-cluster.py -s 1 启动impala
五.遇到的错误
1.impala不能读写hdfs,原因 bin/set-classpath.sh中set-classpathsh 增加了conf后面忘记写:
2.datanode或者namenode启动不起来,把hadoop.tmp.dir对应的文件夹清空,dfs.datanode.data.dir对应的文件夹删除(根据日志具体情况具体分析)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值