大数据高可用集群环境安装与配置(09)——安装Spark高可用集群

1. 获取spark下载链接

登录官网:http://spark.apache.org/downloads.html 选择要下载的版本

2. 执行命令下载并安装

cd /usr/local/src/
wget http://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-2.4.4/spark-2.4.4-bin-hadoop2.7.tgz
tar -zxvf spark-2.4.4-bin-hadoop2.7.tgz
mv spark-2.4.4-bin-hadoop2.7 /usr/local/spark
cd /usr/local/spark/conf
mv spark-env.sh.template spark-env.sh

3. 修改spark-env.sh配置

vi spark-env.sh

在尾部添加下面配置,绑定hadoop的配置文件路径

export JAVA_HOME=/usr/local/java/jdk
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/Hadoop
export SPARK_HOME=/usr/local/spark

export SPARK_MASTER_PORT=7077
# 非高可用集群配置
# export SPARK_MASTER_IP=master
# 高可用集群配置
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=master:2181,master-backup:2181 -Dspark.deploy.zookeeper.dir=/spark"

4. 修改slaves配置

mv slaves.template slaves

vi slaves

删除里面的localhost,添加下面配置

node1
node2
node3

5. 指定spark的主节点

mv spark-defaults.conf.template spark-defaults.conf
vi spark-defaults.conf

添加下面配置

spark.master spark://master:7077,master-backup:7077

6. 修改服务器系统环境变量

所有服务器都需要按要求修改配置

vi /etc/profile

在尾部添加下面配置

export SPARK_HOME=/usr/local/spark/
export PATH=$PATH:$SPARK_HOME/bin
# 这里根据具体需要进行修改,如果你运行的是python2版本的程序,则不需要修改,python3的话后面需要安装相关环境
export PYSPARK_PYTHON=/usr/local/bin/python3

保存退出后,运行命令,让配置马上生效

source /etc/profile

7. 安装插件,配置pyspark访问hbase

拷贝spark访问hbase所需要的jar到spark/jar引用文件夹

cp /usr/local/hbase/lib/hbase-*.jar /usr/local/spark/jars/

配置Phoenix方式访问hbase

cd /usr/local/src/
wget http://www.apache.org/dyn/closer.lua/phoenix/apache-phoenix-5.0.0-HBase-2.0/bin/apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz
tar -zxvf apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz
mv apache-phoenix-5.0.0-HBase-2.0-bin /usr/local/phoenix
cd /usr/local/phoenix

# 复制phoenix服务插件到hbase目录下
cp phoenix-5.0.0-HBase-2.0-server.jar /usr/local/hbase/lib/
# 复制phoenix客户端插件到spark的jars目录下
cp phoenix-5.0.0-HBase-2.0-client.jar /usr/local/spark/jars/

8. 将spark同步到其他服务器上

rsync -avz /usr/local/spark/ master-backup:/usr/local/spark/
rsync -avz /usr/local/spark/ node1:/usr/local/spark/
rsync -avz /usr/local/spark/ node2:/usr/local/spark/
rsync -avz /usr/local/spark/ node3:/usr/local/spark/

# 将phoenix-5.0.0-HBase-2.0-server.jar同步到其他两台服务器上
rsync -avz /usr/local/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar master-backup:/usr/local/hbase/lib/
rsync -avz /usr/local/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar node1:/usr/local/hbase/lib/
rsync -avz /usr/local/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar node2:/usr/local/hbase/lib/
rsync -avz /usr/local/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar node3:/usr/local/hbase/lib/

9. 启动spark

重启hbase服务

/usr/local/hbase/bin/stop-hbase.sh
/usr/local/hbase/bin/start-hbase.sh

在master服务器上启动spark服务

/usr/local/spark/sbin/start-all.sh

在master-backup服务器上,启动第二个master

/usr/local/spark/sbin/start-master.sh

在master与master-backup服务器输入jps,都可以查看到Master

31681 Master

在其他服务器输入jps

28660 Worker

启动后就可以看到spark的web控制台地址了,在浏览器中输入地址访问,就可以查看到master节点的spark,Status为ALIVE,master-backup节点的spark,Status为STANDBY

http://192.168.10.90:8080/

http://192.168.10.91:8080/

10. 测试master切换

首先打开http://192.168.10.90:8080/ 与 http://192.168.10.91:8080/ 页面

在master服务器上输入jps,查看到Master服务的PID

16073 Master

然后输入命令,杀掉Master进程

kill -9 16073

运行scala(不运行的话,刷新页面看不到切换效果)

spark-shell --master spark://master:7077,master-backup:7077

接着在浏览器中刷新打开的两个页面,查看Workers是否已切换到另一台服务器上了

版权声明:本文原创发表于 博客园,作者为 AllEmpty 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

作者博客:http://www.cnblogs.com/EmptyFS/

原文地址:https://www.cnblogs.com/EmptyFS/p/12113176.html

时间: 2024-08-07 15:56:28

大数据高可用集群环境安装与配置(09)——安装Spark高可用集群的相关文章

Kafka:ZK+Kafka+Spark Streaming集群环境搭建(八)安装zookeeper-3.4.12

如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.> 如何安装hadoop2.9.0请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二)安装hadoop2.9.0> 如何安装spark2.2.1请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(三)安装spark2.2.1

Kafka:ZK+Kafka+Spark Streaming集群环境搭建(三)安装spark2.2.1

如何配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.> 如何安装hadoop2.9.0请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二)安装hadoop2.9.0> 安装spark的服务器: 192.168.0.120 master 192.168.0.121 slave1 192.168.0.122 slave

Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0

如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.> 如何安装hadoop2.9.0请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二)安装hadoop2.9.0> 如何安装spark2.2.1请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(三)安装spark2.2.1

Spark修炼之道(基础篇)——Linux大数据开发基础:第一节、Linux介绍、安装及使用初步

本节主要内容 Linux简史 Linux特点 Ubuntu Linux安装 Linux使用初步 1. Linux简史 要讲述大名鼎鼎的Linux,必然要先从UNIX系统谈起,下面这幅图给出了Unix系统的进化图: 图片来源:http://baike.baidu.com/link?url=QfoqWtWGs-BjpnfEy_AUk7Bm3XHuf6JbN92HCOoUBfFfj8BuSDkbwmldtmUEmGRDUwqsQMIV4jCKHvdkSPr3Lq 从进化图中可以看到,目前所有的主流操作

Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十三)kafka+spark streaming打包好的程序提交时提示虚拟内存不足(Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical memory used; 2.2 GB of 2.1 G)

异常问题:Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical memory used; 2.2 GB of 2.1 GB virtual memory used. Killing container. spark-submit提交脚本: [[email protected] work]$ more submit.sh #! /bin/bash jars=""

项目进阶 之 集群环境搭建(三)多管理节点MySQL集群

上次的博文项目进阶 之 集群环境搭建(二)MySQL集群中,我们搭建了一个基础的MySQL集群,这篇博客咱们继续讲解MySQL集群的相关内容,同时针对上一篇遗留的问题提出一个解决方案. 1.单管理节点MySQL集群和多管理节点MySQL集群 上一篇的博客中,我们搭建的MySQL集群架构中,只存在一个管理节点,这样搭建的集群可以用如下所示的结构表示. 仔细分析上图就会发现,上图所示的单管理节点MySQL集群存在当唯一的管理节点由于网络.断电.压力过大等各种原因宕机后,数据节点和SQL节点将会各自为

大数据学习实践总结(2)--环境搭建,JAVA引导,HADOOP搭建

PS:后续的文章会把我实践的内容分解成为一个个的小模块,方便大家的学习,交流.文未我也会附上相关的代码.一起加油!    学有三年的大数据原理,一直没有实践过.最近准备离职,正好把自己所学的大数据内容全部实践一下,也不至于只会纯理论.面对实践,首先要有空杯心态,倒空自己之后,才能学到更多,加油!也希望大家多关注,以后会更多注重实践跟原理的结合. 环境搭建 对于大数据,重点在于Hadoop的底层架构.虽说现在spark架构用的还是比较多.但hadoop还是基础.还有就是为什么要以Linux为基础,

Redis安装与配置Redis安装与配置

今天在使用Redis的时候遇到了一些问题,这个问题的解决,发现很多人使用Redis的时候没有一点安全意识.所以又重温了一下Redis,觉得应该写一下Redis的安全和配置. Redis安装与配置Redis安装与配置 安装 下载,解压,编译: $ wget http://download.redis.io/releases/redis-4.0.10.tar.gz $ tar xzf redis-4.0.10.tar.gz $ mv redis-4.0.10 /usr/local/redis $ c

Spring XD简介:大数据应用的运行时环境

简介 Spring XD(eXtreme Data,极限数据)是Pivotal的大数据产品.它结合了Spring Boot和Grails,组成Spring IO平台的执行部分.尽管Spring XD利用了大量现存的Spring项目,但它是一种运行时环境,而不是一个类库或者框架,它包含带有服务器的bin目录,你可以通过命令行启动并与之交互.运行时可以运行在开发机上.客户端自己的服务器上.AWS EC2上或者Cloud Foundry上. Spring XD中的关键组件是管理和容器服务器(Admin

大数据入门——搭建Hadoop处理环境

由于Hadoop需要运行在Linux环境中,而且是分布式的,因此个人学习只能装虚拟机,本文都以VMware Workstation为准,安装CentOS7,具体的安装此处不作过多介绍,只作需要用到的知识介绍. VMware的安装,装好一个虚拟机后利用复制虚拟机的方式创建后面几个虚拟机,省时省力,需要注意的是需要修改每个虚拟机的IP与主机名. 所有虚拟机采用NAT模式上网,而且要保证与物理主机的IP互相能访问. 需要注意的几个问题.nat如果上网首先需要查看物理机(pc机)这个服务器已经启动.上网