spark 2.1 on yarn deployment
来源:互联网 发布:vb安装未响应 编辑:程序博客网 时间:2024/06/06 03:47
1. 准备三台机器, hostname 分别为 spark-master (10.64.xx.155), spark-work1(10.64.xx.154), spark-work2(10.64.xx.157)
将上面的信息写到/etc/hosts 中
10.64.xx.155 spark-master
10.64.xx.154 spark-worker1
10.64.xx.157 spark-worker2
2. 设置master 与各个work 之间ssh password less 登录
在每个work上用 ssh-keygen -t rsa 来生成私钥和公钥, 并将公钥scp 到master 机器上, 命名区分
scp id_rsa.pub root@spark-master:~/.ssh/id_rsa.pub.work1(2)
然后在master 上cat ~/.ssh/id_rsa.pub* >> authorized_keys
然后将authorized_keys scp 到每一个台worker 上的~/.ssh/, 测试一下看看,如果不行,看看authorized_keys 的权限设置成600
3. setup java , 我这边选择是java 1.8 , master 和worker 都要安装。
安装之后要做一下环境变量, 在/etc/profile 中增加, 我的java 安装在/usr/java 下面
export JAVA_HOME=/usr/java/jdk1.8.0_101
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
然后source /etc/profile
4. 安装scala 我选择是download scala 的rpm 直接安装的
5. 安装hadoop 在官网上去download 我选择是2.7.3 进行安装的:
5.1 在hadoop 的etc/hadoop/hadoop-env.sh 配置 java 的路径
export JAVA_HOME=${JAVA_HOME}
5.2 在yarn-env.sh 中同样加上 export JAVA_HOME=${JAVA_HOME}
5.3 修改core-site.xml 的配置:
<property>
<name>fs.defaultFS</name>
<value>hdfs://spark-master:9000/</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop_tmp</value>
</property>
5.4 修改hdfs-site.xml 的配置:
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>spark-master:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop_fs/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop_fs/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
5.5 修改mapred-site.xml 的配置
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</cornfiguratiot>
5.6 修改 yarn-site.xml 的配置:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>spark-master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>spark-master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>spark-master:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>spark-master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>spark-master:8088</value>
</property>
</configuration>
5.6 将上面的所有配置都copy 一份到各个worker 上
6. 启动hadoop , 在master 上应该去格式化一下namenode (hadoop-2.7.3/bin/hadoop namenode -format)
到每一个instance 的hadoop 下面的sbin下面run start-all.sh
然后看看master 上应该是有下面的这些进程 run jps:
worker 下面有下面的进程
7. download spark : spark-2.1.0-bin-hadoop2.7.tgz
配置spark conf:
export SPARK_HOME=/home/spark-2.1.0-bin-hadoop2.7
#export SCALA_HOME=/home/fang/scala-2.10.6
export JAVA_HOME=/usr/java/jdk1.8.0_101
export HADOOP_HOME=/home/hadoop/hadoop-2.7.3
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_MASTER_IP=10.64.78.155
SPARK_LOCAL_DIRS=/home/spark-2.1.0-bin-hadoop2.7
SPARK_DRIVER_MEMORY=1G
export SPARK_LIBARY_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib/native
在slaves 中加入
spark-worker1
spark-worker2
启动脚本 sbin 下的start-all.sh
配置完成了,可以用spark-ui 看看:
http://10.64.xx.155:8080/
- spark 2.1 on yarn deployment
- spark 2.1 task allocation on yarn cluster
- spark 2.1 on yarn -- container shell analysis
- Spark on Yarn部署
- Spark on Yarn
- spark on yarn
- spark on yarn
- Spark on Yarn简介
- spark on yarn
- Spark on YARN 部署
- spark on yarn 配置
- spark on yarn
- spark on yarn 安装
- Spark on Yarn 图
- Spark on yarn
- 源码-Spark on Yarn
- Launching Spark on YARN
- Spark On Yarn 知识点
- Ubuntu: Chinese simplified
- [CoffeeBot] 配置最后脚本
- Django View类的解析
- enum枚举型字段查询等于1不出数据问题
- 深入分析Volatile的实现原理
- spark 2.1 on yarn deployment
- 访问WEB-INF目录中的JSP文件
- STL源码剖析-序列式容器之vector
- 代码中设置marginstart属性
- JavaScript知识点整理
- 数据库与文件进行数据存储有哪些区别?
- 基于Maven环境进行Spring集成CXF WebService框架
- 关于jsp与servlet之间传值的问题及getParameter和getAttribute的用法
- Redis config配置