Spark客户端2.3.0 on yarn 2.7.2 部署说明
Spark客户端2.3.0 on yarn 2.7.2 部署说明
本部署说明为在yarn集群以外的服务器上部署Hadoop客户端和Spark客户端。
- 软件及版本
- jdk-8u77-linux-x64.tar.gz
- hadoop-7.2.tar.gz
下载地址:https://archive.apache.org/dist/hadoop/core/hadoop-2.7.2/hadoop-2.7.2.tar.gz
3. spark-2.0-bin-hadoop2.7.tgz
下载地址:https://archive.apache.org/dist/spark/spark-2.3.0/spark-2.3.0-bin-hadoop2.7.tgz
4. krb5-workstation
使用Linux系统的yum安装
- 需要Hadoop集群的客户端配置文件
- core-site.xml
- hdfs-site.xml
- yarn-site.xml
- krb5.conf
- kerberos认证文件及principal名字
注:Yarn集群需要配置以下参数,才能保证spark服务正常运行。
<property> <name>yarn.nodemanager.vmem-check-enabled</name> <value>false</value> </property> <property> <name>yarn.nodemanager.vmem-pmem-ratio</name> <value>4</value> </property> |
- 软件安装步骤
- 上传软件到/usr/local目录,之后解压。
JDK安装位置:/usr/local/jdk1.8.0_77
Hadoop安装位置:/usr/local/hadoop-2.7.2
Spark安装位置:/usr/local/spark-2.3.0-bin-hadoop2.7
Kerberos安装:yum install krb5-workstation
- 基本环境配置
- 环境变量配置
cat ~/.bash_profile #java config export JAVA_HOME=/usr/local/jdk1.8.0_77
#hadoop config export HADOOP_HOME=/usr/local/hadoop-2.7.2 export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export YARN_HOME=$HADOOP_HOME export YARN_CONF_DIR=$HADOOP_CONF_DIR export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native:$LD_LIBRARY_PATH
#spark config export SPARK_HOME=/usr/local/spark-2.3.0-bin-hadoop2.7 export SPARK_CONF_DI=$SPARK_HOME/conf
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$SPARK_HOME/bin:$PATH |
- 配置hosts
文件位置:/etc/hosts
需要配置YARN集群的所有IP地址和主机名到hosts文件中。
需要配置kerberos主机的所有IP地址和主机名到hosts文件中。
需要配置本spark客户端的IP地址和主机名到所有YARN集群主机hosts文件中。
- 配置kerberos
使用客户提供的krb5.conf文件覆盖/etc/目录下的krb5.conf文件。并确认可以ping通kerberos主机。可以成功执行kinit命令,使用klist查看认证结果。
- 配置Hadoop
把客户提供的三个*-site.xml文件上传到/usr/local/hadoop-2.7.2/etc/hadoop目录下。
- 配置Spark
解压后无需额外配置。
- 验证
- 使用hdfs验证
执行以下命令:
启用kerberos认证:kinit –kt kerberos认证文件 principal名字
hdfs dfs –ls /tmp
- 使用spark-submit验证
Client模式:
spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client $SPARK_HOME/examples/jars/spark-examples_2.11-2.3.0.jar
Cluster模式:
spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster $SPARK_HOME/examples/jars/spark-examples_2.11-2.3.0.jar