Problema Puppet e systemctl

2

Eu tenho alguns problemas com o fantoche e systemctl. Eu costumava carregar vários parâmetros para um 'serviço', mas ele não está mais funcionando no centos7.

Este é o meu erro:

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]: 

E este é o meu código:

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,
    }
}

Está funcionando muito bem no centos 6 e costumava trabalhar no centos 7.

Funciona se eu definir o parâmetro assim:

ntp::service::ntp_services: "ntpd"

Mas vou ter que definir 1 parâmetro para 1 serviço ...

Obrigado

    
por Skullone 18.08.2016 / 20:14

1 resposta

4

As citações nesta linha provavelmente estão causando o problema:

service {"$ntp_services":

Usar "" contendo uma variável criará uma string com a variável expandida dentro dela. É provavelmente por isso que o Puppet está reportando um único serviço com o nome [ntpd ntpdate] (ou seja, uma matriz) em vez de dois serviços diferentes.

Altere para:

service { $ntp_services:

e isso deve passar o array original, gerando um recurso por item.

    
por 19.08.2016 / 10:15