2012-03-15 34 views
0

我知道在同一个清单中,资源类型具有唯一的名称。如何安装并卸载puppet中的文件系统?

对于“安装”资源,名称是设备将被安装的路径。

我想要做木偶如下:

  1. 挂载NFS分区
  2. 从该执行脚本安装点
  3. 卸载这个分区

所以我宣布:

mount {'/mnt/tina': 
    device => 'tina-iuem:/distrib', 
    fstype => 'nfs', 
    options => "defaults", 
    remounts => false, 
    atboot => false, 
    ensure => mounted, 
} 
exec {'install': 
    command => '/mnt/tina/mycommand.sh' 
} 

那么,如何卸载'/ mnt/tina'资源呢?

+0

值得注意的是,puppet中的装载资源的名称确实是资源装载的路径,但它只默认为资源的标题(http://docs.puppetlabs.com/references/latest/type.html#mount-attribute-name)。 您可以任意指定资源名称,然后在资源内部将资源名称(安装点)定义到需要指向的位置,避免重复资源。 – 2014-04-04 13:14:31

回答

4

最终你想用傀儡做什么不是想要的“傀儡方式”可以这么说。 Puppet是一种配置管理工具,不是专为一次性批量作业设计的工具,因此这样做会变得“烦人”。

鉴于您不能在相同的目录编译中有冲突的资源(又名mount ensure => mounted,mount =>不存在),您最好将卸载等卸载到脚本并删除(可悲的是在我看来,它总是廉价的方式,但最适合这种情况。)

+0

谢谢。你证实了我的怀疑。 我将为此任务提供一个脚本。 – skizo 2012-03-23 08:32:53