INSTALACIÓN MASTER SERVER
1. Instalamos los repositorios epel y pupet en los servidores cliente y servidor
Repositorios puppet aquí
Repositorio Epel
[root@master ~]# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@master ~]# rpm -ivh epel-release-6-8.noarch.rpm
2. Configuramos el servidor que servira como puppet server:
a. Instalamos el servicio puppet server
yum install puppet-server
b. En el archivo /etc/puppet/fileserver.conf , definiremos la redes que permitiremos acceder al servidor.
[........]
allow 192.168.0.0/16
[........]
c. Creamos el archivo site.pp que es el archivo principal para la lectura de las recetas en puppet y en el declaramos la clase que se instalará
[root@master]# vim /etc/puppet/manifests/site.pp
Y el contenido será
# Importamos todas clases puppet incluidas bajo el directorio classes
import "classes/*.pp"
# Nodo nodo default incluirá las tareas para todos los clientes puppet
node default {
include test_class
}
d. Creamos la clase que base_node
[root@master]# vim /etc/puppet/manifests/classes/base_node.pp
class base_node {
file {"/tmp/fichero.test":
ensure => present,
mode => 744,
owner => root,
group => root
}
}
Lo anterior creará en los clientes puppet un archivo bajo la ruta /tmp/ llamado fichero.test con permisos 744 con propietario y grupo root
e. Iniciamos el servicio puppet
[root@master]# service puppetmaster start
INSTALACIÓN AGENTE (CLIENTE)
1. Configuramos el servidor que será puppet client
a. Instalamos el cliente
[root@agente2]# puppet yum install puppet -y
b. Editamos el archivo /etc/puppet/puppet.conf , donde en la sección de agente instanciamos nuestro servidor puppet
[........]
server = master.example.com
[........]
2. Certificados SSL
Como la comunicación entre el servidor y el cliente está bajo SSL y por defecto tenemos que permitir las conexiones de los clientes puppet por primera vez, tenemos que realizar lo siguiente:
a. Cliente puppet
[root@agente2]# puppet agent --server master.example.com --waitforcert 60 --test --verbose
b. Servidor puppet
Listamos las peticiones en espera
[root@master ]# puppet ca list
agente2.example.com (SHA256) 63:6F:16:56:EC:A9:DF:02:72:66:B3:B4:9E:A7:6E:5A:74:25:9B:A0:B2:6C:AD:1C:35:C5:D3:4C:08:64:A3:61
Firmamos el certificado en el nodo en espera
[root@master ssl]# puppet cert --sign agente2.example.com
Signed certificate request for agente2.example.com
Removing file Puppet::SSL::CertificateRequest agente2.example.com at '/var/lib/puppet/ssl/ca/requests/agente2.example.com.pem'
Listo!
3. Una vez aceptado los certificados, podremos ver en el cliente puppet que se creó bajo /tmp lo que definimos en nuestra clase del servidor puppet
[root@agente2 ~]# ll /tmp/
total 0
-rwxr--r--. 1 root root 0 Nov 20 11:01 fichero.test
Documentación
http://docs.puppetlabs.com/guides/installation.html#enterprise-linux-and-derivatives
http://docs.puppetlabs.com/guides/setting_up.html
0 Comentarios