Ambari实战-6:构建HDP私有源

2023-12-09 08:18
文章标签 实战 构建 私有 hdp ambari

本文主要是介绍Ambari实战-6:构建HDP私有源,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我们本篇文章主要讲述如何去同步远程服务器中的HDP数据源到本地,并将其作为局域网yum安装源。

基本环境信息


由于是通过HDP数据源安装HDP组件,我们只需要在一台机器上运行即可,我们这里部署到了和ambari-common(该节点压力较小)节点在一起。不过在实际的线上环境我们推荐将其分开部署。

主机名IP版本
ambari-common10.10.0.201CentOS 7

HDP数据源配置


  • 登录到ambari-common节点中
ssh ambari-common -p 22

ambari-common需要在本地/etc/hosts文件中配置相应服务器映射,否则无法直接使用登录操作

  • 下载hortonworks官方提供的HDP仓库源

在下载前我们需要检验是否安装wget命令行,如果没有安装此命令,使用以下命令安装它

sudo yum install wget

使用以下命令下载hortonworks官方提供的HDP仓库源

wget -nv http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.4.2.0/hdp.repo -O /etc/yum.repos.d/hdp.repo

-O指定的是我们下载文件到的本地路径,注意这里是大写的O不是0

hdp的官方源的格式为hdp/<OsVersion>/<HDPVersionRegex>/updates/<HDPVersion>/hdp.repo

如果我们需要安装其他系统的或者其他版本的源只需要修改<OsVersion><HDPVersionRegex>(hdp大版本),<HDPVersion>(hdp绝对版本)

需要注意的是/etc/yum.repos.d/hdp.repo路径尽量不要修改,这样方便我们记住hdp的源所在系统的位置。

  • 安装源配置文件下载完成后需要进行源的校验
sudo yum repolist

返回类似如下响应

HDP-2.4.2.0
HDP-UTILS-1.1.0.20
源标识
HDP-2.4.2.0
HDP-UTILS-1.1.0.20

这标志着我们的hdp安装源配置文件是可用的。

HDP数据源同步


  • 创建本地需要存放安装包文件路径
sudo mkdir -p /var/www/html/hdp/centos7/

-p命令标志我们需要进行递归创建文件夹

我们建议您的命名格式和我们类似<源名称>/<系统版本>

  • 进入刚刚创建的目录中
cd /var/www/html/hdp/centos7/

当然我们也可以使用&&组合命令模式

  • 开始同步远程服务资源到本地
reposync -r HDP-2.4.2.0

-r是告诉系统要进行递归同步

HDP-2.4.2.0指的是我们刚刚使用源检测命令返回的源标识

此时会去hortonworks官网进行同步,同步的速度具体是根据主机的网络而定。

或者可以使用后台同步方式:

nohup reposync -r HDP-2.4.2.0 >> sync-hdp.log &

或者可以使用screen命令进行窗口session模式同步。文件总大小大约在5-6GB

HDP-UTILS数据源同步


  • 创建本地需要存放安装包文件路径
sudo mkdir -p /var/www/html/hdp-utils/centos7/

-p命令标志我们需要进行递归创建文件夹

我们建议您的命名格式和我们类似<源名称>/<系统版本>

  • 进入刚刚创建的目录中
cd /var/www/html/hdp-utils/centos7/

当然我们也可以使用&&组合命令模式

  • 开始同步远程服务资源到本地
reposync -r HDP-UTILS-1.1.0.20

-r是告诉系统要进行递归同步

HDP-UTILS-1.1.0.20指的是我们刚刚使用源检测命令返回的源标识

此时会去hortonworks官网进行同步,同步的速度具体是根据主机的网络而定。

或者可以使用后台同步方式:

nohup reposync -r HDP-UTILS-1.1.0.20 >> sync-hdp-utils.log &

或者可以使用screen命令进行窗口session模式同步。文件总大小大约在500MB-2GB

如果出现Error: /var/run/yum.pid 已被锁定,PID为 <XXXX> 的另一个程序正在运行。的信息,我们可以忽略,这是因为系统只允许yum单线程运行。等待上一个yum同步完成后进行再次同步。

构建内网HDP源


  • 生成本地资源库
createrepo /var/www/html/hdp/centos7/HDP-2.4.2.0

会出现类似如下反馈信息

Spawning worker xxx with xxx pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite Dbs complete

出现以上提示信息时,标志着我们的本地针对于hdp的库信息已经构建完成。

  • 启动提供mirror源的http服务
service httpd start

当然也可以使用以下命令启动服务

/bin/systemctl start httpd.service
  • 校验源是否可以使用http服务对外开放

浏览器打开http://ambari-common/hdp/centos7/HDP-2.4.2.0

HDP-UTILS本地私有源制作,重复此步骤修改为HDP-UTILS路径即可。

这里我们是不需要添加端口信息的,因为http服务的默认端口就是80,浏览器打开后会出现一个文件浏览器,会显示一些文件以及目录列表,当然也可以使用nginx去做mirror源。

这篇关于Ambari实战-6:构建HDP私有源的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/473099

相关文章

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper

Java实战之自助进行多张图片合成拼接

《Java实战之自助进行多张图片合成拼接》在当今数字化时代,图像处理技术在各个领域都发挥着至关重要的作用,本文为大家详细介绍了如何使用Java实现多张图片合成拼接,需要的可以了解下... 目录前言一、图片合成需求描述二、图片合成设计与实现1、编程语言2、基础数据准备3、图片合成流程4、图片合成实现三、总结前

nginx-rtmp-module构建流媒体直播服务器实战指南

《nginx-rtmp-module构建流媒体直播服务器实战指南》本文主要介绍了nginx-rtmp-module构建流媒体直播服务器实战指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. RTMP协议介绍与应用RTMP协议的原理RTMP协议的应用RTMP与现代流媒体技术的关系2

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

Python中的随机森林算法与实战

《Python中的随机森林算法与实战》本文详细介绍了随机森林算法,包括其原理、实现步骤、分类和回归案例,并讨论了其优点和缺点,通过面向对象编程实现了一个简单的随机森林模型,并应用于鸢尾花分类和波士顿房... 目录1、随机森林算法概述2、随机森林的原理3、实现步骤4、分类案例:使用随机森林预测鸢尾花品种4.1

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Golang使用minio替代文件系统的实战教程

《Golang使用minio替代文件系统的实战教程》本文讨论项目开发中直接文件系统的限制或不足,接着介绍Minio对象存储的优势,同时给出Golang的实际示例代码,包括初始化客户端、读取minio对... 目录文件系统 vs Minio文件系统不足:对象存储:miniogolang连接Minio配置Min

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作