Вы находитесь на странице: 1из 4

Administracin de Servidores Web

Realizar un manual sobre la herramienta "Puppet" que contenga las siguientes secciones: Una introduccin a la herramienta describiendo sus posibles utilidades, ventajas, inconvenientes y entornos de trabajo junto con una breve historia de la misma (cuando se cre, quien la desarroll, etc....). Un manual detallado de instalacin, configuracin e integracin con Apache. Un ejemplo de uso describiendo un posible escenario donde se muestren las ventajas que nos proporciona la herramienta.

Introduccin a Puppet
Puppet es un sistema de cdigo abierto para automatizar las tareas administrativas de una red de ordenadores que fue creada por Luke Kanies en 2005. Est escrito en Ruby y bajo la GPL hasta la versin 2.7.0 y la licencia Apache 2.0. Puppet es una herramienta diseada para administrar la configuracin de Unix y Windows y funciona bajo esquema cliente/servidor. El usuario describe los recursos del sistema y su estado, ya sea utilizando un lenguaje declarativo de Puppet o una conexin DSL Ruby (lenguaje de dominio especfico). Todas las configuraciones tanto de servidor como de cliente, pueden verse en el directorio /etc/puppet/. Las utilidades que tiene esta potente herramienta es poder configurar equipos clientes de manera remota, trabajando desde el servidor sin tener que configurar nada, sino que se configura automticamente a travs de puppet. Las ventajas que ofrece Puppet son evidentes: es software libre, ahorra costes de desplazamiento y poder automatizar tareas sin necesidad de que el Administrador de Sistemas vaya a los equipos y los tenga que configurar uno a uno. Por otro lado, como todo software, tiene sus desventajas: hay poca documentacin de Puppet, pues continuamente estn sacando versiones nuevas debido a que es un proyecto nuevo. No tiene un soporte tcnico que garantice a alguna empresa robustez del sistema. Tampoco posee una interfaz amigable que ayude al Administrador a configurar los equipos.

Instalacin de Pupptet
Esta instalacin es guiada para mquinas bajo el entorno Linux. Para instalar Puppet hay que instalar antes lo siguiente: Instalar un servidor puppet. 1

Configurar el servidor puppet. Instalar el cliente puppet en todas las mquinas que queramos administrar. Configurar el cliente puppet.

Instalar el servidor Para instalar el servidor solo debemos ejecutar el siguiente comando:
$>apt-get install puppetmaster

Configurar el servidor Ahora debemos configurar dicho servidor, para ello debemos seguir los siguientes pasos: Nos dirigimos al fichero /etc/puppet/fileserver.conf para especificar a qu clientes daremos servicio, para ello aadimos en la directiva [file] las siguientes lneas:

[files] path /etc/puppet/files allow 192.168.1.0/24

Ahora debemos modificar el fichero /etc/puppet/puppet.conf. En este fichero estn las localizaciones de los directorios de logs, de datos, de certificados ssl. Debemos aadirle las siguientes lneas:
[puppetmasterd] templatedir=/var/lib/puppet/templates certname=puppetdptos autosign=false

Ahora debemos crear el directorio de clases y de manifiestos:

$> mkdir -p /etc/puppet/manifests/classes

Ahora creamos el fichero que tomar el control del servidor:

$> touch /etc/puppet/manifests/site.pp

Para poder programar las tareas automatizadas, debemos hacerlo en el siguiente directorio /etc/puppet/manifests/classes 2

Una vez configurado el servidor, podemos iniciarlo con:


$> /etc/init.d/puppetmaster start

Instalar cliente Para instalar el cliente Puppet debemos ejecutar la siguiente orden en la terminal:
$> sudo apt-get install puppet

Configurar el cliente Debemos editar el fichero /etc/puppet/puppet.conf y aadimos la siguiente lnea:

[main] server=servidorpuppet El sevidorpuppet podr ser la direccin IP del servidor puppet o el nombre del servidor. Ahora iniciamos el cliente Puppet en la mquina cliente con la siguiente comando:
$> /etc/init.d/puppet start

Integracin de Puppet con Apache Para integrar Apache con Puppet debemos hacerlo a travs de clases. Debemos descargar los ficheros desde aqu: https://github.com/puppet-modules/puppet-apache y aadirlos al directorio /etc/puppet/modules.

Ejemplo de uso de Puppet


A continuacin, se expone un caso real donde se usa Puppet; tareas realizadas por administradores que son necesarias en la gestin de un Instituto de Enseanza Secundaria: En el ejemplo que se muestra, se utiliza a Puppet para restringir el acceso a los alumnos al inicio de sesin en el ordenador del profesor. Imaginemos que el profesor se ausenta por unos minutos y un alumno puede intentar iniciar sesin desde el ordenador del profesor. Para evitar eso, hacemos uso de esta herramienta y su mdulo pam_access. Debemos tener el siguiente rbol de directorios disponibles en nuestro sistema:
files/access.conf /gdm manifests/init.pp

Estos ficheros deberemos tenerlos y aadirlos a /etc/puppet/modules. El fichero access.conf contendr la directiva siguiente para evitar el acceso a alumnos y solo dejar el acceso a profesores: - : ALL EXCEPT (teachers) : ALL El fichero init.pp contendr la siguiente clase, que ser la tarea que deber realizar Puppet:
class nologin_alumnos { file { "/etc/pam.d/gdm": owner => root, group => root, mode => 644, source => "puppet:///nologin_alumnos/gdm"; "/etc/security/access.conf": owner => root, group => root, mode => 644, source => "puppet:///nologin_alumnos/access.conf"; } }

Ah le estaremos diciendo que haga uso del mdulo pam_acces que mencionamos antes. (Para ello debe tenerse activado). Pues esto es todo lo que se debera hacer para programar esta tarea con la herramienta Puppet.

Referencias
http://forxa.mancomun.org/docman/view.php/225/209/puppet_v1.1.pdf&chrome=true http://administradores.educarex.es/wiki/index.php/Puppet#Instalaci.C3.B3n_de_puppet. http://puppetlinux.blogspot.com.es/2009/09/puppet-la-eleccion.html http://enavas.blogspot.com.es/2009/06/administracion-centralizada-de-equipos.html http://administradores.educarex.es/wiki/index.php/Tareas_puppet https://github.com/puppet-modules/puppet-apache

Вам также может понравиться