Puppet

無法使用 PuppetLabs Yum 儲存庫在 Amazon Linux 上安裝 Facter 1.7.0

  • March 22, 2015

我已經使用安裝指南安裝了 Puppet,但似乎我只能從儲存庫安裝 Puppet 包amzn-*,即使我已經使用 PuppetLabs 提供的說明安裝了 PuppetLabs EL6 Yum 儲存庫。

[ec2-user@ip-172-31-1-239 ~]$ rpm -qa | grep facter
facter-1.6.18-7.25.amzn1.noarch

[ec2-user@ip-172-31-1-239 ~]$ sudo yum upgrade facter
Loaded plugins: priorities, update-motd, upgrade-helper
1048 packages excluded due to repository priority protections
No packages marked for update

我需要至少安裝 Facter 1.7.0 以便包含修復程序osfmamily正確確定。

如何在 Amazon Linux (2014.09.2) 上安裝 Facter 1.7.0?

由於優先級設置,這些軟體包沒有顯示為更新很可能。

您可以通過以下方式解決此問題:

echo -e "[main]\nenabled = 0" > /etc/yum/pluginconf.d/priorities.conf

然而,亞馬遜通過將 Ruby 升級到 2.0 版本破壞了與 RHEL 6 的兼容性。

從該儲存庫安裝軟體包很可能會破壞您的 Puppet 和因子安裝。

https://docs.puppetlabs.com/guides/install_puppet/install_el.html#supported-versions

此資訊適用於 RHEL 本身,以及與其保持二進制兼容性的任何發行版,包括但不限於 CentOS、Scientific Linux、Oracle Linux 和 Ascendos。

隨著這一變化,Amazon AMI 不再被視為受支持的版本。

這並不意味著 Amazon AMI 不是受支持的平台,只是這些軟體包不兼容!

你最好的選擇是使用 ruby​​gems 來安裝 facter 和可能的 puppet(也建議在這裡:https ://tickets.puppetlabs.com/browse/PUP-2132 )。

您還可以嘗試將系統 ruby​​ 預設版本恢復為 1.8 ( https://tickets.puppetlabs.com/browse/PUP-2132#comment-108357 ),這似乎也適用於某些人。

否則,您需要堅持使用 Amazon 提供的版本,或者當然停止使用 Amazon AMI 並切換到受支持的版本(這就是我要做的……)。

引用自:https://serverfault.com/questions/677353