User Tools

Site Tools


informatica:linux:puppet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
informatica:linux:puppet [2012/06/18 10:00] javiinformatica:linux:puppet [2015/04/13 20:19] (current) – external edit 127.0.0.1
Line 4: Line 4:
  
 Sistema para centralizar configuraciones e instalacion de paquetes... Sistema para centralizar configuraciones e instalacion de paquetes...
- 
- 
- 
  
 ===== Instalación y configuración del servidor ===== ===== Instalación y configuración del servidor =====
Line 49: Line 46:
   sudo mkdir -p /etc/puppet/modules/modulo1/{files,templates,manifests}   sudo mkdir -p /etc/puppet/modules/modulo1/{files,templates,manifests}
  
-<code> +  /etc/puppet/modules/modulo1/files/modulo1.txt
-/etc/puppet/modules/modulo1/files/modulo1.txt+
  
 Simplemente un archivo vacio Simplemente un archivo vacio
-</code> 
  
 <code> <code>
Line 73: Line 68:
 En este ejemplo: En este ejemplo:
  
-  * Instalamos (si no lo esta) el paquete 'sudo' +* Instalamos (si no lo esta) el paquete 'sudo'\\ 
-  * Copiamos el archivo puppet_server.domain.com:/etc/puppet/modules/modulo1/files/modulo1.txt puppet_client_1.domain.com:/tmp/modulo1.txtNotese que la URL es puppet:///modules/modulo1/modulo1.txt +* Copiamos el archivo
-  * Importante: el archivo (/etc/puppet/modules/modulo1/files/modulo1.txt) debe ser accesible por el usuario 'puppet', que es el que ejecuta el cliente+  puppet_server.domain.com:/etc/puppet/modules/modulo1/files/modulo1.txt 
 +A: 
 +  puppet_client_1.domain.com:/tmp/modulo1.txt 
 +Notese que la URL es
 +  puppet:///modules/modulo1/modulo1.txt 
 +* **Importante**: el archivo (/etc/puppet/modules/modulo1/files/modulo1.txt) debe ser accesible por el usuario 'puppet', que es el que ejecuta el cliente
  
 2. Arrancar/reiniciar/parar servicio 2. Arrancar/reiniciar/parar servicio
Line 114: Line 114:
   /var/log/puppet/masterhttp.log   /var/log/puppet/masterhttp.log
   /var/log/daemon.log   /var/log/daemon.log
 +
  
  
Line 125: Line 126:
   sudo aptitude update; sudo aptitude install puppet -R   sudo aptitude update; sudo aptitude install puppet -R
  
-2. Configurar para que se puede arrancar como demonio y deje el log en un archivo distinto a 'daemon.log':+2. Configurar para que se puede arrancar como demonio:
  
   sudo mv /etc/default/puppet /etc/default/puppet.old   sudo mv /etc/default/puppet /etc/default/puppet.old
   sudo vim /etc/default/puppet   sudo vim /etc/default/puppet
 +
 +<code>
 +# Start puppet on boot?
 +START=yes
 +
 +# Startup options
 +DAEMON_OPTS="--verbose"
 +</code>
 +
 +Si quisieramos redirigir el log a otro archivo podriamos usar la siguiente config, pero a mi no me va del todo bien (hay mensajes que creo que no se registran, aparece continuamente una entrada diciendo que el log se reabre...)
  
 <code> <code>
Line 217: Line 228:
   notice: Signed certificate request for dns.jj.com   notice: Signed certificate request for dns.jj.com
   notice: Removing file Puppet::SSL::CertificateRequest dns.jj.com at '/var/lib/puppet/ssl/ca/requests/dns.jj.com.pem'   notice: Removing file Puppet::SSL::CertificateRequest dns.jj.com at '/var/lib/puppet/ssl/ca/requests/dns.jj.com.pem'
 +
  
  
 ===== Revocar certificado ===== ===== Revocar certificado =====
 +
 2 formas: 2 formas:
  
Line 231: Line 244:
 notice: Removing file Puppet::SSL::Certificate dns.jj.com at '/var/lib/puppet/ssl/certs/dns.jj.com.pem' notice: Removing file Puppet::SSL::Certificate dns.jj.com at '/var/lib/puppet/ssl/certs/dns.jj.com.pem'
 </code> </code>
 +
 +
 +
 +===== Arrancar puppetmaster como otro usuario =====
 +
 +<code>
 +sudo cp /etc/init.d/puppetmaster /etc/init.d/puppetmaster.bak
 +sudo vim /etc/init.d/puppetmaster
 +</code>
 +
 +Y cambiar solo esta linea:
 +
 +  chown USUARIO:USUARIO /var/run/puppet
 +
 +<code>
 +sudo cp /etc/puppet/puppet.conf /etc/puppet/puppet.conf.bak
 +sudo vim /etc/puppet/puppet.conf
 +</code>
 +
 +Y anyadir esta linea en la seccion [main]:
 +
 +<code>
 +[main]
 +...
 +user=usuario
 +</code>
 +
 +Reiniciar:
 +
 +  sudo /etc/init.d/puppetmaster restart
 +
 +
 +
 +===== Instalar modulos =====
 +
 +http://docs.puppetlabs.com/puppet/2.7/reference/modules_installing.html
 +
 +
 +
 +===== Errores / bugs =====
 +
 +**err: Could not call revoke: Cannot convert into OpenSSL::BN**
 +
 +  sudo rm -fr /var/lib/puppet/ssl/ca/requests/mysql-monitor-1.dev.jj.com.pem
 +
 +---------------------------------------------------------------------------------------------------------------------
 +
 +  * La funcion split() no va bien en la version 2.6. Actualizar a la 2.7.x (me funciona en la 2.7.18)
 +
 +http://docs.puppetlabs.com/references/latest/function.html#split
 +
 +---------------------------------------------------------------------------------------------------------------------
 +
 +**Could not request certificate: The certificate retrieved from the master does not match the agent's private key.#012Certificate fingerprint: FB:8A:80:D1:51:E1:7B:A6:79:64:1F:56:E8:1B:D9:68#012To fix this, remove the certificate from both the master and the agent and then start a puppet run, which will automatically regenerate a certficate.#012On the master:#012  puppet cert clean mumble-1.dev.local.jamgo.org#012On the agent:#012  rm -f /var/lib/puppet/ssl/certs/mumble-1.dev.local.jamgo.org.pem#012  puppet agent -t**
 +
 +1. (Servidor) Eliminar el certificado:
 +
 +  sudo rm -fr /var/lib/puppet/ssl/ca/signed/mumble-1.dev.local.jamgo.org.pem
 +
 +2. (Cliente) Eliminar certificados:
 +
 +  sudo su
 +  rm -fr /var/lib/puppet/ssl/*
 +
informatica/linux/puppet.1340013619.txt.gz · Last modified: 2015/04/13 20:19 (external edit)