溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

大數(shù)據(jù)虛擬混算平臺Moonbox配置指南

發(fā)布時間:2020-07-02 21:49:34 來源:網(wǎng)絡 閱讀:5774 作者:宜信技術 欄目:大數(shù)據(jù)

一、環(huán)境準備

  • 已安裝Apache Spark 2.2.0(此版本僅支持Apache Spark 2.2.0, 其他Spark 版本后續(xù)會兼容)
  • 已安裝MySQL并啟動,且開啟遠程訪問
  • 各安裝節(jié)點已經(jīng)配置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

請根據(jù)實際情況修改為需要部署worker節(jié)點的地址, 每行一個地址

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

請根據(jù)實際情況修改

step 3: 修改moonbox-defaults.conf

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

將會看到以下內容,其中:

  • catalog

配置元數(shù)據(jù)存儲位置, 必須修改, 請根據(jù)實際情況修改

  • rest

配置rest服務, 按需修改

  • tcp

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

  • local

配置Spark Local模式作業(yè), 值為數(shù)組, 有多少個元素表示每個Worker節(jié)點啟動多少個Spark Local模式作業(yè)。如不需要可刪除。

  • cluster

配置Spark yarn模式作業(yè), 值為數(shù)組, 有多少個元素表示每個Worker節(jié)點啟動多少個Spark Yarn模式作業(yè)。如不需要可刪除。

  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元素中相關部分改為以下配置, 請根據(jù)實際情況修改。具體值可查閱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 = ""

五、分發(fā)安裝包

將MySQL Jdbc驅動包放置到libs和runtime目錄下, 然后將整個moonbox安裝目錄拷貝到所有安裝節(jié)點, 確保位置與主節(jié)點位置一致。

六、啟動集群

在master節(jié)點執(zhí)行

   sbin/start-all.sh

七、停止集群

在master節(jié)點執(zhí)行

   sbin/stop-all.sh

八、檢查集群是否成功啟動

在master節(jié)點執(zhí)行如下命令, 將會看到 MoonboxMaster 進程

   jps | grep Moonbox

在worker節(jié)點執(zhí)行如下命令, 將會看到 MoonboxWorker 進程

   jps | grep Moonbox

在worker節(jié)點執(zhí)行如下命令, 將會看到與配置文件對應個數(shù)的 SparkSubmit 進程

   jps -m | grep Spark

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

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

如果檢查通過, 則集群啟動成功, 即可參閱examples部分開始體驗啦。 如果檢查失敗, 可通過查看master節(jié)點或者worker節(jié)點上logs目錄下的日志進行問題排查。

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

來源:宜信技術學院

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI