Come posso gestire puppet.conf con Puppet?


11

Uso Puppet per gestire server Linux e vari servizi. Funziona bene, tranne per il servizio di marionette stesso.

La mia lezione di marionette è così:

class puppet {
  file { "/etc/puppet/puppet.conf":
    owner  => 0, group  => 0, mode => 0644,
    content => template("${module_name}/puppet.conf.erb"),
  }

  service { "puppet":
    name       => "puppet",
    ensure     => running,
    enable     => true, hasstatus  => true, hasrestart => true,
    require    => File["/etc/puppet/puppet/conf"]
    subscribe  => File["/etc/puppet/puppet/conf"]
  }
}

}

Quando viene applicata una modifica su /etc/puppet/puppet.conf, il pupazzo nota che è necessario riavviare il servizio fantoccio e quindi, si arresta in modo anomalo:

Mar 30 17:08:23 XXXX puppet-agent[20172]: (/Stage[main]/Puppet/File[/etc/puppet/puppet.conf]/content) content changed '{md5}eeaf5dfc7d88c8d9c85e6a8cc714d702' to '{md5}ef6ff0e423f4125e24b689980df9f71d'
Mar 30 17:08:23 XXXX puppet-agent[20172]: Caught TERM; calling stop

Sai come potrei aggiornare correttamente puppet.conf con Puppet?

Risposte:


10

Il demone fantoccio noterà automaticamente le modifiche al file puppet.conf senza che sia necessario riavviarlo. Basta rimuovere il subscribe => File["/etc/puppet/puppet.conf"]da service { "puppet" ... }e tutto funzionerà comunque.

Le marionette non possono davvero nemmeno ensure => runningper se stesse. Usare qualcosa come il Riavvio reciproco con il burattino assicurando che cron sia in esecuzione e un cronjob che garantisca che il burattino funzioni, funzionerà comunque.


Controllerò se funziona lunedì, ma mi sembra molto buono. Grazie per il puntatore sul riavvio reciproco.
Coren,

1

Una soluzione è non eseguire il pupazzo come demone, ma invocarlo da cron. Questo è qualcosa che molte persone preferiscono perché per loro il demone consuma molta memoria.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.