【问题标题】:Error creating a Cluster in Apache Ambari (snappy package)在 Apache Ambari (snappy package) 中创建集群时出错
【发布时间】:2015-11-01 11:54:33
【问题描述】:

我收到以下错误:

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。

【问题讨论】:

    标签: amazon-web-services rhel snappy ambari


    【解决方案1】:

    我一直在做一些工作来自动化 ambari 集群以进行 CI 测试,并且在 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 提供自己的节点才存在)。认为您可以手动将该包附加到版本锁定配置。

    当我启动一个普通的 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
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 正如我所说,我已经尝试过该解决方案但无法正常工作。谢谢你。另外,snappy-devel 不在官方仓库中。
      猜你喜欢
      • 1970-01-01
      • 2016-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多