2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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

评论

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

恭喜我的同事丁宇入选年度 IT 领军人物

阿里巴巴云原生

阿里云 开源 云原生 获奖

王者荣耀商城异地多活架构设计

「架构实战营」

全链路压测(八):构建三大模型

老张

性能测试 全链路压测 稳定性保障

Linux驱动开发-编写(EEPROM)AT24C02驱动

DS小龙哥

4月月更

王者荣耀商城异地多活架构设计

Geek_8d5fe5

「架构实战营」

一条SQL语句是如何执行的?

程序员阿杜

MySQL 数据库

当东数西算变成一场西游记……

白洞计划

你真的会用搜索引擎吗?

Jackpop

为什么他们选择阿里云容器服务 ACK

阿里巴巴云原生

阿里云 容器 ACK 合作 阿里云云原生

OpenYurt 之 Yurthub 数据过滤框架解析

阿里巴巴云原生

阿里云 开源 容器 云原生 边缘计算

推荐一款可以替代Postman的国产api管理工具apipost

CodeNongXiaoW

php 后端 开发工具 java api管理工具

架构师成长路线图

俞凡

架构

在线XML压缩工具

入门小站

工具

即学即会 Serverless | 如何解决 Serverless 应用开发部署的难题?

阿里巴巴云原生

阿里云 开源 Serverless 云原生 Serverless Devs

王者荣耀商城异地多活架构设计

孙强

#架构师实战

在线时间加减计算器

入门小站

计算器

SeekTiger治理通证STI流动性质押的背后,是DAO社区的支持

西柚子

微信朋友圈高性能架构

流火

swagger2 统一默认Response Code

Rubble

swagger 4月日更

OpenKruise v1.1:功能增强与上游对齐,大规模场景性能优化

阿里巴巴云原生

阿里云 容器 云原生 OpenKruise 套件

初创者的精神和领导力--Coursera学习笔记(27/100)

hackstoic

领导力 创业者

浏览器突然好用多了。。。

Jackpop

赶紧给你的文件加个密吧!

Jackpop

基于 KubeVela 的机器学习实践

阿里巴巴云原生

阿里云 开源 容器 云原生 KubeVela

SeekTiger治理通证STI流动性质押的背后,是DAO社区的支持

小哈区块

Linux之ssh-add命令

入门小站

体验一款基于AI和区块链的体感运动App(26/100)

hackstoic

NFT 区块链、 gamefi P2E

架构设计学习资料汇总

俞凡

架构

flink维表查询redis之flink-connector-redis

山里小龙

系统架构实践(一)

Trent

浅谈软件项目开发过程

小锅米线

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