Spark学习之standalone模式部署实战

Standalone模式部署实战

spark有好几种运行模式,本次我们来挑一种standalone模式来操作一下,就是spark独自包揽除了存储文件操作之外的所有操作,包括集群管理,任务调度,程序计算等等,这种模式适合不大的程序,不需要yarn等将部署整的很复杂。专业点的描述就是,利用Spark自带的资源管理与调度器运行Spark集群,采用Master/Slave结构,为解决单点故障,可以采用Xookeeper实现高可靠(High Availability, HA)。开始吧
首先准备以下东西

  1. 要部署的Application,已经打包成一个jar包,或者没有用自带的实例
  2. 四台linux机器,物理机或者虚拟机,要求互相能ping通,并且已经安装好jdk 我的是jdk-1.8.0_101
  3. spark安装包,我的版本spark-2.3-hadoop-2.7版本
  4. zookeeper安装包
  5. 每台机器都要安装scala环境 我的版本scala-2.11.12

一、操作系统准备

四台机器ip如下:

  1. 10.1.161.91
  2. 10.1.161.92
  3. 10.1.161.94
  4. 10.1.161.95
1、主机名修改

为了便于后续操作,修改下主机名,修改成统一格式,我的机器对应如下

10.1.161.91  --->   test01.yuyin
10.1.161.92  --->   test02.yuyin
10.1.161.94  --->   test04.yuyin
10.1.161.95  --->   test05.yuyin
2、配置主机和ip的映射 修改hosts文件

每台机器执行

vi /etc/hosts

在文件后面添加下列配置

10.1.161.95 test05.yuyin
10.1.161.94 test04.yuyin
10.1.161.91 test01.yuyin
10.1.161.92 test02.yuyin

保存好了,可以测试下ping情况,比如在test01.yuyin上ping test02.yuyin,结果如下
在这里插入图片描述
每台机器都要试一下,保证映射有效,以免后续出错
同时也要测一下外网的连通性,如下
在这里插入图片描述
如果不通的话,检查下是否dns解析有问题

vi /etc/resolv.conf

尝试修改nameServer。或者是其他什么原因,请自行排查

3、无密码访问

如果机器没有安装openssh,执行下列命令安装

yum install openssh-server

每台机器都要安装,安装好了以后,生成密钥,命令如下

ssh-keygen -t rsa 

执行的时候直接几次enter就行了,由于我这个已经生成过了,因此会问是否覆盖,如下
在这里插入图片描述
生成好了以后,将密钥拷贝到其他机器,通过以下指令:

ssh-copy-id -i test02.yuyin
ssh-copy-id -i test04.yuyin
ssh-copy-id -i test05.yuyin

我在test01上执行

ssh-copy-id -i test02.yuyin

结果
在这里插入图片描述
执行过程中需要输入访问密码。所有的机器都要执行,目的是确保任意两台机器之间都可以互相无密码登录,才能作为一个集群,共同协作。
接下来测试下是否可以无密码互通,执行

ssh test02.yuyin

结果
在这里插入图片描述
可以看到现在test01.yuyin已经可以无密码访问test02.yuyin了,同时test02.yuyin也可以访问test01.yuyin,如下
在这里插入图片描述
其他机器同理,

ssh test04.yuyin
ssh test05.yuyin

保证任意两台机器之间可以互相无密码操作即可,还可以用scp命令测试下是否可以无密码互相复制文件啥的。
这一步算完成了。

二、环境安装

1、安装包分享

包括jdk、scala、spark、hadoop、zookeeper安装包分享如下

https://pan.baidu.com/s/1wq77i-EB5kh5j3ZncBEa6g   密码 1v2p

建议将安装包都下载到一个目录下,比如/usr/local/sparksoft 下,至于是用ftp传上去还是虚拟机用共享目录都可以,方便即可。
至于安装,应该首先在一台机器上安装,比如test01.yuyin,安装好了以后全部复制到其他机器上,保证几台机器的安装和配置都是相同的。
在这里插入图片描述

2、基础环境安装
  1. JDK安装
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值