spark1.1.0部署standalone分布式集群
配置三个节点的spark集群,集群模式为standalone模式,其中sp1节点作为主节点,sp2节点和sp3节点为从节点。***注意所有操作均为root用户。
创建3个CentOS虚拟机,如下:
sp1 192.168.1.21 //master节点
sp2 192.168.1.22 //slave节点
sp3 192.168.1.23 //slave节点
配置/etc/sysconfig/network环境变量,如下:
在sp1节点上执行:vi /etc/sysconfig/network将HOSTNAME=localhost改成HOSTNAME=sp1
在sp2节点上执行:vi /etc/sysconfig/network将HOSTNAME=localhost改成HOSTNAME=sp2
在sp3节点上执行:vi /etc/sysconfig/network将HOSTNAME=localhost改成HOSTNAME=sp3
配置/etc/hosts主机名和IP地址映射关系,如下:
每个节点配置为:
192.168.1.21 sp1
192.168.1.22 sp2
192.168.1.23 sp3
关闭防火墙如下:
停止运行防火墙:service iptables stop
关闭防火墙自启动:chkconfig iptables off
验证防火墙是否关闭:chkconfig --list | grep iptables
生成ssh免密码登陆如下:
分别在每个节点上生成公钥私钥:
ssh-keygen -t rsa三次回车
cp id_rsa.put authorized_keys
将sp2节点和sp3节点的authorized_keys的内容复制到sp1节点上:
sp2节点上执行:ssh-copy-id -i sp1
sp3节点上执行:ssh-copy-id -i sp1
将sp1节点的authorized_keys(这个authorized_keys的内容是三个节点的公钥)的复制到sp2节点和sp3节点上:
sp1节点上执行:scp /root/.ssh/authorized_keys sp2:/root/.ssh/
sp1节点上执行:scp /root/.ssh/authorized_keys sp3:/root/.ssh/
配置ssh免密码登陆成功,验证如下:
sp1节点上执行:ssh sp2和ssh sp3
sp2节点上执行:ssh sp1和ssh sp3
sp3节点上执行:ssh sp2和ssh sp1
从网上下载jdk-6u45-linux-x64.bin文件,将这个文件使用WinSCP工具复制到sp1节点的/usr/local/jdk/下。
在sp1节点上安装jdk-6u45-linux-x64.bin,如下:
进入/usr/local/jdk/目录:cd /usr/local/jdk
为jdk-6u45-linux-x64.bin赋予执行权限:chmod u+x jdk-6u45-linux-x64.bin
将jdk-6u45-linux-x64.bin解压到/usr/local/jdk/文件夹下:./jdk-6u45-linux-x64.bin
将解压出来的jdk-1.6.43重命名为jdk6:mv jdk-1.6.43 jdk6
配置jdk到系统环境变量:vi /etc/profile添加内容如下:
export JAVA_HOME=/usr/local/jdk/jdk6
export PATH=.:$JAVA_HOME/bin:$PATH
使修改立即生效:source /etc/profile
验证jdk安装是否成功:java -version
从网上下载scala-2.9.3.tgz,spark-1.1.0-bin-hadoop2.4.tgz两个压缩包;将这两个压缩包使用WinSCP工具复制到sp1节点的/usr/local/spark1/下。
在sp1节点上安装scala-2.9.3.tgz,如下:
进入/usr/local/spark1/目录下:cd /usr/local/spark1/
解压scala-2.9.3.tgz:tar -zxvf scala-2.9.3.tgz
重命名解压出来的scala-2.9.3为scala:mv scala-2.9.3 scala
配置scala到系统环境变量:vi /etc/profile添加内容如下:
export SCALA_HOME=/usr/local/spark1/scala
export PATH=.:$SCALA_HOME/bin:$JAVA_HOME/bin:$PATH
使修改立即生效:source /etc/profile
验证scala安装是否成功:scala 或者 scala -version
在sp1节点上安装spark-1.1.0-bin-hadoop2.4.tgz,如下:
进入/usr/local/spark1/目录下:cd /usr/local/spark1/
解压spark-1.1.0-bin-hadoop2.4.tgz:tar -zxvf spark-1.1.0-bin-hadoop2.4.tgz
重命名解压出来的spark-1.1.0-bin-hadoop2.4为spark:mv spark-1.1.0-bin-hadoop2.4 spark
配置scala到系统环境变量:vi /etc/profile添加内容如下:
export SPARK_HOME=/usr/local/spark1/spark
export PATH=.:$SPARK_HOME/bin:$SCALA_HOME/bin:$JAVA_HOME/bin:$PATH
使修改立即生效:source /etc/profile
配置spark运行依赖的/usr/local/spark1/spark/conf/spark-env.sh文件,添加内容如下:
export SCALA_HOME=/usr/local/spark1/scala
export JAVA_HOME=/usr/local/jdk/jdk6
export SPARK_MASTER_IP=sp1
export SPARK_WORKER_CORES=1
export SPARK_WORKER_MEMORY=512m
export SPARK_WORKER_PORT=8888
export SPARK_WORKER_INSTANCES=1
配置spark的从节点/usr/local/spark1/spark/conf/slaves文件,将默认的localhost修改为如下:
sp1
sp2
sp3
配置成功后,将环境变量,/usr/local/spark1和/usr/local/jdk复制到sp2和sp3节点上,如下:
复制sp1节点环境变量到sp2节点:scp /etc/profile sp2:/etc/
复制sp1节点环境变量到sp3节点:scp /etc/profile sp3:/etc/
***注意:环境变量复制成功后需要分别在sp2节点和sp3节点上执行命令使修改立即生效:source /etc/profile
复制sp1节点解压出来配置好的spark和scala到sp2节点:scp -r /usr/local/* sp2:/usr/local/
复制sp1节点解压出来配置好的spark和scala到sp3节点:scp -r /usr/local/* sp3:/usr/local/
***注意:按照上述步骤完成后即可启动spark集群。
启动spark命令:start-all.sh
[root@sp1 sbin]# start-all.sh
starting org.apache.spark.deploy.master.Master, logging to
/usr/local/spark1/spark/sbin/../logs/spark-root-org.apache.spark.deploy.master.Master-1-sp1.out
sp3: starting org.apache.spark.deploy.worker.Worker, logging to
/usr/local/spark1/spark/sbin/../logs/spark-root-org.apache.spark.deploy.worker.Worker-1-sp3.out
sp2: starting org.apache.spark.deploy.worker.Worker, logging to
/usr/local/spark1/spark/sbin/../logs/spark-root-org.apache.spark.deploy.worker.Worker-1-sp2.out
sp1: starting org.apache.spark.deploy.worker.Worker, logging to
/usr/local/spark1/spark/sbin/../logs/spark-root-org.apache.spark.deploy.worker.Worker-1-sp1.out
验证spark启动是否成功1:分别在三个节点上执行jps命令,结果如下为正确(忽略进程号):
sp1
2305 Worker
2156 Master
2410 Jps
sp2
2057 Worker
2138 Jps
sp3
2056 Worker
2136 Jps
验证spark启动是否成功2:在浏览器中输入localhost:8080验证是否启动成功。
停止spark命令:stop-all.sh
至此spark的standalone模式集群(3个节点)部署完成。
在h2的yarn上部署spark集群
spark1.1.0部署standalone分布式集群的更多相关文章
- 三、Linux部署MinIO分布式集群
MinIO的官方网站非常详细,以下只是本人学习过程的整理 一.MinIO的基本概念 二.Windows安装与简单使用MinIO 三.Linux部署MinIO分布式集群 四.C#简单操作MinIO 一. ...
- 超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群
超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群 ps:本文的步骤已自实现过一遍,在正文部分避开了旧版教程在新版使用导致出错的内容,因此版本一致的情况下照搬执行基本不会有大错误. ...
- Hadoop2.7.3+spark2.1.0+hbase0.98分布式集群部署
运行环境配置(10.79.115.111-114) 1.关闭防火墙与selinux 关闭防火墙: CentOS 7.x默认使用的是firewall作为防火墙. systemctl stop firew ...
- Linux Centos7 环境搭建Docker部署Zookeeper分布式集群服务实战
Zookeeper完全分布式集群服务 准备好3台服务器: [x]A-> centos-helios:192.168.19.1 [x]B-> centos-hestia:192.168.19 ...
- docker swarm快速部署redis分布式集群
环境准备 四台虚拟机 192.168.2.38(管理节点) 192.168.2.81(工作节点) 192.168.2.100(工作节点) 192.168.2.102(工作节点) 时间同步 每台机器都执 ...
- hadoop2.2.0的ha分布式集群搭建
hadoop2.2.0 ha集群搭建 使用的文件如下: jdk-6u45-linux-x64.bin hadoop-2.2.0.x86_64.tar zookeeper-3.4.5. ...
- hadoop学习笔记之一步一步部署hadoop分布式集群
一.准备工作 同一个局域网中的三台linux虚拟机,我用的是redhat6.4,如果主机是windows操作系统,可以先安装vmware workstation, 然后在workstation中装上3 ...
- Redis(1.11)Redis4.0.11 cluster 分布式集群搭建
概念与了解:Redis(1.7)Redis高可用架构(理论篇) [0]试验环境 结构图如下: (这里试验没有那么多机器,就用3台机器搭建试验) redis1是redis集群的一个节点A,上面运行了两个 ...
- Linux下部署Kafka分布式集群,安装与测试
注意:部署Kafka之前先部署环境JAVA.Zookeeper 准备三台CentOS_6.5_x64服务器,分别是:IP: 192.168.0.249 dbTest249 Kafka IP: 192. ...
随机推荐
- 人工智能2:智能Agent
一.Agent基本定义 基于理性行为的Agent是本书人工智能方法的核心.Agent由传感器.执行器两个重要元件组成,具有与环境交互的能力,其能力是通过分析感知序列,经过Agent函数映射到相应的行动 ...
- lab3
lamp: 在阿里云linux(Ubuntu)上安装Apache mysql php : apt-get install mysql_server mysql_client php5 php_mysq ...
- php微信接口验证写法
<?php //获得接口认证 $timestamp = $_GET['timestamp']; $nonce = $_GET['nonce']; $token = 'weixin'; $sign ...
- CSS3中的transform变形
在CSS3中,用Transform功能可以实现文字或图像的旋转.缩放.倾斜.移动这四种类型的变形,这四种变形分别使用rotate.scale.skew和translate这四种方法来实现.将这四种变形 ...
- SQL Server 和CLR集成
通过在 Microsoft SQL Server 中托管 CLR(称为 CLR 集成),可以在托管代码中编写存储过程.触发器.用户定义函数.用户定义类型和用户定义聚合函数. 因为托管代码在执行之前会编 ...
- Struts2 UI标签
表单标签的共同属性(该属性只在没有使用 simple 主题时才可以使用) form 标签 用来呈现 HTML 语言中的表单元素 默认情况下, form 标签将被呈现为一个表格形式的 HTML 表单. ...
- Android常用URI以及URI简介
Android常用URI android管理联系人的URI: ContactsContract.Contacts.CONTENT_URI 管理联系人的Uri ContactsContract.Comm ...
- java8+spring+angularjs 项目应用
最近有写一个电子订单商务网站,使用JAVA8,SPRING,ANGULARJS对项目使用的技术和大家分享. 第一次写博客,哪有不对需要改正的请联系改正. 因为是项目是我给别人做的无法提供源码见谅,我尽 ...
- .net转php laraval框架学习系列(一) 环境搭建
之前也没写过什么博客,可能文章结构比较混乱,想到那写到哪. 主要是把自己学习中的经验写下来. 为什么选择laravel框架,是因为laravel框架目前是Php最流行的框架,深入研究后发现和asp.n ...
- Indy10 即时通讯Demo
最近闲来无事,重新学习了Indy10,顺手写了一段即时通讯代码.与上次写的笔记有不同之处,但差别不大. 未研究过TCP打洞技术,所以下面的代码采用的是 客户端--服务器--客户端 模式,也就是服务 ...