2013-11-24 38 views
1

安裝了木偶模塊:過程用於切換從我已經安裝了鍛造

puppet module uninstall branan/minecraft 

,並用於:

class { 'minecraft': } 

從鍛造的模塊。該模塊特別安裝並配置了一個Minecraft服務器,但是我遇到的問題確實與所有模塊有關。

因此,在配置之後,服務器現在有一個新的服務以及存儲在/ opt/minecraft中的所有minecraft文件。

的一天已經到來,我想嘗試新的Minecraft模塊,因爲它旨在讓更多的定製,易於使用等。

我怎麼會去了開關模塊?在我看來,我需要這樣做:

  1. 以某種方式恢復當前模塊所做的所有更改,例如, class {'minecraft': ensure => purged }
  2. 運行木偶適用於應用更改...
  3. 運行puppet module uninstall branan/minecraft --modulepath puppet/forge-modules
  4. 安裝新的模塊
  5. 添加新的類,有例如高級配置選項class {'minecraft': heap_size => '1024M' }
  6. 運行木偶再次申請...

這似乎相當長的和手工工藝,涉及兩個傀儡applys和下跌,直到最後一步的Minecraft服務器。

我不認爲class {'minecraft': ensure => purged }甚至可以工作,就我所見,該模塊沒有代碼來刪除文件或創建的服務。你可以看到,我很困惑,我可能錯過了一些明顯的東西。謝謝!

+1

你是什麼意思的新的Minecraft模塊?它是一個新版本還是一個不同的模塊? – xiankai

+0

這是一個不同的模塊。從https://forge.puppetlabs.com/branan/minecraft切換到https://forge.puppetlabs.com/civilfritz/minecraft – aaronjbaptiste

回答

1

你大多有步驟的權利。

但是,ensure參數在很大程度上取決於類如何使用它。據我所知,ensure參數是硬編碼的。

與接受參數ensure的新模塊相比,作者還沒有以允許卸載的方式編寫其模塊。

最好的辦法是手動停止服務 - 無論是通過命令行還是與puppet(未經測試)。

命令行:從linux script to kill java process

ps -ef | grep minecraft 

注意ID

kill 1234 

其中1234是我的世界的運行實例的id改編。

Puppet:理論上,這應該可以工作,因爲您也可以訪問模塊提供的類。我沒有親自嘗試過。

service { 'minecraft': 
    ensure => stopped 
} 

最後,你可能想也可能不想刪除配置文件。他們似乎都位於minecraft home目錄下,默認情況下,該目錄在/opt/minecraft之下。這些不會影響新模塊,因爲新模塊會覆蓋它們或爲其配置使用單獨的目錄。

然後你可以卸載舊的模塊,並安裝新的模塊

一般來說,應用木偶劇本不應該花費太長的時間,最長不超過各一分鐘。

相關問題