spark集群搭建

摘要:
一.准备工作1.准备三台虚拟机,网络互联,安装jdk,配置JAVA_HOME2.对虚拟机进行hosts配置,以便于免密操作3.三台虚拟机进行免密登录配置3.1执行ssh-keygen-trsa命令,然后一直回车,会在/root/.ssh/目标下面生成两个文件id_rsa(私钥),id_rsa.pub(公钥)3.2将三台虚拟机的catid_rsa.pub˃˃/root/.ssh/authorized

一.准备工作

1. 准备三台虚拟机,网络互联,安装jdk,配置JAVA_HOME

2.对虚拟机进行hosts配置,以便于免密操作

spark集群搭建第1张

3.三台虚拟机进行免密登录配置

3.1 执行ssh-keygen -t rsa命令,然后一直回车,会在/root/.ssh/目标下面生成两个文件id_rsa(私钥),id_rsa.pub(公钥)

3.2 将三台虚拟机的catid_rsa.pub >> /root/.ssh/authorized_keys,最终三台服务器的authorized_keys文件内容如下

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDOSBn4YN3B3s8LgP/FM5oVckeKBuLOClg1CEuc7Fk6iv6W38UxEm9L6ktetB4ykiUvZzuyyuhE3jV0PYsSe4lB/09k/IphR0wLN4vH4xM11CuHGHGNLNGe54l/YJM6QGIs/0pa1/dExPqDJVxK5ENzU1fJ2MV+pD/65P5j6WBNdRrNkvCq8EAqN8h/dBU06NsAB82YM8FgUDKHd1ufs803cnMEszlURjEian3QK+BVkBcacWGXru0keAtTHVEeouk+kEeR1EIhnjq1/T0ZD012OYZTak1I0gf0BVuSH2j3PG5/DFix+S8e27tnwKL/VJ+sV66U134vFbnNdvG2/3XH root@spark02
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCxW7QabrL4V19WMS7dCY4MFVSkz5nC2UbJK/cPdxMixZ7Mzwz2IBKY8PbYOojOnOqw+zR4JFw9oOyDGkvswv+WjM5IMilZo8P//fAQWeUyxjA3i0T0+kHHbJVV1s78f/tHtcXKzJBzm82c0TdFcISX7W8sGsLK0uC/iZfyx+ArwRPaDIc9xsvCMTr9h7sNY9f8UdDcJqJHLy6yGkBsIcIyJGcQaV8TAM1/uEpCcdA15RPf43kEkQGBLU8WrXj97c/p3DeYGaDhgS88LRm8R4JjrQMB8qyASQdK8y6FKx/og3cV+FxVlRLkURrdBcK64oxtmZs9zdt8Z7y+e46xDeY/ root@spark01
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDB2HcwQL2kf1VmA15zuDx0wOjXMrj7mwb1J3T7w0TAn6yC/SOP7H4wsZ8cibnvhq2cLfxb5wSofdFFL6kQbUZPH55s4CYlZRu9zN+PkY9harwHSauiFyEP2gNPXr3arUaBzgkuOJxPLGy/yLsefm2buDVPPbaPqyh144scjWmLvksKfHAMO+ia8MWov5RsM4ZBak3nBiuJuUvJHof5nzsXH01WgQVK1qSi4CMEuiXUY5crEGJr9Lq6u7NdNBz81m931Znu+vnTQ6PRztrdGwLWio2uX8HJKlOqGn/uPIOEK0pQ9lWc81Gs3I0D4TXICCVs69j4ImjLgNs7SQCgeVof root@spark03

如此,三台虚拟机就可以免密访问了

二.正式安装spark

1.上传,并解压安装包 spark-2.4.4-bin-hadoop2.7.tgz

2.重命令

mv spark-2.4.4-bin-hadoop2.7 spark

3.配置spark的环境变量
vi /etc/profile

export SPARK_HOME=/root/spark
    export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
source /etc/profile

4.修改spark配置文件

cd /root/spark/conf

cp slaves.template slaves

vimslaves
# 配置slave的地址

spark02

spark03

5. 运行环境配置

cp spark-env.sh.template spark-env.sh

5.1 单master配置

#配置jdk
export JAVA_HOME=/root//jdk8
export SPARK_MASTER_IP=spark01
export SPARK_MASTER_PORT=7077

5.2 多master配置(ha)
#配置jdk
export JAVA_HOME=/root/jdk8
export SPARK_MASTER_PORT=7077
##多master时添加以下配置项zookeeper
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=mini1,mini2,mini3 -Dspark.deploy.zookeeper.dir=/spark"

6.分发spark安装包到spark02,spark03

scp -r spark root@spark02:/root/

scp -r spark root@spark02:/root/

7. 启动
sbin/start-all.sh
停止
sbin/stop-all.sh

-------------------------------

多master测试:
sbin/start-all.sh
然后在spark02上再启一个master
sbin/start-master.sh

通过ui页面就能看到master一主一备
http://spark01:8080/
http://spark02:8080/

8 .运行测试
./bin/run-example SparkPi 10
不报错即可

spark集群搭建第2张

spark集群搭建第3张

免责声明:文章转载自《spark集群搭建》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇IOS 验证码JSP基础知识➣获取参数和过滤器(四)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

(转)Vix_API 操作 VMware

对虚拟机(VMware Workstation)进行程序控制,查询了VMware官方网站的一些内容,但调试的时候还是出现很多问题。     刚开始想通过命令行的方式控制虚拟机,但总是存在一些问题,到现在也没搞懂。     首先,网上下载的绿色版还是有很多功能不能实现。     其次,虚拟机版本不一样,其支持的命令也不一样,版本越高,支持的命令越多。    ...

logstash收集日志并写入Redis再到es集群

redis做数据缓存 图形架构: 环境准备 172.31.2.101 es1 + kibana 172.31.2.102 es2 172.31.2.103 es3 172.31.2.104 logstash1 172.31.2.105 logstash2 172.31.2.106 Redis 172.31.2.107 web1 安装redis [roo...

安卓架构

1、架构图直观 下面这张图展示了Android系统的主要组成部分: 图1、Android系统架构(来源于:android sdk) 可以很明显看出,Android系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。第二部分将详细...

VirtualBox安装及使用说明和虚拟机安装XP系统图文教程

virtualbox是一款开源的虚拟机软件,它能够支持多种操作系统的安装如:Solaris、Windows、DOS、Linux、OS/2 Warp、BSD等系统作为client操作系统,而且最新版本号:VirtualBox-4.1.18-78361(2012-6-20公布)还支持Android 4.0系统,更大程度的给予使用者们便利,它的功能十分强大且...

ZooKeeper的配置文件优化性能(转)

一、前言 ZooKeeper的功能特性通过ZooKeeper配置文件来进行控制管理( zoo.cfg配置文件)。 ZooKeeper这样的设计其实是有它自身的原因的。通过前面对ZooKeeper的配置可以看出,对ZooKeeper集群进行配置的时候,它的配置文档是完全相同的(对于集群伪分布模式来说,只有很少的部分是不同的)。这样的配置方使得在部署ZooKe...

一个ftp协议传输文件之后执行脚本无法工作的情况

作者:良知犹存 转载授权以及围观:欢迎添加微信号:Conscience_Remains 总述         移植一个文件系统时候,我在window下git clone了对方仓库源码,然后用FileZilla用ftp协议把文件传到linux虚拟机的指定目录,然后准备更新到内核,没想到源码目录下面的执行脚本却无法使用,出现了如下bug提示: bash: ./...