我们正在尝试在我们的红帽机器上安装新的Hadoop版本HDP版本作为临时安装(Redhat 7.3版本)
HDP-2.6.3.0-centos7-rpm.tar.gz
ambari-2.6.0.0-centos7.tar.gz
在安装新的HDP版本之前,我们当前的HDP存储库是(在/etc/yum.repo.d下)
所以关于我们已经扩展了HDP存储库,我们认为Hadoop安装将使用此存储库进行安装
输出HDP存储库的示例(master02是Ambari服务器机器)
more HDP.repo
[HDP-2.6]
name=HDP-2.6
baseurl=http://master02.sys56.com/HDP/centos7/2.6.3.0-235
path=/
enabled=1
gpgcheck=0
但是在HDP-2.6.3.0安装(蓝图安装)的过程中,我们看到了很多奇怪的事情.....
尽管我们已经有了HDP存储库
蓝图安装推送另一个存储库文件:(在/etc/yum.rep.d 下)
如下:
more ambari-hdp-1.repo ( this repo not created on the previos version )
[HDP-2.6-repo-1]
name=HDP-2.6-repo-1
baseurl=http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.0.3
path=/
enabled=1
gpgcheck=0
[HDP-UTILS-1.1.0.21-repo-1]
name=HDP-UTILS-1.1.0.21-repo-1
baseurl=http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7
path=/
enabled=1
gpgcheck=0
问题是为什么?
我问这个是因为这个新的存储库损坏了蓝图安装
TLDR;
在安装软件包之前,您需要更改hdp.repo
文件中的存储库信息,以匹配新 Ambari 文件的信息。您可以保留自定义 baseurl,但存储库 ID 需要与新文件匹配。
长版本:
Ambari 蓝图和 Hortonworks 存储库文件之间存在不一致。Ambari 蓝图使用以下文件来设置其存储库:http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.6.3.0/HDP-2.6.3.0-235.xml
$ curl -sS http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.6.3.0/HDP-2.6.3.0-235.xml | grep "repoid"
<repoid>HDP-2.6</repoid>
<repoid>HDP-UTILS-1.1.0.21</repoid>
Ambari 在查找目标系统上的存储库之前会自动将-repo-1
添加到 repoid,因此我们得到:
- HDP-2.6-存储库-1
- HDP-UTILS-1.1.0.21-repo-1
Hortonworks 在这里提供他们自己的 yum 存储库文件:http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.6.3.0/hdp.repo 但存储库 ID 不同:
$ curl -sS http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.6.3.0/hdp.repo | grep "[][]"
[HDP-2.6.3.0]
[HDP-UTILS-1.1.0.21]
如果 Ambari 找不到存储库(因为 ID 不同而没有找到),那么它会添加它自己的存储库,这会破坏您的设置。