Chef

Chef Java Cookbook - JDK 升級

  • July 26, 2013

我正在測試Chef Java Cookbook 以將我們的 JDK 安裝置於 Chef 管理之下,我想知道如何在安裝後使用 Chef Java Cookbook 升級 JDK。

背景

為了指定使用哪種 Java 風格以及版本,我編寫了一個包裝 Cookbook,我們將其稱為“java-wrapper”這個問題,並放置屬性來指定哪個 JDK 以及從哪裡下載它. 所以,在“java-wrapper/attributes/default.rb”我們有

node.normal["java"]["jdk_version"] = "7"
node.normal["java"]["install_flavor"] = "oracle"
node.normal['java']['jdk']['7']['x86_64']['url'] = "http://localmirror/jdk-7u21-linux-x64.tar.gz"
node.normal['java']['jdk']['7']['x86_64']['checksum'] = "thechecksum"

這將成功安裝 JDK 7 更新 21。

問題

如果我隨後更新上述屬性以使用 JDK 7 update 25,則節點屬性會在 Chef 執行後更新,但 Chef Java 食譜不會“注意到”這一點,舊的 JDK 仍然存在。

其他人如何通過 Chef 管理 JDK 並推出更新?我正在考慮的另一種方法是創建一個 RPM(我們在 RHEL 上)並僅使用具有 :upgrade 操作的包資源。

謝謝,

弗雷德。

原來我忘記在包裝食譜中使用“include_recipe java”。一旦我這樣做了,它就會按預期工作。

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