我安装了:
puppet module uninstall branan/minecraft并使用:
class { 'minecraft': }一个来自锻造的模块。这个模块特别安装和配置了一个Min克拉夫特服务器,但我遇到的问题确实与所有模块有关。
因此,在提供之后,服务器现在有一个新的服务正在运行,并且所有Min克拉夫特文件都存储在/opt/Min克拉夫特中。
有一天,我想尝试一个新的“我的世界”模块,因为它的目的是允许更多的定制,更容易使用等等。
我该如何切换模块呢?在我看来,我需要这样做:
class {'minecraft': ensure => purged }puppet module uninstall branan/minecraft --modulepath puppet/forge-modulesclass {'minecraft': heap_size => '1024M' } )添加新类这似乎是一个相当长的手工过程,涉及到两个傀儡应用程序和一个“我的世界”服务器,一直到最后一步。
我认为class {'minecraft': ensure => purged }甚至不能工作,据我所见,该模块没有删除所创建的文件或服务的代码。
正如你所看到的,我很困惑,我可能遗漏了一些显而易见的东西。谢谢!
发布于 2013-11-26 01:39:41
你的步子大多是对的。
然而,ensure参数在很大程度上取决于类如何使用它。据我所知,ensure参数是硬编码的。
与接受ensure参数的新模块相比,作者没有以允许卸载的方式编写他的模块。
您最好的选择是手动停止服务--无论是通过命令行还是使用傀儡(未经测试)。
命令行:改编自linux script to kill java process
ps -ef | grep minecraft注意id
kill 1234其中1234是我的运行实例的id。
木偶:理论上,这应该可以工作,因为您也可以访问模块提供的类。我自己也没试过。
service { 'minecraft':
ensure => stopped
}最后,您可能希望或不希望删除配置文件。它们似乎都位于“我的世界”主目录下,默认情况下该目录位于/opt/minecraft下。这些内容不会影响新模块,因为新模块要么会覆盖它们,要么会使用单独的目录进行信任。
然后可以卸载旧模块,并安装新模块。
一般来说,木偶脚本的应用时间不应该太长,每个不超过一分钟。
https://stackoverflow.com/questions/20175059
复制相似问题