开源大数据平台Hadoop和Spark对接OBS操作指南

举报
lanxinliuli 发表于 2019/06/17 09:43:23 2019/06/17
【摘要】 1 背景介绍华为云对象存储服务可以提供稳定、安全、高效、易用的云存储服务。当前,华为云OBS可以与Hadoop和Spark大数据生态进行对接,为用户提供计算存储分离的大数据解决方案。该方案具有高性能、低成本的优势,且无扩容问题,使用维护更加方便简洁。本操作指导书旨在帮助华为云用户在开源大数据平台Hadoop和Spark上快速对接OBSFileSystem组件,更好的使用华为云对象存...

1      背景介绍

华为云对象存储服务可以提供稳定、安全、高效、易用的云存储服务。当前,华为云OBS可以与HadoopSpark大数据生态进行对接,为用户提供计算存储分离的大数据解决方案。该方案具有高性能、低成本的优势,且无扩容问题,使用维护更加方便简洁。

本操作指导书旨在帮助华为云用户在开源大数据平台HadoopSpark上快速对接OBSFileSystem组件,更好的使用华为云对象存储OBS进行大数据计算。

2      部署视图

2.1      安装版本

硬件:1master+3core(配置:8U32G,操作系统:Centos7.5

软件:Hadoop 2.8.3Spark 2.3.0

2.2      部署视图

开源大数据平台已安装完成,本文主要介绍在HadoopSpark平台中通过OBSFileSystem组件与OBS进行对接的操作步骤。对接OBS后,用户的数据即可存储在OBS平台,通过HadoopSpark进行大数据计算,实现计算存储分离。

 1.png

2.png



3      开源大数据平台对接OBS操作步骤

3.1      Hadoop平台更新OBSFileSystem

3.1.1        上传obsjar

1、  从网址https://bbs.huaweicloud.com/forum/thread-12142-1-1.html 中下载OBSFileSystem后进行解压缩,其中Package目录中包含obs所需要的jar包,列表如下:

3.png

2、  obs所需要的jar包放在/mnt/obsjar目录中

3.1.2        增加hadoop-huaweicloudjar

1、  hadoop-huaweicloudjar包拷贝到如下各个目录中

/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-javajar

1、  esdk-obs-javajar包拷贝到如下各个目录中

/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-xmlbuilderjar

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        更换okhttpjar

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        更换okiojar

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.keyfs.obs.secret.keyfs.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命令

4.png

3.3      Spark平台更新OBSFileSystem

3.3.1        增加obsjar

1、  备份并删除spark-2.3.0所有目录中原有的版本较低的java-xmlbuilder-X.X.jarokhttp-X.X.X.jarokio-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、  obsjar包(hadoop-huaweicloud-2.8.3.13.jaresdk-obs-java-3.0.1.jarjava-xmlbuilder-1.1.jarokhttp-3.10.0.jarokio-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/.


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。