一、环境准备
已安装 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
更多内容推荐
一名在读研究生的自白:我为什么会沉迷于 openGauss 社区?
陈现森,目前是一名华东师范大学在读研究生,曾参与 openGauss 数据库与 Spark 大数据项目的对接任务,实现了 openGauss 社区与 Spark 社区之间的联动,连接了 openGauss 社区重要的北向技术生态。近两年来,积极参与 openGauss 社区贡献,曾在社区任务打榜赛
2022-10-08
保 10 万涨薪、保 Offer、保大厂,1V1 私教服务上线啦!
受大行情影响目前整个互联网行业的就业形势日渐严峻,上半年保住工作,下半年保住老板。裁员潮一波接一波,很多大厂也加入了裁员行列,裁员比例超过30%。有些同学辞职之后,很久没有找到工作;在职的同学在公司里谨小慎微,害怕被降薪、被裁员;与此同时,大
2022-10-17
尚硅谷 MyBatis 新版视频教程发布
本套视频教程内容涵盖:MyBatis框架搭建、MyBatis配置文件以及映射文件讲解及编写、MyBatis获取参数值的方式、MyBatis中各种查询功能、MyBatis自定义映射、MyBatis动态SQL、MyBatis缓存机制、MyBatis逆向工程、MyBatis分页插件等。
2022-02-24
05|K8s 极简实战:示例应用介绍
这节课,我们来设计一个更加接近真实业务的示例应用。
2022-12-19
使用 yo 命令行向导创建 SAP UI5 应用
命令行:yo easy-ui5 project, 遇到错误消息的解决思路。
2022-08-23
18|自托管构建:如何使用 Tekton 构建镜像?
这节课,我们来介绍其中一种自动构建镜像的自托管方案:使用 Tekton 来自动构建镜像。
2023-01-18
04|如何借助 GitOps 实现应用秒级自动发布和回滚?
这节课,我们来看看 K8s 应用发布的一般做法。此外,我还会带你从零开始构建 GitOps 工作流,体验 GitOps 在应用发布上为我们带来的全新体验!
2022-12-12
19|自托管构建:如何使用 Harbor 搭建企业级镜像仓库?
这节课,我们来学习如何使用 Harbor 来搭建企业级的镜像仓库。
2023-01-20
部署 spark2.2 集群 (standalone 模式)
一起来实战部署spark2.2集群(standalone模式)
2022-08-08
云小课|云小课带你快速掌握云数据迁移 CDM
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说)、深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云。更多精彩内容请单击此处。
2021-12-23
加餐 05|分布式微服务与智能 SaaS
分布式微服务技术是怎么演进出来的?
2023-01-16
Hadoop WordCount 案例
Hadoop WordCount案例
2022-05-10
加餐 03|学习攻略(二):大数据 & 云计算,究竟怎么学?
这节课我们学到了开源大数据生态中的三个重要角色,它们是Hadoop大数据平台的基础,负责了文件存储、资源管理和分布式协调。
2022-12-26
Spark 编程基础 (Python 版)
Spark编程基础(Python版)
2022-11-30
conda 安装报错:PermissionError [Errno 13] Permission denied
原文链接
2023-01-13
Jenkins 集群下的 pipeline 实战,kalilinux 使用教程 pdf
执行命令ssh root@192.168.133.131,这时候控制台提示输入yes或者no,请您输入yes,再根据提示输入master的密码,此时登录master成功:
2021-11-10
数据治理(十六):Ranger 管理 HDFS 安全
访问Hive有两种方式:HiveServer2和Hive Client,Hive Client需要Hive和Hadoop的jar包,配置环境。HiveServer2使得连接Hive的Client从Yarn和HDFS集群中独立出来,不需要每个节点都配置Hive和Hadoop的jar包和一系列环境。
2022-09-14
Kubernetes MetalLB 作为 Load Balancer 下
在上一篇《在 Kubernetes 集群中使用 MetalLB 作为 LoadBalancer(上)》中,我们使用 MetalLB 的 Layer2 模式作为 LoadBalancer 的实现,将 Kubernetes 集群中的服务暴露到集群外。
2022-08-23
学习心得 - 架构训练营 - 第八课
设计消息队列存储消息数据的 MySQL 表格
2021-11-14
数据治理(十三):Ranger 安装与启动
Ranger的安装这里选择单节点安装即可,后期需要在Ranger中安装Hive权限管理的插件,也需要在有Ranger环境下才能安装此插件,此插件管理Hive访问权限,必须安装到对应的Hive 服务器端,所以这里我们将Ranger安装到node1节点上(node1节点是HDFS节点,并且此节
2022-09-11
推荐阅读
04. 快速部署 RocketMQ Dashboard 监控中心
2023-02-15
【k8s 系列】搭建 MicroK8s Dashboard 教程。
2023-11-25
53|容器化实战:怎样搭建 K8s 爬虫集群?
2023-02-11
Docker 搭建 Hadoop 集群教程。
2023-11-19
第三节 目标计划管理“三九”说明书之二——定计划
2023-10-17
第 23 期 | GPTSecurity 周报
2023-11-02
第 25 期 | GPTSecurity 周报
2023-11-03
电子书
大厂实战PPT下载
换一换 徐文浩 | bothub创始人 《AI 大模型之美》专栏作者
王胜 | 三维家 图灵实验室 AI 负责人
赵钰莹 | 极客邦科技 InfoQ 极客传媒 副总经理
评论