在 Puppet 中分配变量

在 Puppet 中分配变量

我是 Puppet 的新手,我在 unix 中有如下代码

log_exts=$(vgdisplay /dev/cassandra|grep Free|awk '{print $5}')

if lvcreate -n lv_cas -l ${log_exts} /dev/cassandra
then
mkfs -v -t ext4 /dev/cassandra/lv_cas
logit "Create LV file system"
fi

我想将其转换成傀儡。

我不应该使用执行puppet 命令。那么我如何才能免费使用 grep 并打印第五列,然后分配逻辑卷大小。

请帮我

答案1

对于这个特定的东西,您可以使用-l 100%FREE作为大小值来分配所有可用空间lvcreate

从更基本的层面上讲,如果您不想使用exec来获取数据,那么您将必须扩展facter来获取您需要的数据。

https://docs.puppetlabs.com/facter/2.3/custom_facts.html#adding-custom-facts-to-facter

答案2

要使用 Puppet 管理逻辑卷,请使用适当的模块

您可能无法 100% 复制当前逻辑。Puppet 的范例与 shell 脚本的范例不同。如果您根据这一新前提调整工作流程,您的里程通常会更好。

相关内容