Spark学习_3(Spark集群YARN模式安装)

Spark on YARN

引言:

Spark 可以跑在很多集群上,有standalone,Yarn,mesos模式。 satandalone模式采用spark自带的集群资源管理器,效率较低。但不管你Spark采用的是何种集群,它的代码都是一样的,所以在做实验时,配置伪分布式也可以练习代码学习spark。有很多博客在搭建spark集群时将yarn模式和standalone模式混淆了。故本文将练习搭建在yarn模式上。

1.配置安装

在安装配置之前,需先完成hadoop的配置安装,具体安装方法可参考前文。
在这里插入图片描述
Resourcemanager:负责整个集群的资源管理和调度
NodeManager:与RM汇报资源,管理Container生命周期,数量和位置保持和datanode一致。

1.1yarn-site.xml的配置

<configuration>
<property>
            <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<property>
<!-- 开启resourcemanager高可用-->
   <name>yarn.resourcemanager.ha.enabled</name>
   <value>true</value>
 </property>
 <property>
<!--指定RM的cluster id-->
   <name>yarn.resourcemanager.cluster-id</name>
   <value>cluster1</value>
 </property>
 <property>
   <name>yarn.resourcemanager.ha.rm-ids</name>
   <value>rm1,rm2</value>
 </property>
 <property>
<!--指定rm的位置,这里主机分别是slave1和slave2-->
   <name>yarn.resourcemanager.hostname.rm1</name>
   <value>slave1</value>
 </property>
 <property>
   <name>yarn.resourcemanager.hostname.rm2</name>
   <value>slave2</value>
 </property>
 <property>
<!--指定zk集群的地址	-->
   <name>yarn.resourcemanager.zk-address</name>
   <value>master:2181,slave1:2181,slave2:2181</value>
 </property>
</configuration>

1.2mapreduce-site.xml的配置

<configuration>
 <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
 </property>
</configuration>

1.3spark配置

配置spark-env.sh文件

cd ./spark/conf
cp spark-env.sh.template spark-env.sh
vim spark-env.sh 

注意此处的配置路径位置要对应好自己之前Hadoop,spark,jdk,scala等相关信息的安装路径。

export SCALA_HOME=/usr/java/scala
export JAVA_HOME=/usrjava/jdk1.8
export HADOOP_HOME=/usr/java/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
SPARK_MASTER_IP=192.168.43.10
SPARK_LOCAL_DIRS=/usr/java/spark
SPARK_DRIVER_MEMORY=1G

将配置好的spark文件夹分发到其他节点计算机,此处ip和文件路径根据自己配置的实际情况设置

 scp -r /usr/java/spark root@192.168.43.11:/usr/java/spark
 scp -r /usr/java/spark root@192.168.43.12:/usr/java/spark

2设置启动

2.1启动zk

zkServer.sh start 

2.2启动hdfs

start-dfs.sh

2.3启动yarn:

1、一节点start-yarn.sh
2、二三节点yarn-daemon.sh start resourcemanager

2.4启动spark:

spark-shell --master yarn-client

如果启动失败可能原因,虚拟机内存不够,解决办法:先停止yarn的服务,然后修改yarn-site.xml文件,注:三台虚拟机都要修改,改完之后重启yarn服务,然后启动spark。

    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
        <description>Whether virtual memory limits will be enforced for 			containers</description>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-pmem-ratio</name>
        <value>4</value>
        <description>Ratio between virtual memory to physical memory when 			setting memory limits for containers</description>
    </property>

输入链接192.168.43.11:8088可以看到yarn的服务web页面:
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值