写点什么

大数据虚拟混算平台 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:08774

评论

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

向上管理第一项:路径P背后的目标B

kimmking

管理

拜托,别再问我Zookeeper如何实现分布式锁了!

不才陈某

zookeeper 分布式 后端 分布式锁

高仿瑞幸小程序 04 小程序的全局数据

曾伟@喵先森

小程序 微信小程序 大前端

使用人工智能技术改进面试机器人

陆道峰

人工智能 学习 聊天机器人

游戏夜读 | 联网才能玩的单机

game1night

来了来了,2020 首场 Meetup ,可!

Apache Flink

大数据 flink 流计算 实时计算

做程序员有未来吗

山楂大卷

程序员 个人成长 职业规划 技术人

数据挖掘|cross_val_score交叉验证使用

黄大路

Python 数据挖掘 学习 数据分析

产品经理中必会SQL技能,相关内容研发可不予支持

韩超

MySQL sql 产品经理

Scrum精髓 - Scrum的核心到底是什么

Bob Jiang

Scrum 敏捷 Scrum精髓 敏捷精髓

如何快速对应用系统做一个360度画像诊断?

姜戈

Java 运维 多线程 网络 内存

读 Go Scheduler 有感:给产品经理的建议

Ya

程序员 产品经理 操作系统 OS Scheduler

面试官浅析程序员面试过程中的二三事

joe

互联网 个人成长 方法 职场 文化

ROS与OpenAI结合使用教程(概览)

辣么大

回"疫"录(11):别让善良寒了心

小天同学

疫情 回忆录 现实纪录 纪实

Java并发编程--ReentrantLock

Java收录阁

并发编程

Elasticsearch原理讲透了!

Geek_0o5u34

lucene elasticsearch 倒排索引 分布式搜索引擎 数据的分片和备份

DevOps怎样影响开发运维人员

脚动两轮男之漂流小王子

DevOps

程序员的晚餐 | 5月9日 炖蹄髈

清远

程序员

直播电商行业一些看法

黄大路

互联网 商业 商业模式 商业价值 行业资讯

Java 环境配置与编辑器使用

旭霁

Java IDEA

关于查尔斯-斯特里克兰

黄大路

提升认知 小说 个人提升 认识自己

真实 Java 笔试题

旭霁

面试

腊鸡与猴儿

黄大路

人生 小说

关于职能型团队管理一些总结

黄大路

项目管理 管理

一个 UED 团队的自我修养

oldj

团队管理 UED

理解雾计算(Fog Computing)与边缘计算(Edge Computing)

老任物联网杂谈

雾计算 Fog Computing 边缘计算 Edge Computing

数据库连接池的大小

Java收录阁

数据库

以不变应万变——复杂系统回归测试新思路

刘华Kenneth

DevOps 敏捷 测试 单体系统 复杂

Redis 命令执行过程(上)

程序员历小冰

redis 源码分析

如何打造个人品牌?

石云升

个人 品牌

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