如何从开源 Hadoop 构建 deb/rpm 存储库或由 ambari 安装的公开可用的 HDP 源代码
Posted
技术标签:
【中文标题】如何从开源 Hadoop 构建 deb/rpm 存储库或由 ambari 安装的公开可用的 HDP 源代码【英文标题】:How to build deb/rpm repos from open source Hadoop or publicly available HDP source code to be installed by ambari 【发布时间】:2020-05-14 19:24:35 【问题描述】:我正在尝试安装开源 hadoop 或从源代码构建 HDP 以由 ambari 安装。我可以看到,可以使用 apache repos 中提供的文档为每个组件构建 java 包,但是我如何使用这些来构建由 hortonworks 提供的 rpm/deb 包,以便由 ambari 安装 HDP 分发。
【问题讨论】:
【参考方案1】:@ShivamKhandelwal 从源代码构建 Ambari 是一项挑战,但可以通过坚持不懈地完成。在这篇文章中,我披露了我最近在 centos 中构建 Ambari 2.7.5 时使用的命令:
Ambari 2.7.5 installation failure on CentOS 7
“从源代码构建 HDP”是一项非常艰巨的任务,因为它需要单独构建每个组件,创建您自己的公共/私有仓库,其中包含每个操作系统风格的所有组件仓库或 rpm。这是一项艰巨的任务,以前由 Hortonworks 的许多员工和组件贡献者负责。
当您从 HDP 安装 Ambari 时,它会与他们的存储库一起开箱即用,包括他们的 HDP 堆栈(HDFS、Yarn、MR、Hive 等)。当您从源代码安装 Ambari 时,没有堆栈。唯一的解决方案是构建自己的堆栈,这是我擅长做的事情。
我目前正在构建一个 DDP 堆栈作为示例与公众分享。我通过对 HDF 管理包进行逆向工程开始了这个项目,其中包括堆栈结构(文件/文件夹)来角色化 NiFi、Kafka、Zookeeper 等。我使用自己的服务和组件(NiFi、Hue、Elasticsearch 等)将其定制为我自己的堆栈。
我对 DDP 的目标是最终为我想要的组件和服务创建自己的存储库,以及我想在集群中安装的版本。接下来,我将使用最后一个免费的公共 HDP 堆栈(HDP 3.1.5)将一些 HDP 组件(如 HDFS、YARN、HIVE)从 HDP 堆栈直接复制到我的 DDP 堆栈中。
【讨论】:
感谢您的回答,我的问题与您回答的后半部分有关。我能够自己编译和部署 ambari,并且想要一些解决方案来编译 hadoop 二进制文件。我完全同意您提到的生成 rpm 包的步骤。我想我必须自己做,因为这是还没有人尝试过的事情。 是的,我自己也深陷这条道路。我现在有一个非常稳定的堆栈,最初基于 HDF,现在将 HDP 片段放入其中。我还有一些第三方工具(hue 和 elasticsearch)。我让 HDFS 工作了,但仍在研究 hadoop(yarn、mapreduce)、hive 和其他一些......你能接受这个解决方案吗?查看:makeopensourcegreatagain.com/rpms 和:github.com/steven-dfheinz/dfhz_ddp_mpack 嗨@steven-matison,非常感谢你的作品! Cloudera 自 2020 年 2 月起关闭所有 CDP 和 HDP 版本的所有访问权限,您是否还有其他 HDP 版本存储库?以上是关于如何从开源 Hadoop 构建 deb/rpm 存储库或由 ambari 安装的公开可用的 HDP 源代码的主要内容,如果未能解决你的问题,请参考以下文章