在cdh上用外部spark2.2.1安装和配置carbondata

double-kill double-kill     2022-12-29     310

关键词:

在CDH上用外部Spark2.2.1 (hadoop free版本)standalone 模式安装和配置 CarbonData
 
 
 
 
=====================================================================
cdh中外部spark(standalone模式安装)
=====================================================================
5、把安装包和配置文件拷贝到其他机器
--------------------------------------------------------------------------
复制hdfs、hive等配置文件到spark的conf目录
技术分享图片
--------------------------------------------------------------------------
spark-env.sh文件最后新增的配置
 
export SPARK_HOME=/opt/cloudera/parcels/spark2.2.1/lib/spark2
export SPARK_DAEMON_CLASSPATH=$SPARK_HOME/jars/*:$SPARK_HOME/carbonlib/*
# - 这里的dsd为spark的master主机
export SPARK_MASTER_HOST=dsd
export JAVA_HOME=/usr/java/jdk1.8.0_112
export HADOOP_CONF_DIR=/etc/hadoop/conf
export YARN_CONF_DIR=/etc/hadoop/conf.cloudera.yarn/
# Passing a Hadoop configuration directory
export SPARK_DIST_CLASSPATH=$(hadoop --config /etc/hadoop/conf classpath)
--------------------------------------------------------------------------
spark-defaults.conf文件最后新增的配置
 
spark.driver.extraJavaOptions="-Dcarbon.properties.filepath = /opt/cloudera/parcels/spark2.2.1/lib/spark2/conf/carbon.properties"
spark.executor.extraJavaOptions="-Dcarbon.properties.filepath = /opt/cloudera/parcels/spark2.2.1/lib/spark2/conf/carbon.properties"
--------------------------------------------------------------------------
slaves文件最后新增的配置(把所有的spark节点都加入,包括master)
 
dsf
dse
dsd
dsb
ddf
--------------------------------------------------------------------------
分发安装包:
scp -r /opt/cloudera/parcels/spark2.2.1 [email protected]:/opt/cloudera/parcels/
 
=====================================================================
 
=====================================================================
 
 
 
 
 
=====================================================================
编译需要版本的carbondata
=====================================================================
参考:
http://www.zhuyongpeng.cn/1557.html
中文文档
http://carbondata.iteblog.com/installation-guide.html
 
--------------------------------------------------------------------------
编译carbondata的cdh版本安装包:直接用官网的apache版本,装上去启动不了。
到安装目录下去看一下spark的版本 #不要看cloudera manager的包管理上面的版本,那个是错误的
 
 
直接在centos上编译、在window上编译不知道有没有区别。2种都试了。都不行,最终发现不是编译的carbondata有问题。是cdh集成的spark有问题。怎么试都不行。
最终换成原版的spark2.2.1(hadoop free版本的)
 
解决maven仓库默认不支持cdh
 
目前maven仓库中没有支持cdh的相关依赖。cloudera自己建立了一个相关的仓库。要想利用maven添加相关依赖,则必须单独添加cloudera仓库。
 
一、项目的pom.xml文件里面, 添加仓库配置
<repositories>
<repository>
<id>cloudera</id>
<url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
</repository>
</repositories>
 
三、在国内使用maven中央仓库一般会有网络问题,所以大部分人会使用aliyun仓库或者其他开源的仓库。
所以需要修改setting.xml (以下配置中 *,!cloudera 表示除了aliyun仓库还使用cloudera仓库)
 
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*,!cloudera</mirrorOf>
<name>Nexus aliyun</name>
<url>
http://maven.aliyun.com/nexus/content/groups/public
</url>
</mirror>
 
四、若未设置自动更新maven项目,则需更新maven项目,然后等待下载相关依赖。完成之后便可以使用cdh进行开发啦
 
--------------------------------------------------------------------------
 
 
在centos下编译
---------------------------
安装thrift-0.9.3,此步骤较为繁琐,需要其他库的支持。没有详细记录。
yum install automake bison flex g++ git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config
下载thrift-0.9.3
http://archive.apache.org/dist/thrift/0.9.3/thrift-0.9.3.tar.gz
tar -xzvf thrift-0.9.3.tar.gz
---------------------------
安装mvn
 
tar zxvf apache-maven-3.5.3-bin.tar.gz -C /root/ssss/
vim /etc/profile #添加mvn的配置信息
export M2_HOME=/root/ssss/apache-maven-3.5.3/ export PATH=$PATH:$M2_HOME/bin
 
source /etc/profile
mvn -version
---------------------------
 
mvn -Pwindows -Dmaven.test.skip=true -Pspark-2.2 -Dspark.version=2.2.1 clean package
 
 
下载了好几次才完整的下载了所有依赖jar包。
http://repo1.maven.org/maven2/org/apache/spark/spark-streaming_2.11/2.2.0/
 
=====================================================================
=====================================================================
 
 
 
 
 
 
=====================================================================
spark集成carbondata
=====================================================================
 
 
编译 CarbonData 工程,并且从 carbondata-parent-1.4.0assembly argetscala-2.11路径获取 apache-carbondata-1.4.0-bin-spark2.2.0.cloudera2-hadoop2.7.2.jar。
最后将这个 jar 复制到 $SPARK_HOME/carbonlib 文件夹。
注意: 如果 $SPARK_HOME 路径下不存在 carbonlib 文件夹,请事先创建它。
压缩 carbonlib 文件夹的内容到tar.gz 文件中,并将这个压缩文件移到 carbonlib 文件夹下面。
cd /opt/cloudera/parcels/spark2.2.1/lib/spark2/ tar -zcvf carbonlib.tar.gz carbonlib/ mv carbonlib.tar.gz carbonlib/
--------------------------------------------------------------------------
 
 
--------------------------------------------------------------------------
3.1、到carbondata的源码当中找到carbon.properties配置文件,并拷贝到spark的配置文件目录
3.2、将下面的配置添加到 $SPARK_HOME/conf/carbon.properties 文件中:
carbon.storelocation=hdfs://nameservice1/ddhome/carbondata
carbon.badRecords.location=hdfs://nameservice1/ddhome/carbondata/badRecords
 
--------------------------------------------------------------------------
4、在hdfs中建立上面配置的hdfs://nameservice1/ddhome/carbondata目录。
hadoop fs -mkdir -p /ddhome/carbondata
hadoop fs -mkdir -p /ddhome/carbondata_badRecords
hadoop fs -mkdir -p /ddhome/carbondata_data
授予访问目录的权限,否则文件写入不了
hadoop fs -chmod -R 777 /ddhome/carbondata
hadoop fs -chmod -R 777 /ddhome/carbondata_badRecords
hadoop fs -chmod -R 777 /ddhome/carbondata_data
 
=====================================================================
 
--------------------------------------------------------------------------
6、启动:验证安装
 
启动:standalone集群:有效
/opt/cloudera/parcels/spark2.2.1/lib/spark2/sbin/start-all.sh
 
关闭:standalone集群:有效
/opt/cloudera/parcels/spark2.2.1/lib/spark2/sbin/stop-all.sh
 
=====================================================================
#spark-submit提交普通任务jar进行测试
 
成功 --supervise(出现错误重启driver)提交作业的端口是6066(restful接口)
/opt/cloudera/parcels/spark2.2.1/lib/spark2/bin/spark-submit --class com.ziyun.DpiGet2Hiveparquet --master spark://192.168.101.218:6066 --deploy-mode cluster --supervise /home/usr/sparkjob/zy-just-spark-1.0.0.jar first --conf spark.network.timeout=300
 
这种用7077端口也可以提交成功
/opt/cloudera/parcels/spark2.2.1/lib/spark2/bin/spark-submit --class com.ziyun.DpiGet2Hiveparquet --master spark://192.168.101.218:7077 --deploy-mode client /root/zy-just-spark-1.0.0.jar first --conf spark.network.timeout=300
 
=====================================================================
目前配置standalone模式的spark是否支持hive(spark任务提示一些错误:需要给sparksession添加一些配置
.enableHiveSupport() //开启hive支持
.config("spark.sql.warehouse.dir", "/user/hive/warehouse"))
hadoop fs -chmod -R 777 /user/hive/warehouse #给配置的目录加入权限
/opt/cloudera/parcels/spark2.2.1/lib/spark2/bin/spark-submit --class com.ziyun.MRecKqmj --master spark://192.168.101.217:7077 --deploy-mode client /root/zy-just-spark-1.0.0.jar first --conf spark.network.timeout=300
 
 
测试普通任务能否写入hdfs:新spark(standalone) ##按照后面添加了jar之后,可以正常写入的
/opt/cloudera/parcels/spark2.2.1/lib/spark2/bin/spark-submit --class com.ziyun.MRecKqmjTest --master spark://192.168.101.217:7077 --deploy-mode client /root/zy-just-spark-1.0.0.jar first --conf spark.network.timeout=300
 
独立模式提示找不到hive的classes。需要拷贝这2个jar到spark的jars目录下
技术分享图片
 
最后是把cloudera manager上集成的spark2.2.0.cloudera2版本中相关hive和spark的jar复制到新装的spark的jar目录。
把mysql的驱动jar也拷贝过去。在hive里面也是有的。
后面又提示缺失thriftserver。最终是解压了一个spark自带hadoo2.6(cm版本的hadoop也是基于2.6)版本的jar,把它里面的jar也拷贝到新装的spark的jars目录下。
跑普通spark任务就可以了。
 
 
 
 
 

利用cm压缩包手动安装cm和cdh

安装准备:1.操作系统为centos6.9  CentOS-6.9-x86_64-bin-DVD1to22.安装OracleJDK(1.8u121)  jdk-8u121-linux-x64.tar.gz3.安装配置外部数据库  mysql-5.7.18-1.el6.x86_64.rpm-bundle 查看详情

cdh-5.12.2安装教程

...,如Zookeeper、HBase、Flume、Sqoop等做了兼容性开发,我们在安装CDH发行版的Hadoop时就无需进行额外繁琐的兼容性测试。以往安装配置使用ApacheHadoop时,完全需要手动在服务器上,通过命令和脚本进行安 查看详情

sparkha安装配置和使用(spark1.2-cdh5.3)

安装环境如下:操作系统:CentOs6.6Hadoop版本:CDH-5.3.0Spark版本:1.2集群5个节点node01-05node01-03为workernode04、node05为mastersparkHA必须要zookeepr来做协同服务,做master主备切换,zookeeper的安装和配置再次不做赘述。yum源的配置请看:1.安... 查看详情

cdh安装配置第二篇:cdh安装的前期配置(代码片段)

本篇介绍cdh安装之前需要的一些必要配置,当然这些配置也可以用shell脚本来配置。在安装之前请先配置好yum源,在文中用的统一都是阿里源。 系统:centos7主机3台:master.com.cn192.168.1.110salver1.com.cn192.168.1.111salver2.com.cn192.168.1.... 查看详情

cdh使用秘籍:clouderamanager和managedservice的数据库

...的时候,发现对应的ServiceHostMonitor和ServiceMonitor不能配置外部表,刚开是还以为是配置出错,后来 查看详情

cdh5.10.0离线安装(共3节点)

1.安装方式CDH的离线部署安装,即Parcel包(推荐)2.角色规划三个节点对应的角色:3.基本环境配置(在每个节点上都要配置)(1)关闭防火墙#/etc/init.d/iptablesstop#chkconfig--level345iptablesoff(2)关闭seliux#vim/etc/sysconfig/selinuxSELINUX=disabled(3)i... 查看详情

ca周记-在azureml上用.net跑机器学习

.NET是一个跨平台,全场景应用的开源技术。你有在用.NET做机器学习/深度学习的应用吗?如果从框架角度,ML.NET/Tensorflow.NET/ 不断在进步的TorchSharp通过几年的发展已经开始稳定,但如果在一些大型项目上,特... 查看详情

spark实例-spark读取外部配置文件之--files

参考技术A在运行spark程序的时,有时需要读取外部配置参数,比如mysql的host参数、端口号、es主机ip、es端口号等。通过外部文件配置参数也方便程序迁移。下面就来看看如何来实现。1、首先我们需要一个配置文件:config.properties... 查看详情

0027-如何在cdh集群启用kerberos(代码片段)

...CDH集群启用及配置Kerberos,您将学习到以下知识:1.如何安装及配置KDC服务2.如何通过CDH启用Kerberos3.如何登录Kerberos并访问Hadoop相关服务文档主要分为以下几步:1.安装及配置KDC服务2.CDH集群启用Kerberos3.Kerberos使用这篇文档将重点... 查看详情

0027-如何在cdh集群启用kerberos(代码片段)

...CDH集群启用及配置Kerberos,您将学习到以下知识:1.如何安装及配置KDC服务2.如何通过CDH启用Kerberos3.如何登录Kerberos并访问Hadoop相关服务文档主要分为以下几步:1.安装及配置KDC服务2.CDH集群启用Kerberos3.Kerberos使用这篇文档将重点... 查看详情

cm和cdh的安装-进阶完成

安装ClouderaManagerServer和Agent1、在cdh1解压cloudera-manager-el6-cm5.9.0_x86_64.tar.gz(cdh1节点)tar-zcvfcloudera-manager-el6-cm5.9.0_x86_64.tar.gz 2、为ClouderaManager5建立数据库(cdh1节点)2.1:复制mysql-connector-ja 查看详情

0031-如何在cdh启用kerberos的情况下安装及使用sentry(代码片段)

...档编写目的本文档主要讲述如何在启用Kerberos的CDH集群中安装配置及使用Sentry。内容概述1.如何安装Sentry服务2.Hive/Impala/Hue/HDFS服务如何与Sentry集成3.Sentry测试测试环境1.操作系统为CentOS6.52.CM和CDH版本为5.11.13.采用root用户操作前置... 查看详情

impala部署和架构

...enkinson20170120-1038git:aa0b5cd5eceaefe2f971c13ab657020d96bb842a)。二,安装部署我们是使用CDH安装部署impala,在安装前,有的读者需要了解CDH的安装。这是官网链接:https://www.cloudera.com/documentation/enterprise/5-10-x.h 查看详情

cdh2clouderamanager的安装

...理控制台服务器和应用程序逻辑    –负责软件安装、配置,启动和 查看详情

clouderamanager和cdh5.8离线安装

...篇文章中已经了解了CDH,为了后续的学习,我们本章就来安装CDH5.8。CDH5.8是目前比较新的版本,自带hadoop2.0以上的hadoop,而且已经包含了很多组件,也是我们接下来需要学习的hadoop生态圈中的组件。   环境Clouder 查看详情

cdh集群安装(入门)

cdh集群安装1、 配置主机vim/etc/hosts  (hadoop1,hadoop2,hadoop3)代表在3台机器执行操作192.168.157.128hadoop1192.168.157.129hadoop2192.168.157.130hadoop32、 关闭防火墙(所有机器)chkconfigiptablesoff3、 ssh免密码登录(hadoop1执行)ssh-keygen-tr 查看详情

cdh搭建大数据集群(5.10.0)(代码片段)

...H介绍二、为什么选择CDH?三、CDH的版本选择  四、安装准备1.节点准备2.节点规划3.下载parcels文件4.tarball下载5.准备以下内容:五、系统初始化1.关闭防火墙(3个节点)2.配置主机名(3个节点)3.修改hosts... 查看详情

cdh搭建大数据集群(5.10.0)(代码片段)

...H介绍二、为什么选择CDH?三、CDH的版本选择  四、安装准备1.节点准备2.节点规划3.下载parcels文件4.tarball下载5.准备以下内容:五、系统初始化1.关闭防火墙(3个节点)2.配置主机名(3个节点)3.修改hosts... 查看详情