我是 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 脚本的范例不同。如果您根据这一新前提调整工作流程,您的里程通常会更好。