Проблема с Puppet и systemctl

У меня проблемы с puppet и systemctl. Раньше я загружал несколько параметров для «службы», но она больше не работает на centos7.

Это моя ошибка:

Error: Could not enable [ntpd ntpdate]: 
Error: /Stage[main]/Ntp::Service/Service[[ntpd ntpdate]]/enable: change from false to true failed: Could not enable [ntpd ntpdate]: 

А это мой код:

Hiera:

ntp::service::ntp_services: 
  - "ntpd"
  - "ntpdate"

Service.pp:

class ntp::service ($ntp_services) {
    service {"$ntp_services":
        hasrestart  => false,
        hasstatus   => true,
        ensure      => running,
        enable      => true,
    }
}

Он очень хорошо работает на centos 6 и раньше работал на centos 7.

Он работает, если я определяю параметр следующим образом:

ntp::service::ntp_services: "ntpd"

Но мне нужно будет определить 1 параметр для 1 службы ...

Спасибо

2
задан 18 August 2016 в 21:14
1 ответ

Кавычки в этой строке может вызвать проблему:

service {"$ntp_services":

Использование "" , содержащего переменную, создаст строку с расширенной переменной внутри . Вероятно, поэтому Puppet сообщает об одной службе с именем [ntpd ntpdate] (т.е. массив), а не о двух разных службах.

Измените его на:

service { $ntp_services:

, и он должен передать исходный массив, генерирующий один ресурс для каждого элемента.

4
ответ дан 3 December 2019 в 09:59

Теги

Похожие вопросы