2015-11-01 95 views
0

我得到以下错误:错误创建了Apache Ambari群集(活泼包)

resource_management.core.exceptions.Fail: Execution of '/usr/bin/yum -d 0 -e 0 -y install snappy-devel' returned 1. Error: Package: snappy-devel-1.0.5-1.el6.x86_64 (HDP-UTILS-1.1.0.20) 
     Requires: snappy(x86-64) = 1.0.5-1.el6 
     Installed: snappy-1.1.0-3.el7.x86_64 (@anaconda/7.1) 
      snappy(x86-64) = 1.1.0-3.el7 
     Available: snappy-1.0.5-1.el6.x86_64 (HDP-UTILS-1.1.0.20) 
      snappy(x86-64) = 1.0.5-1.el6 

我试过的HortonWorks的解决方案,但它不工作。

我禁用了所有的存储库,只留下了一个必需的版本,但都不起作用。仍然给出了你已经安装了1.1.0-3.el7版本的错误,但是如果你查看那个包的信息则不是。我已经安装了1.0.5-1.el6

我的操作系统是RHEL 7

回答

0

我一直在做一些工作,为自动化测试CI集群ambari也打这个问题rhel7。 HDP文档中的解决方法并不是真的可行,因为安装失败时需要手动干预。说了我能够想出某种解决方法。

难道真的是snappy已经在rhel7自己使用的yum回购中,当ambari添加自己的HDP yum回购时,那些包含snappysnappy-devel的旧版本。简单地通过删除现有的snappy包不会工作,因为ambari将安装snappysnappy-devel。如果ambari只会安装snappy-devel,那么它会起作用,这会拉动正确的snappy版本。

解决方法似乎是通过使用yum版本锁定。您不能原样使用yum versionlock snappy-1.0.5-1.el6.x86_64,因为在命令调用时必须从repos提供实际包(在ambari提供自己的节点之前,实际包不存在)。认为它看起来像你可以手动追加该包到versionlock配置。

当我启动一个普通的ami或任何其他基于rhel7的虚拟机时,我运行的命令似乎足以让ambari集群配置稍后成功。

yum -y remove snappy 
yum -y install yum-plugin-versionlock 
echo 'snappy-1.0.5-1.el6.*' >> /etc/yum/pluginconf.d/versionlock.list