0

我收到以下错误:

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。

4

2 回答 2

0

从故障排除指南中查看这是否有帮助。

http://docs.hortonworks.com/HDPDocuments/Ambari-2.1.2.0/bk_ambari_troubleshooting/content/_resolving_deployment_problems.html#_dataNode_fails_to_install_on_RHEL-CentOS7

于 2015-11-02T13:07:33.207 回答
0

我一直在做一些工作来自动化 ambari 集群以进行 CI 测试,并且还使用 rhel7 解决了这个问题。该 HDP 文档中的解决方法实际上是不可能的,因为它在安装失败时需要手动干预。话虽如此,我能够想出某种解决方法。

真正麻烦的是,snappyrhel7 本身使用的 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 提供自己的节点才存在)。认为您可以手动将该包附加到版本锁定配置。

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

yum -y remove snappy
yum -y install yum-plugin-versionlock
echo 'snappy-1.0.5-1.el6.*' >> /etc/yum/pluginconf.d/versionlock.list
于 2016-06-03T16:40:54.623 回答