基於 cPanel 的主機上的 Puppet、Nagios、Munin

基於 cPanel 的主機上的 Puppet、Nagios、Munin

在過去的一年裡,我一直在使用Puppet、Nagios 和Munin 管理20-30 個基於cPanel 的主機來進行一般監控/趨勢分析,但我必須使用很多方法來部署/管理諸如配置之類的事情,這很痛。

對於不熟悉 cPanel 的人來說,它添加了一些要 yum 排除的內容,例如 perl*、ruby* 等。由於與透過 Yum 安裝存在大量衝突,這導致我無法透過 Puppet(以及透過套件類型)在新伺服器上引導監控。

現在,我可以為所有內容建立自訂 RPM,並從規範檔案中刪除某些依賴項,但如果可能的話,我希望避免這種情況。有沒有人有任何建議的功能方法來管理這種環境?

目前,我透過 RPM 安裝 Puppet、Facter 和 Munin,並使用 --nodeps 等強制安裝(因為它們已安裝,只是沒有 Yum 想要的)。我此時從原始程式碼手動安裝了 Nagios(可能會建立 RPM,但我想先解決這個一般問題)。

答案1

使用 cPanel 的 ruby​​ 實例 - /scripts/installruby - 從那裡您可以透過 gem 或透過來源安裝。

答案2

Munin 可以透過 WHM 外掛程式安裝程式安裝:

主 >> cPanel >> 管理插件

只需點擊“安裝並保持更新”即可安裝。

Yum 應該能夠安裝exclude=yum.conf 部分中具有依賴項的軟體包,只要它們位於 RPM 資料庫中且版本正確。眾所周知,cPanel 系統經常會損壞 RPM 資料庫。嘗試重建它,然後再次嘗試安裝。重建 RPM 資料庫:

刪除 /var/lib/rpm/__db* 檔案以清除死 RPM 程序中的過時鎖:

cd /var/lib/rpm
rm __db*

重建 RPM 資料庫:

rpm --rebuilddb

有什麼區別嗎?

如果沒有,是否安裝了缺少的依賴項?檢查使用:

rpm -qa

或者:

rpm -qi [packagename]

cPanel 透過 RPM 安裝 ruby​​,因此應該列出它,並且在透過 yum 安裝時應該解決依賴關係。然而,cPanel 不會安裝 PHP,因此如果缺少依賴項,那就是另一個問題了。

答案3

問題在於 RPM 自動解算。不幸的是,cPanel 不使用基於 RPM 的軟體包/為 Yum 添加一些內容,排除/在非標準區域(就 RHEL 而言)安裝一些內容,從而導致 RPM/Yum 解算出現問題。

我找到的解決方案是建立我自己的 RPM 並使其不自動解算。

相關內容