写点什么

大数据虚拟混算平台 Moonbox 配置指南(上)

  • 2020-02-09
  • 本文字数:1976 字

    阅读完需:约 6 分钟

大数据虚拟混算平台Moonbox配置指南(上)

一、环境准备

  • 已安装 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.11-0.3.0-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=2551  
复制代码


请根据实际情况修改

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 = "123456"            driver = "com.mysql.jdbc.Driver"        }        rest {            enable = true            port = 9099            request.timeout = "600s"            idle.timeout= "600s"        }        tcp {            enable = true            port = 10010        }    }    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 = 2 spark.yarn.am.memory = "512m" spark.yarn.am.cores = 1 spark.executor.instances = 2 spark.executor.cores = 1 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 = ""
复制代码


本文转载自宜信技术学院网站。


原文链接:http://college.creditease.cn/detail/271


2020-02-09 15:08808

评论

发布
暂无评论
发现更多内容

程序员• 后浪

古时的风筝

程序员 后浪

C++ sqlite3使用指南

泰伦卢

c c++ C#

无所不能 就像妈妈一样

Neco.W

思考 情绪

MacOS高效使用指南-我的体系化方案以及软件清单

lmymirror

高效工作 效率工具 知识管理 Mac 操作系统

工作感悟随笔

程序员小岑

感悟

关于 WordPress-Automatic 的分布式办公实践

刘培培

分布式办公 远程办公

深入浅出虚拟内存

泰伦卢

c c++ C#

作为自由职业者,我的近况

一尘观世界

程序员 自由职业 复盘

时间足够爱你

rmrf

学习 思考 持之以恒

原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (三)单元测试在整个测试体系中的位置

编程道与术

软件测试 TDD 单元测试 集成测试 验收测试

电脑城最简单骗局,仍然有无数人上当

周三不加班

电脑城 电脑选购

DDD 实践手册(5. Factory 与 Repository)

Joshua

企业架构 设计模式 领域驱动设计 DDD 架构模式

程序员《后浪》-图文版

Java_若依框架教程

后浪 程序媛 娱乐

聊聊Redis SDS

huizhou92

redis

想看懂stl代码,先搞定type_traits是关键

泰伦卢

c c++ C#

Java并发编程--ReentrantLock

Java收录阁

并发编程

Redis学习笔记(列表类型)

编程随想曲

redis

理解go 的 sort

huizhou92

Go 语言

C++中glog源码剖析以及如何设计一个高效 log模块

泰伦卢

c c++ C#

数据湖引擎是什么鬼

数据社

大数据 数据仓库 数据湖 数据架构

每日算法之leetcode 50 Power

田镇珲

递归 LeetCode 分治

go 怎样做 stw

huizhou92

Go 语言

回"疫"录(10):危机与希望

小天同学

疫情 回忆录 现实纪录 纪实

Web百度离线地图开发

玏佾

WebGIS 离线地图 Web离线地图

自助设备系列——增长点

孙苏勇

产品 行业资讯 智能设备

Netty 源码解析(八): 回到 Channel 的 register 操作

猿灯塔

游戏开发通用技术和工具

波波

编程 游戏开发 H5游戏

和孩子聊聊死亡

陈医僧Ethan

感悟 育儿

Java并发编程基础--Java内存模型

Java收录阁

架构师快问快答2

IT民工大叔

未完成乞丐版 Args

escray

学习 CSD 认证实战营

大数据虚拟混算平台Moonbox配置指南(上)_文化 & 方法_Moonbox_InfoQ精选文章