Skip to content

Instalacion en servidores

japastor edited this page Oct 26, 2018 · 31 revisions

1. Descarga del paquete y las tareas puppet.

Nota: para descargar desde el navegador web ficheros alojados en github hay que pulsar sobre el nombre del fichero y luego sobre la opción "Raw". Eso nos descargará el fichero en formato binario.

2. Servidor ldap/nfs.

Desde que recibimos el nuevo servidor, los servicios ldap, puppet y nfs están en la misma máquina, que es donde instalamos controlies:

  • Precaución: hacer copia de seguridad de controlies tal como está instalado:

      cd /var/web2py/applications
      tar cfvz controlies.tgz controlies/*
      mv controlies.tgz /root/copia-controlies.tgz
    
  • Instalar el paquete controlies_X.Y.Z-N_all.deb descargado en el paso 1.

      dpkg -i controlies_X.Y.Z-N_all.deb
      apt-get -f install
    

    Si la instalación da error referente a /var/www/.ssh borrar ese directorio y reinstalar.

  • Confirmar que en /etc/pkgsync/mayhave tenemos el paquete "python-yaml"

  • Reiniciar apache2:

      /etc/init.d/apache2 restart
    
  • Si en /etc/puppet/puppet.conf tenemos las siguientes siguientes líneas:

       [main] 
       ....... 
       reports=store,http 
       reporturl=http://ldap.<tudominio>/controlies/init/registro/actualizalogpuppet
       [master] 
       ....
    

    Debemos quedarlas:

       [main] 
       ....... 
       reports=store
    
       [master] 
       ....
    

    Ya que en controlies-0.7.0-7 y posteriores esa configuración ya no es necesaria.

  • Instalar los modulos puppet descargados en el paso 1, dentro de /etc/puppet/modules. Debe quedar /etc/puppet/modules/ con los tres directorios siguientes:

          /etc/puppet/modules/instala_controlies
          /etc/puppet/modules/actualizaciones_controlies       <---Obsoleto, ya no existe
          /etc/puppet/modules/controlies_borrar_antiguos       <---Obsoleto, ya no existe
    
  • En los mayhave correspondientes, añadir los paquetes curl (en todos), controlies-ltspserver (en los servidores de aula con thinclients) y controlies-client (en el resto). Normamente estos mayhaves están distribuidos por una tarea puppet desde el servidor nfs del centro, en la ruta /etc/puppet/files/xubuntu...

  • Reiniciar puppet (recordemos ya que se ejecuta mediante passenger, hay que reiniciar apache):

          /etc/init.d/apache2 restart
    
  • Si hemos dado de alta usando controlies portátiles para profesores, estos se insertan en el nuevo netgroup de ldap laptop-hosts. Para que estos portátiles puedan montar sus homes por NFS es necesario editar el /etc/exports que tenemos y quedarlo:

       home    @ltsp-server-hosts(rw,async,no_subtree_check) @workstation-hosts(rw,async,no_subtree_check,insecure) @server-hosts(rw,async,no_subtree_check) @laptop-hosts(rw,async,no_subtree_check)
    

    Nótese que hemos añadido @laptop-hosts(rw,async,no_subtree_check) a la configuración que tenemos por defecto.

3. Verificación de correcto funcionamiento.

  • Entrar en controlies a través de la interfaz web, como se ha hecho siempre. Si da error de credenciales al entrar puede ser debido a que el paquete controlies del servidor viene configurado para LDAP Seguro. Si no lo tenemos seguro nos dará error de validación al entrar en http:/ldap/controlies:

    En ese caso ha que editar el fichero servidor:/var/web2py/applications/controlies/models/db.py y comentar la línea 95 y descomentar la línea 98. Reiniciar despues apache2.

  • Entrar en las siguientes opciones de menú:

    • Gestión/Configuración: verificar que se puede configurar entre otras cosas una cuenta de correo para el envío de alertas. Un ejemplo de configuración de correo para usar gmail sería:

      http://microbuffer.wordpress.com/2012/03/28/enviar-email-con-python-y-gmail/

    • Rellenar el cuadrante "Franjas horarias" con las franjas de nuestro IES. No es obligatorio pero mejor tenerlo.

    • Base de Datos/Seguimiento/Seguimiento de usuarios, maquinas, thinclients e impresión. Ver que se puede entrar en las opciones y que aparecen los grid.

4. Depuración/mantenimiento.

  • Si hay errores en la ejecución de controlies del tipo:

       Internal error
       Ticket issued: init/172.21.14.102.2018-02-16.08-50-46.f0d6deea-8256-4c84-aa5d-ea2c3a040066
    

    Podemos obtener mas información para depurarlos con el enlace siguiente.

  • Si durante la instalación aparece el error:

        /var/web2py/applications/controlies/.ssh/id_rsa: No such file or directory
    

    Se soluciona instalando primero la versión 0.7.0-3 y luego la actual encima. La 0.7.0-3 se descarga de https://github.com/manumora/controlies/blob/af9e455602cfb57fa944ddcc75f00d100dbe16cf/packages/controlies_0.7.0-3_all.deb

  • Si se quiere acceder por la puerta trasera a la BBDD msql donde se almacena todo para consultar o realizar borrados de datos haremos en el servidor:

          apt-get install sqlite3
          sqlite3 /var/web2py/applications/controlies/databases/controlies.sqlite
    

    Una vez dentro las órdenes básicas son:

          .help: todos los comandos
          .schema: estructura de tablas de la BBDD
          .quit: salir
    

    Y cualquier SQL soportado por SQLite, por ejemplo:

          select * from log_printer;
    

5. Actualizaciones.

  • En caso de que haya alguna nueva versión tanto de la parte servidora como de la parte cliente hay que proceder a descargarla(s) tal como se indica en el paso 1.

  • Si es de la parte servidora, se instala en el servidor ldap el nuevo paquete descargado:

      dpkg -i controlies_X.Y.Z-N_all.deb
      apt-get -f install
    

    Puede ser aconsejable reiniciar apache2 por si acaso.

      /etc/init.d/apache2 restart
    
  • Si es de la parte cliente, se instalan en el servidor o servidores puppet las tareas puppet actualizadas, en la ruta /etc/puppet/modules, sobre los directorios:

          /etc/puppet/modules/instala_controlies
          /etc/puppet/modules/actualizaciones_controlies  <--obsoleto, ya no existe
          /etc/puppet/modules/controlies_borrar_antiguos  <--obsoleto, ya no existe
    

    Después solo queda esperar que los clientes vayan actualizándose automáticamente.

  • En el caso de que haya instrucciones adicionales de configuración, se seguirán dichas instrucciones.