一、环境准备

  • 已安装Apache Spark 2.2.0(此版本仅支持Apache Spark 2.2.0, 其他Spark 版本后续会兼容)
  • 已安装MySQL并启动,且开启远程访问
  • 各安装节点已经配置ssh免密登录

二、下载

moonbox-0.3.0-beta下载:https://github.com/edp963/moonbox/releases/tag/0.3.0-beta

三、解压

tar -zxvf moonbox-assembly_2.-0.3.-beta-dist.tar.gz

四、修改配置文件

配置文件位于conf目录下

step 1: 修改slaves

mv slaves.example slaves
vim slaves

将会看到如下内容:

localhost

请根据实际情况修改为需要部署worker节点的地址, 每行一个地址

step 2: 修改moonbox-env.sh

mv moonbox-env.sh.example moonbox-env.sh
chmod u+x moonbox-env.sh
vim moonbox-env.sh

将会看到如下内容:

export JAVA_HOME=path/to/installed/dir
export SPARK_HOME=path/to/installed/dir
export YARN_CONF_DIR=path/to/yarn/conf/dir
export MOONBOX_SSH_OPTS="-p 22"
export MOONBOX_HOME=path/to/installed/dir
# export MOONBOX_LOCAL_HOSTNAME=localhost
export MOONBOX_MASTER_HOST=localhost
export MOONBOX_MASTER_PORT=

请根据实际情况修改

step 3: 修改moonbox-defaults.conf

  mv moonbox-defaults.conf.example moonbox-defaults.conf
vim moonbox-defaults.conf

将会看到以下内容,其中:

  • catalog

配置元数据存储位置, 必须修改, 请根据实际情况修改

  • rest

配置rest服务, 按需修改

  • tcp

配置tcp(jdbc)服务, 按需修改

  • local

配置Spark Local模式作业, 值为数组, 有多少个元素表示每个Worker节点启动多少个Spark Local模式作业。如不需要可删除。

  • cluster

配置Spark yarn模式作业, 值为数组, 有多少个元素表示每个Worker节点启动多少个Spark Yarn模式作业。如不需要可删除。

moonbox {
deploy {
catalog {
implementation = "mysql"
url = "jdbc:mysql://host:3306/moonbox?createDatabaseIfNotExist=true"
user = "root"
password = ""
driver = "com.mysql.jdbc.Driver"
}
rest {
enable = true
port =
request.timeout = "600s"
idle.timeout= "600s"
}
tcp {
enable = true
port =
}
}
mixcal {
pushdown.enable = true
column.permission.enable = true
spark.sql.cbo.enabled = true
spark.sql.constraintPropagation.enabled = false local = [{}]
cluster = [{
spark.hadoop.yarn.resourcemanager.hostname = "master"
spark.hadoop.yarn.resourcemanager.address = "master:8032"
spark.yarn.stagingDir = "hdfs://master:8020/tmp"
spark.yarn.access.namenodes = "hdfs://master:8020"
spark.loglevel = "ERROR"
spark.cores.max =
spark.yarn.am.memory = "512m"
spark.yarn.am.cores =
spark.executor.instances =
spark.executor.cores =
spark.executor.memory = "2g"
}]
}
}
  • optional: 如果HDFS 配置了高可用(HA)、或者HDFS 配置了kerberos、或者YARN 配置了高可用(HA)、或者YARN 配置了kerberos

将cluster元素中相关部分改为以下配置, 请根据实际情况修改。具体值可查阅hdfs配置文件和yarn配置文件。

#### HDFS HA ####
spark.hadoop.fs.defaultFS="hdfs://service_name"
spark.hadoop.dfs.nameservices="service_name"
spark.hadoop.dfs.ha.namenodes.service_name="xxx1,xxx2"
spark.hadoop.dfs.namenode.rpc-address.abdt.xxx1="xxx1_host:8020"
spark.hadoop.dfs.namenode.rpc-address.abdt.xxx2="xxx2_host:8020"
spark.hadoop.dfs.client.failover.proxy.provider.abdt="org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider"
spark.yarn.stagingDir = "hdfs://service_name/tmp"
  #### HDFS kerberos ####
dfs.namenode.kerberos.principal = ""
dfs.namenode.kerberos.keytab = ""
#### YARN HA ####
spark.hadoop.yarn.resourcemanager.ha.enabled=true
spark.hadoop.yarn.resourcemanager.ha.rm-ids="yyy1,yyy2"
spark.hadoop.yarn.resourcemanager.hostname.rm1="yyy1_host"
spark.hadoop.yarn.resourcemanager.hostname.rm2="yyy2_ho
st"
#### YARN kerberos ####
spark.yarn.principal = ""
spark.yarn.keytab = ""

五、分发安装包

将MySQL Jdbc驱动包放置到libs和runtime目录下, 然后将整个moonbox安装目录拷贝到所有安装节点, 确保位置与主节点位置一致。

六、启动集群

在master节点执行

sbin/start-all.sh

七、停止集群

在master节点执行

sbin/stop-all.sh

八、检查集群是否成功启动

在master节点执行如下命令, 将会看到 MoonboxMaster 进程

jps | grep Moonbox

在worker节点执行如下命令, 将会看到 MoonboxWorker 进程

jps | grep Moonbox

在worker节点执行如下命令, 将会看到与配置文件对应个数的 SparkSubmit 进程

jps -m | grep Spark

使用moonbox-cluster命令查看集群信息

bin/moonbox-cluster workers
bin/moonbox-cluster apps

如果检查通过, 则集群启动成功, 即可参阅examples部分开始体验啦。 如果检查失败, 可通过查看master节点或者worker节点上logs目录下的日志进行问题排查。

开源地址:https://github.com/edp963/moonbox

来源:宜信技术学院

大数据虚拟混算平台Moonbox配置指南的更多相关文章

  1. 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建

    大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建 大数据应用之Windows平台Hbase客户端Eclipse环境搭建-Java版 作者:张子良 版权所有,转载请注明出处 引子 ...

  2. 风险识别系统-大数据智能风控管理平台-企业风控解决方案– 阿里云 https://www.aliyun.com/product/saf

    风险识别系统-大数据智能风控管理平台-企业风控解决方案– 阿里云 https://www.aliyun.com/product/saf

  3. 大数据【一】集群配置及ssh免密认证

    八月迷情,这个月会对大数据进行一个快速的了解学习. 一.所需工具简介 首先我是在大数据实验一体机上进行集群管理学习,管理五台实验机,分别为master,slave1,slave2,slave3,cli ...

  4. 基于Hadoop生态SparkStreaming的大数据实时流处理平台的搭建

    随着公司业务发展,对大数据的获取和实时处理的要求就会越来越高,日志处理.用户行为分析.场景业务分析等等,传统的写日志方式根本满足不了业务的实时处理需求,所以本人准备开始着手改造原系统中的数据处理方式, ...

  5. 使用Oracle Stream Analytics 21步搭建大数据实时流分析平台

    概要: Oracle Stream Analytics(OSA)是企业级大数据流实时分析计算平台.它可以通过使用复杂的关联模式,扩充和机器学习算法来自动处理和分析大规模实时信息.流式传输的大数据可以源 ...

  6. 06 大数据CentOS6.5mini安装与网络配置

    1. CentOS6.5mini安装 文件>>新建虚拟机 选择自定义,下一步 默认,下一步 选择稍后安装操作系统,下一步 选择CentOS版本,下一步 给虚拟机命名,这个是在VMWare中 ...

  7. 大数据下的数据分析平台架构zz

    转自http://www.cnblogs.com/end/archive/2012/02/05/2339152.html 随着互联网.移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海 ...

  8. 大数据自学3-Windows客户端DbVisualizer/SQuirreL配置连接hive

    前面已经学习了将数据从Sql Server导入到Hive DB,并在Hue的Web界面可以查询,接下来是配置客户端工具直接连Hive数据库,常用的有DbVisualizer.SQuirreL SQL ...

  9. 大数据时代日志分析平台ELK的搭建

    A,首先说说ELK是啥,  ELK是ElasticSearch . Logstash 和 Kiabana 三个开源工具组成.Logstash是数据源,ElasticSearch是分析数据的,Kiaba ...

随机推荐

  1. [bug系列]Method not found: 'Void Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommandBuilderFactory

    bug由来 最近开始学习NetCore,想通过实战使用NetCore做一个集成数据库存储Redis缓存的WebApi项目,由于MSSQL的庞大体积,最终决定使用轻量级关系型数据库MySql. 所以最终 ...

  2. c#中的访问修饰符Protected,privet ,public, internal,和internal protected

    Protected,privet ,public, internal,和internal protected的区别 Private修饰的,只能值类内部使用,外部不可以使用,子类不能直接访问,但可以通过 ...

  3. VMNET 工作站

    nattunnel 快速连接内网电脑 内网穿透.内网映射,支持微信小程序本地开发 支持WEB.远程桌面.多种TCP协议 官方主页:http://www.vmnet.cc 用途 一个可以快速连接局域网中 ...

  4. Qt打开外部程序和文件夹需要注意的细节(注意QProcess的空格问题,以及打开本地文件时,需要QUrl::fromLocalFile才可以)

    下午写程序中遇到几个小细节,需要在这里记录一下. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 QProcess *process = new QProcess(this ...

  5. Win8 Metro(C#)数字图像处理--2.56简单统计法图像二值化

    原文:Win8 Metro(C#)数字图像处理--2.56简单统计法图像二值化  [函数名称] 简单统计法图像二值化 WriteableBitmap StatisticalThSegment(Wr ...

  6. 搭建svn服务器&服务器客户端使用笔记

    参考借鉴文章:http://www.cnblogs.com/vijayfly/p/5711962.html 之前尝试着用git管理公司代码,但被一个问题困惑了很久无法解决,那就是git该如何只pull ...

  7. 有什么很好的软件是用 Qt 编写的?(尘中远)

    作者:尘中远链接:http://www.zhihu.com/question/19630324/answer/19365369来源:知乎 http://www.cnblogs.com/grandyan ...

  8. 用CDialog实现的消息框MessageBoxST类

    http://blog.csdn.net/akof1314/article/details/5078563

  9. MinGW和MSYS区别和关系以及MinGW&MSYS在Win7中安装并编译x264

    http://blog.csdn.net/freeape/article/details/50555003

  10. c#基于Tablet pc实现的手写输入

    需要安装Tablet pc,win7的话 直接在控制面板>程序和应用>添加组建里面勾选上添加 然后就是下面的程序了,看代码 设计文件 namespace 手写识别 { partial cl ...