Changes between Version 1 and Version 2 of Ejemplo:ServidorPuppet


Ignore:
Timestamp:
04/21/10 15:49:23 (15 years ago)
Author:
jorge@…
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Ejemplo:ServidorPuppet

    v1 v2  
    1717
    1818 * Debemos asegurarnos de que el nombre del servidor (hostname) es el mismo que el quedara finalmente. Tenemos una receta en puppet para tal fin. https://trac.redcta.org.ar/redcta/browser/trunk/puppet/modules/puppet-network  Cómo se  asigna este valor varia, segun el entorno*.
     19
     20
     21
     22== Un ejemplo de nodo ==
     23
     24Los nodos y sus caracteristicas, es decir, lo que puppet hace con ellos, se definen en el servidor puppet.
     25
     26Creamos un archivo de nodo en en el servidor puppet.
     27
     28{{{
     29#touch /etc/puppet/nodes/ejemplo.pp
     30}}}
     31Lo editamos con el siguiente contenido:
     32{{{
     33##Definimos el nombre del nodo
     34node ejemplo {
     35###
     36# Agregamos el modulo constructor del menu para booteo por pxe.
     37# screenshot del cliente netboot: https://trac.redcta.org.ar/redcta/attachment/wiki/ServidorRedLocalMultiServiciosCapturasDePantalla/netboot-menu-pxe.png
     38#
     39#       The objective is the facilitate the download of debian-installer
     40#       and build a menu for the pxe clients.
     41#       
     42#       To use this module, you need to have a tftpd server running and
     43#       configure your dhcp server correctly.
     44#       
     45# source: https://trac.redcta.org.ar/redcta/browser/trunk/puppet/modules/di_netboot_assistant
     46           include di_netboot_assistant
     47### Aca usamos la clase debproxy::activateclient, definimos que el nodo sera cliente del proxy de paquetes, le asignamos a la variable "debproxyhost" el valor "debproxy-ubuntu"       
     48          debproxy::activateclient { dist:
     49              debproxyhost => "debproxy-ubuntu",
     50         }
     51### Incluimos la clase debproxy::server que se encarga de instalar apt-cacher y verificar la configuracion del paquete.
     52# source: https://trac.redcta.org.ar/redcta/browser/trunk/puppet/manifests/classes/debproxy.pp
     53         include debproxy::server
     54### Usamos el modulo dnsmasq y le pasamos los valores adecuados segun la red en la que estemos trabajando.
     55# source:  https://trac.redcta.org.ar/redcta/browser/trunk/puppet/modules/puppet-dnsmasq
     56             dnsmasq::config { 'oficina':
     57             dhcp_authoritative => 'yes',
     58             dhcp_range         => '10.0.12.150,10.0.12.200,255.255.0.0,2h',
     59             dhcp_gw            => '10.0.12.1',
     60             dhcp_nameservers   => '10.0.12.1',
     61             dhcp_script        => '/usr/local/sbin/dnsmasq-genhostname.sh',
     62             dhcp_hostsfile     => '/etc/dnsmasq.hostsfile',
     63
     64             addn_hosts         => '/etc/hosts.dnsmasq',
     65             domain             => 'ejemplo.org.ar',
     66             dhcp_boot          => '/pxelinux.0,ejemplo,10.0.12.2',
     67             tftp_root          => '/',
     68             log_queries        => 'yes',
     69             log_dhcp           => 'yes'
     70         }
     71# Aca estamos usando el modulo network, nuevamente le asigamos los valores a definir en el nodo.   
     72         network::interface { "eth0" :
     73             address => "10.0.12.2",
     74             broadcast => "10.0.12.255",
     75             netmask => "255.255.0.0",
     76             parameters => "gateway 10.0.12.1\n        dns-search ejemplo.org.ar\n        dns-nameservers 10.0.12.1",
     77         }
     78# Incluimos las modificacines de los archivos para usar el proxy de paquetes.
     79         include ubuntu_sources_list
     80# Le decimos a puppet que añada a archivo /etc/apt/sources.list los repositorios para poder instalar virtualbox con apt-get..desde puppet.
     81         include ubuntu_sources_list::virtualbox
     82
     83     }
     84
     85}}}
     86
     87