十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
==> Spark 集群体系结构
云霄ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!--->
==> Spark安装与部署
Spark 的安装部署有四种模式:Standalone, YARN, Mesos, Amazon EC2, 这里主要讲解Standalone 方式
---> 环境部署准备工作:(此处不作详细讲解)
---- 四台 Linux 主机(虚拟机)
---- 修改主机名
---- 免密码登陆
---- 安装 JDK 环境
---> Spark Standalone 伪分布的部署
wget tar zxf spark-2.2.1-bin-hadoop2.7.tgz -C /app cd /app/spark-2.2.1-bin-hadoop2.7/conf cp spark-env.sh.template spark-env.sh cp slaves.template slaves ----------------------------------------------------------------------------------- vim spark-env.sh export JAVA_HOME=/app/java/jdk1.8.0_102 export SPARK_MASTER_HOST=bigdata0 export SPARK_MASTER_PORT=7077 ----------------------------------------------------------------------------------- vim slaves bigdata0
---> Spark Standalone 全分布的部署
---- 环境架构:
Master | bigdata1 | ||
Worker | bigdata2 | bigdata3 | bigdata4 |
---- 主节点部署:
wget http://mirrors.hust.edu.cn/apache/spark/spark-2.2.1/spark-2.2.1-bin-hadoop2.7.tgz tar zxf spark-2.2.1-bin-hadoop2.7.tgz -C /app cd /app/spark-2.2.1-bin-hadoop2.7/conf cp spark-env.sh.template spark-env.sh cp slaves.template slaves ----------------------------------------------------------------------------------- vim spark-env.sh export JAVA_HOME=/app/java/jdk1.8.0_102 export SPARK_MASTER_HOST=bigdata0 export SPARK_MASTER_PORT=7077 ----------------------------------------------------------------------------------- vim slaves bigdata2 bigdata3 bigdata4
---- 将主节点的安装目录 cp 到其它从节点上即可
scp -r spark-2.2.1-bin-hadoop2.7/ bigdata2:/app & scp -r spark-2.2.1-bin-hadoop2.7/ bigdata3:/app & scp -r spark-2.2.1-bin-hadoop2.7/ bigdata4:/app &
---- 启动
start-all.sh
==> Spark HA 的实现
Spark HA 有两种实现方式:
---> 基于文件系统的单点故障恢复:只有一个主节点、只能用于开发测试
---- 特点:把 Spark 的运行信息入到一个本地的恢复目录,如果Master死掉,恢复 master 的时候从恢复目录上读取之前的信息
---- 配置:在 standalone 的基础上修改 spark-env.sh 文件,文件内容为:
vim spark-env.sh export JAVA_HOME=/app/java/jdk1.8.0_102 export SPARK_MASTER_HOST=bigdata0 export SPARK_MASTER_PORT=7077 export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=FILESYSTEM -Dspark.deploy.recoveryDirectory=/data/spark_recovery"
---- 参数讲解:
---spark.deploy.recoveryMode
=>此参数默认值为:None ,
=>基于文件系统的单点故障修复:FILESYSTEM
=> 基于 Zookeeper 实现 Standby 的 Master: ZOOKEEPER
---spark.deploy.recoveryDirectory 指定恢复目录
---- 测试:bin/spark-shell --master spark://bigdata1:7077
--->基于 ZooKeeper 实现 Standby 的 Master
---- 特点:
Zookeeper 提供了一个 Leader Election 机制,利用这个机制可以保证虽然集群存在多个 Master, 但是只有一个是Active 的,其他的都是 Standby , 当 Active 的 Master 出现故障时,另外的一个 Standby Master 会被选举出来。 由于集群的信息包括 Worker, Driver 和 Application 的信息都已经持久化到 Zookeeper , 因此在切换的过程中只会影响新的 Job 的提交 , 对于正在进行 Job 没有任何的影响 |
---- 配置:在 standalone 的基础上修改 spark-env.sh 文件,文件内空为:
vim spark-env.sh export JAVA_HOME=/app/java/jdk1.8.0_102 export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=bigdata2:2181,bigdata3:2181,bigdata4:2181 -Dspark.deploy.zookeeper.dir=/spark"
---- 测试:
bigdata1: sbin/start-all.sh bigdata2: sbin/start-master.sh
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。