apache-spark - 基于 Salt 安装 Spark 集群的快速指南

标签 apache-spark hdfs salt-stack

我尝试在官方 Salt 用户论坛上询问这个问题,但由于某种原因,我在那里没有得到任何帮助。我希望我能在这里得到帮助。

我是 Salt 的新用户。我仍在评估该框架作为我们 SCM 工具的候选者(而不是 Ansible)。

我完成了本教程,并且能够成功管理本教程前半部分所述的主从关系。

教程现在 fork 到许多不同的、复杂的领域。

我需要的是相对简单的,所以我希望也许有人可以在这里指导我如何完成它。

我希望在 20 台 RHEL 7 机器上安装 Spark 和 HDFS(假设范围为 168.192.10.0-20,0 是名称节点)。

我懂了:

https://github.com/saltstack-formulas/hadoop-formula

我找到了第三方 Spark 公式:

https://github.com/beauzeaux/spark-formula

有人可以建议一组关于如何以最直接的方式进行此安装的说明吗?

最佳答案

免责声明:此答案仅描述了您需要做的粗略过程。我从各自的文档章节中提炼出来,并添加了引用资料。我假设您熟悉 Salt 的基本工作原理(状态和支柱等)以及 Hadoop(我不熟悉)。

1.配置GitFS

安装 Salt 公式的典型方法是使用 GitFS。见respective chapter from the Salt manual以获得深入的文档。

这需要做在您的 Salt 主节点上 .

  • 在主配置文件中启用 GitFS(通常为 /etc/salt/master/etc/salt/master.d 中的单独文件):
    fileserver_backend:
      - git
    
  • 添加您需要的两个 Salt 公式作为 Remote (同一文件)。这是also covered in the documentation :
    gitfs_remotes:
      - https://github.com/saltstack-formulas/hadoop-formula.git
      - https://github.com/beauzeaux/spark-formula
    
  • (可选):注意 Formula documentation 中的以下警告:

    We strongly recommend forking a formula repository into your own GitHub account to avoid unexpected changes to your infrastructure.

    Many Salt Formulas are highly active repositories so pull new changes with care. Plus any additions you make to your fork can be easily sent back upstream with a quick pull request!



    将公式 fork 到您自己的 Git 存储库(使用 GitHub 或其他方式)并使用您的私有(private) Git URL 作为远程,以防止对您的配置进行意外更改。
  • 重启 salt 大师。

  • 2.安装Hadoop

    这在 Formulas README file 中有详细记录。 .粗略阅读,该公式可以同时设置 Hadoop 主从;角色是使用 salt 粒确定的。
  • 在文件/etc/salt/grains中配置Hadoop角色. 这需要在每个 Salt minion 节点上完成 (适当使用 hadoop_masterhadoop_slave):
    roles:
      - hadoop_master
    
  • 配置Salt mine在您的 Salt minion 上(通常为 /etc/salt/minion/etc/salt/minion.d 中的单独文件):
    mine_functions:
      network.interfaces: []
      network.ip_addrs: []
      grains.items: []
    
  • 看看additional configuration grains并按照您认为合适的方式设置它们。
  • 添加配置 Hadoop 设置所需的支柱数据。 我们回到了 Salt 主节点 为此(为此,我假设您熟悉状态和支柱;请参阅 manualthis walkthrough 否则)。看看example pillar可能的配置选项。
  • 使用 hadoophadoop.hdfs您的 top.sls 中的状态:
    'your-hadoop-hostname*':
      - hadoop
      - hadoop.hdfs
    

  • 3.安装 Spark
  • 根据公式的自述文件,没有什么可以通过颗粒或柱子进行配置,所以剩下的就是使用 spark在您的 top.sls 中声明:
    'your-hadoop-hostname*':
      - hadoop
      - hadoop.hdfs
      - spark
    

  • 4. 开火!

    应用所有状态:
    salt 'your-hadoop-hostname*' state.highstate
    

    关于apache-spark - 基于 Salt 安装 Spark 集群的快速指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34477677/

    相关文章:

    salt-stack - 编译SLS文件失败

    hadoop - 星火基础

    apache-spark - Cassandra datastax 驱动程序连接突然终止

    用于将文件从本地文件系统移动到 HDFS 的 Hadoop 工具

    hadoop - 是否有 HDFS 客户端有线协议(protocol)规范?

    jinja2 - 如何在/srv/salt/top.sls中检索/srv/salt/projects下的目录列表

    java - 无法设置 Spark 内存

    java - 在 RDD 方法/闭包中使用 SparkContext hadoop 配置,例如 foreachPartition

    hadoop - 无法将数据从 CSV 文件加载到 HIVE

    python - 如何添加到 salt 状态? (初学者使用 virtualenv 做 Python 项目)