Я - новичок марионетке, у меня есть код как ниже в 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
Я хочу преобразовать это в марионетку.
Я не должен использовать исполнительную команду марионетки. таким образом, как может я grep бесплатно и печатать пятую колонну, затем присваивать размер логического тома.
Пожалуйста, помогите мне!
Для управления логическими томами с помощью Puppet используйте соответствующий модуль .
Возможно, у вас не получится воспроизвести вашу текущую логику на 100%. Парадигмы Puppet отличаются от парадигм сценариев оболочки. Обычно ваш пробег становится лучше, если вы адаптируете свои рабочие процессы к этому новому положению.
Для этой конкретной вещи вы можете использовать -l 100%FREE
в качестве значения размера для назначения всего свободного пространства с помощью lvcreate
.
На более фундаментальном уровне, если вы не хотите использовать exec
для получения данных, вам придется расширить facter
, чтобы получить нужные вам данные.
https://docs.puppetlabs.com/facter/2.3/custom_facts.html#adding-custom-facts-to-facter