SIU-Guarani/version3.19.0/instalacion desde cero/produccion/gestion/linux
Sumario
Instalación desde cero de SIU-Guaraní Gestión 3.19 en entorno de Producción
Requisitos previos
- 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.19.x.y: por la versión propia que se va a instalar.
Pasos para la instalación
- Verificar que se cumplan todos los requisitos técnicos de la versión
- 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í>.
- 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.19.x.y <path proyecto Guaraní>
- 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
- 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>
- 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
- 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
- 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.
- 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
- 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.
- Reiniciar Apache:
- sudo service apache2 restart
- Configurar la API REST
- Para crear la base de datos de negocio, dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
- sudo ./guarani instalar
- Activar el esquema de auditoría. Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
- sudo ./guarani crear_auditoria -f guarani
- 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:
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:
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:
Este comando crea la carpeta <path proyecto Guaraní>/metadatos_compilados, a la que se le deben dar los permisos arriba detallados:
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:
Nivel de log
Adicionalmente, en el mismo archivo 'aplicacion.php', se puede establecer el nivel de log máximo deseado:
Probar el acceso
Para probar el proyecto navegar hacia la URL definida en toba.conf, por defecto:
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_referencia -i desarrollo
toba proyecto despublicar -p toba_editor -i desarrollo
toba proyecto despublicar -p toba_referencia -i desarrollo
Finalmente, reiniciar Apache.