SIU-Guarani/version3.20.0/instalacion desde cero/produccion/gestion/linux

De SIU
Revisión del 19:36 25 abr 2021 de Sergio (discusión | contribuciones)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Instalación desde cero de SIU-Guaraní Gestión 3.20 en entorno de Producción

Requisitos previos

  1. Haber liberado una versión propia de cuatro dígitos (se hayan o no desarrollado personalizaciones).


A lo largo de los pasos se deberá reemplazar:

  • <siglas institución>: por las siglas correspondientes al nodo de Colab de la Institución que realiza la instalación.
  • 3.20.x.y: por la versión propia que se va a instalar.

Pasos para la instalación

  1. Verificar que se cumplan todos los requisitos técnicos de la versión
  2. Crear la carpeta del proyecto en la ubicación deseada, por ejemplo:
    sudo mkdir /usr/local/proyectos/guarani
    Nota: en lo sucesivo denominaremos esta carpeta como <path proyecto Guaraní>.
  3. Descargar el proyecto de SVN desde la URL correspondiente en Colab:
    sudo svn checkout https://colab.siu.edu.ar/svn/guarani3/nodos/<siglas institución>/gestion/versiones/3.20.x.y <path proyecto Guaraní>
  4. Instalar vía Composer las dependencias del proyecto. Posicionados en la raíz <path proyecto Guaraní>, ejecutar:
    sudo composer install --prefer-dist --no-dev --optimize-autoloader
  5. Instalar el framework SIU-Toba, para ello, posicionados en <path proyecto Guaraní>/bin ejecutar:
    export TOBA_INSTANCIA=desarrollo
    export TOBA_INSTALACION_DIR=<path proyecto Guaraní>/instalacion
    sudo ./toba instalacion instalar
    y completar:
    Nombre del Alias (por defecto "toba"): <alias de los recursos navegables de Toba. Sugerencia: toba_guarani3>
    Por favor, ingrese su número de desarrollador (ENTER utilizará 0): <ID personal enviado por correo electrónico>
    Se trata de una instalacion de producción? (Si o No) (s/n): n
    Nombre de la instalación (ej: Andromeda): <ej: guarani3>
    PostgreSQL - Ubicación (ENTER utilizará localhost): <ip servidor Postgres>
    PostgreSQL - Puerto (ENTER utilizará: 5432): <puerto servidor Postgres>
    PostgreSQL - Usuario (ENTER utilizará postgres): <usuario servidor Postgres>
    PostgreSQL - Clave  (ENTER para usar sin clave): <clave servidor Postgres>
    PostgreSQL - Base de datos (ENTER utilizará toba_2_7): <nombre de la base, sugerencia: guarani3>
    Nombre del schema a usar (ENTER utilizará desarrollo): <usar el por defecto (desarrollo)>
    Toba - Clave (usuario "toba"): <clave del superusuario toba. No usar un password débil en producción>
  6. Darle permisos a las siguientes carpetas de manera recursiva para que el usuario con el que se ejecuta Apache pueda escribir:
    • <path proyecto Guaraní>/www
    • <path proyecto Guaraní>/temp
    • <path proyecto Guaraní>/instalacion
    • <path proyecto Guaraní>/metadatos_compilados (esta carpeta se crea al ejecutar ./guarani compilar en la configuración del entorno de Producción)
    • <path proyecto Guaraní>/vendor/siu-toba/framework/www
    • <path proyecto Guaraní>/vendor/siu-toba/framework/temp
    Por ejemplo, en ambientes Debian, donde el usuario de Apache es www-data, debería ejecutarse:
    chown -R www-data:www-data <path proyecto Guaraní>/www
    chown -R www-data:www-data <path proyecto Guaraní>/temp
    chown -R www-data:www-data <path proyecto Guaraní>/instalacion
    chown -R www-data:www-data <path proyecto Guaraní>/metadatos_compilados
    chown -R www-data:www-data <path proyecto Guaraní>/vendor/siu-toba/framework/www
    chown -R www-data:www-data <path proyecto Guaraní>/vendor/siu-toba/framework/temp
  7. Crear un link simbólico a toba.conf, e indicarle Apache que recargue los archivos de configuración. En lugar de hacerlo como indica la consola de instalación, sugerimos:
    sudo ln -s <path proyecto Guaraní>/instalacion/toba.conf /etc/apache2/sites-available/gestion.conf
    sudo a2ensite gestion.conf
    sudo service apache2 reload
  8. Agregar los parámetros de localización de fop al final del archivo de inicialización de la instalación Toba (<path proyecto Guaraní>/instalacion/instalacion.ini):
    [xslfo]
    fop=<path proyecto Guaraní>/php/3ros/fop/fop
    Nota: verificar que la ruta al archivo 'fop' sea la correcta de acuerdo al path de la instalación.
  9. Configurar de qué manera se desea ver el menú de la aplicación. Dentro de la carpeta del proyecto (<path proyecto Guaraní)) ejecutar:
    sudo cp menu.ini.tmpl menu.ini
    Completar el archivo menu.ini
  10. Para cargar el proyecto, dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
    sudo ./guarani cargar -d <path proyecto Guaraní>
    Nota: ante la pregunta "¿Desea agregar el alias de apache al archivo toba.conf? (Si o No)" responder s.
  11. Reiniciar Apache:
    sudo service apache2 restart
  12. Configurar la API REST
    API SIU-Guaraní - Perfil Funcional
  13. Para crear la base de datos de negocio, dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
    sudo ./guarani instalar
  14. Activar el esquema de auditoría. Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
    sudo ./guarani crear_auditoria -f guarani
  15. Programar una tarea que levante la utilidad PHP-Java Bridge, necesaria para el motor de reportes Jasper Reports. El comando para activarlo es:
    java -jar <path proyecto Guaraní>/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET_LOCAL:8081
    Por ejemplo, en un ambiente Debian, se puede editar como superusuario el archivo /etc/rc.local, y agregar la sentencia anterior.

Configuraciones adicionales

Manejo de perfiles

En el archivo <path proyecto Guaraní>/instalacion/instalacion.ini establecer:

 es_produccion = 1

Para facilitar la actualización de versiones y evitar cometer errores en el pasaje desde desarrollo, los perfiles se definen en el entorno de producción. Ver Manejo de perfiles Para ello, en el archivo <path proyecto Guaraní>/instalacion/i__desarrollo/instancia.ini, dentro de la sección destinada al proyecto indicada por "[guarani]") configurar:

 [guarani]
 usar_perfiles_propios = 1

La combinación de estos dos flags permite que la exportación de perfiles se haga en la carpeta <path proyecto Guaraní>/instalacion/i__desarrollo/p__guarani/perfiles, que tiene establecida la propiedad svn:ignore, en lugar de la carpeta usual <path proyecto Guaraní>/metadatos/permisos. De esta manera, cuando se actualiza el sistema a una nueva versión, se mantienen los perfiles definidos localmente.

Compilar metadatos

Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:

 sudo ./guarani compilar

Este comando crea la carpeta <path proyecto Guaraní>/metadatos_compilados, a la que se le deben dar los permisos arriba detallados:

chown -R www-data:www-data <path proyecto Guaraní>/metadatos_compilados

Esta carpeta no debe versionarse (svn commit) ya que se regenerará cada vez que se actualice el servidor. Por dicha razón es que compilamos en el servidor de producción, donde no se realizan svn commits. Editar el archivo 'aplicacion.php' (<path proyecto Guaraní>/www/aplicacion.php) y descomentar la siguiente línea:

define('apex_pa_metadatos_compilados', 1);

Nivel de log

Adicionalmente, en el mismo archivo 'aplicacion.php', se puede establecer el nivel de log máximo deseado:

define("apex_pa_log_archivo_nivel", 3); // 3: Error | 5: notice | 6: debug

Probar el acceso

Para probar el proyecto navegar hacia la URL definida en toba.conf, por defecto:

http://localhost/guarani/3.20

El usuario para el primer acceso es toba, y la contraseña toba. Dado que estamos en un ambiente de producción, se recomienda cambiar luego del primer acceso este password con la operación Administrar personas.

Desinstalar proyectos de desarrollo

Dado que estamos en un ambiente de producción, recomendamos desinstalar los proyectos toba_editor y toba_referencia, que son instalados por defecto junto con el framework. En una consola posicionada en el bin de toba (<path proyecto Guaraní>/lib/toba/bin), ejecutar:

toba proyecto eliminar -p toba_editor -i desarrollo
toba proyecto eliminar -p toba_referencia -i desarrollo

toba proyecto despublicar -p toba_editor -i desarrollo
toba proyecto despublicar -p toba_referencia -i desarrollo

Finalmente, reiniciar Apache.


Ir al esquema de instalación y actualización de la versión