2015-11-01 29 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