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
Last revisionBoth sides next revision
informatica:linux:puppet [2012/05/30 15:42] javiinformatica:linux:puppet [2013/08/13 07:20] – [Errores / bugs] javi
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 48: 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 72: 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
 +  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 112: Line 114:
   /var/log/puppet/masterhttp.log   /var/log/puppet/masterhttp.log
   /var/log/daemon.log   /var/log/daemon.log
 +
 +
  
  
Line 122: 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+2. Configurar para que se puede arrancar como demonio:
  
-  sudo cp /etc/default/puppet /etc/default/puppet.oldsudo vim /etc/default/puppet+  sudo mv /etc/default/puppet /etc/default/puppet.old 
 +  sudo vim /etc/default/puppet
  
-Y dejar la siguiente linea asi:+<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> 
 +# Start puppet on boot? 
 +START=yes 
 + 
 +# Startup options 
 +DAEMON_OPTS="--verbose --logdest /var/log/puppet.log" 
 +</code>
  
-  ... 
-  START=yes 
-  ... 
  
 3. Definir el nombre del servidor al que se conecta: 3. Definir el nombre del servidor al que se conecta:
Line 210: 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 =====
  
-<code> +2 formas:
-sudo puppet cert --clean dns.jj.com+
  
 +  sudo puppet cert --clean dns.jj.com
 +o
 +  sudo puppetca --clean dns.jj.com
 +
 +<code>
 notice: Revoked certificate with serial 3 notice: Revoked certificate with serial 3
 notice: Removing file Puppet::SSL::Certificate dns.jj.com at '/var/lib/puppet/ssl/ca/signed/dns.jj.com.pem' notice: Removing file Puppet::SSL::Certificate dns.jj.com at '/var/lib/puppet/ssl/ca/signed/dns.jj.com.pem'
 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.txt · Last modified: 2015/04/13 20:19 by 127.0.0.1