开源大数据平台Hadoop和Spark对接OBS操作指南
1 背景介绍
华为云对象存储服务可以提供稳定、安全、高效、易用的云存储服务。当前,华为云OBS可以与Hadoop和Spark大数据生态进行对接,为用户提供计算存储分离的大数据解决方案。该方案具有高性能、低成本的优势,且无扩容问题,使用维护更加方便简洁。
本操作指导书旨在帮助华为云用户在开源大数据平台Hadoop和Spark上快速对接OBSFileSystem组件,更好的使用华为云对象存储OBS进行大数据计算。
2 部署视图
2.1 安装版本
硬件:1master+3core(配置:8U32G,操作系统:Centos7.5)
软件:Hadoop 2.8.3、Spark 2.3.0
2.2 部署视图
开源大数据平台已安装完成,本文主要介绍在Hadoop和Spark平台中通过OBSFileSystem组件与OBS进行对接的操作步骤。对接OBS后,用户的数据即可存储在OBS平台,通过Hadoop和Spark进行大数据计算,实现计算存储分离。
3 开源大数据平台对接OBS操作步骤
3.1 Hadoop平台更新OBSFileSystem
3.1.1 上传obs的jar包
1、 从网址https://bbs.huaweicloud.com/forum/thread-12142-1-1.html 中下载OBSFileSystem后进行解压缩,其中Package目录中包含obs所需要的jar包,列表如下:
2、 将obs所需要的jar包放在/mnt/obsjar目录中
3.1.2 增加hadoop-huaweicloud的jar包
1、 将hadoop-huaweicloud的jar包拷贝到如下各个目录中
(/home/modules/hadoop-2.8.3/share/hadoop/common/lib;
/home/modules/hadoop-2.8.3/share/hadoop/tools/lib)
命令:
cp /mnt/obsjar/hadoop-huaweicloud-2.8.3.13.jar /home/modules/hadoop-2.8.3/share/hadoop/common/lib/.
cp /mnt/obsjar/hadoop-huaweicloud-2.8.3.13.jar /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/.
3.1.3 增加esdk-obs-java的jar包
1、 将esdk-obs-java的jar包拷贝到如下各个目录中
(/home/modules/hadoop-2.8.3/share/hadoop/common/lib;
/home/modules/hadoop-2.8.3/share/hadoop/tools/lib)
命令:
cp /mnt/obsjar/esdk-obs-java-3.0.1.jar /home/modules/hadoop-2.8.3/share/hadoop/common/lib/.
cp /mnt/obsjar/esdk-obs-java-3.0.1.jar /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/.
3.1.4 更换java-xmlbuilder的jar包
1、 备份并删除hadoop-2.8.3所有目录中原有的java-xmlbuilder-0.4.jar(通过find查找后删除)。
命令:
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/common/lib/java-xmlbuilder-0.4.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/java-xmlbuilder-0.4.jar
2、 将java-xmlbuider-1.1.jar包拷贝到如下各个目录中进行替换
命令:
cp /mnt/obsjar/java-xmlbuider-1.1.jar /home/modules/hadoop-2.8.3/share/hadoop/common/lib/.
cp /mnt/obsjar/java-xmlbuider-1.1.jar /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/.
3.1.5 更换okhttp的jar包
1、 备份并删除hadoop-2.8.3所有目录中原有的okhttp-2.4.0.jar(通过find查找后删除)。
命令:
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/common/lib/okhttp-2.4.0.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/okhttp-2.4.0.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/httpfs/tomcat/webapps/webhdfs/WEB-INF/lib/okhttp-2.4.0.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/hdfs/lib/okhttp-2.4.0.jar
2、 将java-xmlbuider-1.1.jar包拷贝到如下各个目录中进行替换
命令:
cp /mnt/obsjar/okhttp-3.10.0.jar /home/modules/hadoop-2.8.3/share/hadoop/common/lib/.
cp /mnt/obsjar/okhttp-3.10.0.jar /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/.
cp /mnt/obsjar/ okhttp-3.10.0.jar /home/modules/hadoop-2.8.3/share/hadoop/httpfs/tomcat/webapps/webhdfs/WEB-INF/lib/.
cp /mnt/obsjar/okhttp-3.10.0.jar /home/modules/hadoop-2.8.3/share/hadoop/hdfs/lib/.
3.1.6 更换okio的jar包
1、 备份并删除hadoop-2.8.3所有目录中原有的okio-1.4.0.jar(通过find查找后删除)。
命令:
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/common/lib/okio-1.4.0.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/okio-1.4.0.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/httpfs/tomcat/webapps/webhdfs/WEB-INF/lib/okio-1.4.0.jar
rm -rf /home/modules/hadoop-2.8.3/share/hadoop/hdfs/lib/okio-1.4.0.jar
2、 将java-xmlbuider-1.1.jar包拷贝到如下各个目录中进行替换
命令:
cp /mnt/obsjar/okio-1.14.0.jar /home/modules/hadoop-2.8.3/share/hadoop/common/lib/.
cp /mnt/obsjar/okio-1.14.0.jar /home/modules/hadoop-2.8.3/share/hadoop/tools/lib/.
cp /mnt/obsjar/ okio-1.14.0.jar /home/modules/hadoop-2.8.3/share/hadoop/httpfs/tomcat/webapps/webhdfs/WEB-INF/lib/.
cp /mnt/obsjar/okio-1.14.0.jar /home/modules/hadoop-2.8.3/share/hadoop/hdfs/lib/.
3.2 Hadoop平台更新配置文件操作步骤
在/home/modules/hadoop-2.8.3/etc/hadoop目录中配置core-site.xml。
注:fs.defaultFS 、fs.obs.access.key、fs.obs.secret.key、fs.obs.endpoint请根据实际情况进行修改。
<property>
<name>fs.defaultFS</name>
<value>hdfs://ecs-bigdata-hdtest-0000.novalocal:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/modules/hadoop-2.8.3/tmp</value>
</property>
<property>
<name>fs.obs.access.key</name>
<value>myaccesskey</value>
</property>
<property>
<name>fs.obs.secret.key</name>
<value>mysecretkey</value>
</property>
<property>
<name>fs.obs.endpoint</name>
<value>myendpoint</value>
</property>
<property>
<name>fs.obs.buffer.dir</name>
<value>/home/modules/data/buf</value>
</property>
<property>
<name>fs.obs.impl</name>
<value>org.apache.hadoop.fs.obs.OBSFileSystem</value>
</property>
<property>
<name>fs.obs.connection.ssl.enabled</name>
<value>false</value>
</property>
<property>
<name>fs.obs.fast.upload</name>
<value>true</value>
</property>
配置成功后即可执行hadoop命令
3.3 Spark平台更新OBSFileSystem
3.3.1 增加obs的jar包
1、 备份并删除spark-2.3.0所有目录中原有的版本较低的java-xmlbuilder-X.X.jar、okhttp-X.X.X.jar和okio-X.X.X.jar(通过find查找后删除)。
命令:
rm -rf /home/modules/spark-2.3.0/jars/java-xmlbuilder*
rm -rf /home/modules/spark-2.3.0/jars/okhttp*
rm -rf /home/modules/spark-2.3.0/jars/okio*
2、 将obs的jar包(hadoop-huaweicloud-2.8.3.13.jar、esdk-obs-java-3.0.1.jar、java-xmlbuilder-1.1.jar、okhttp-3.10.0.jar和okio-1.14.0.jar)拷贝到如下各个目录(/home/modules/spark-2.3.0/jars/)后即可启动spark使用OBS进行大数据计算。
命令:
cp /mnt/obsjar/hadoop-huaweicloud-2.8.3.13.jar /home/modules/spark-2.3.0/jars/.
cp /mnt/obsjar/esdk-obs-java-3.0.1.jar /home/modules/spark-2.3.0/jars/.
cp /mnt/obsjar/java-xmlbuilder-1.1.jar /home/modules/spark-2.3.0/jars/.
cp /mnt/obsjar/okhttp-3.10.0.jar /home/modules/spark-2.3.0/jars/.
cp /mnt/obsjar/okio-1.14.0.jar /home/modules/spark-2.3.0/jars/.
- 点赞
- 收藏
- 关注作者
评论(0)