SIU-Sanaviron-Quilmes/version2.0.0/instalar sq produccion

De SIU
Revisión del 16:34 7 sep 2020 de Esassone (discusión | contribuciones) (SQ Académico)
Saltar a: navegación, buscar
Siu-sanaviron-quilmes.png

Esquema de instalación y configuración de SIU-Sanavirón-Quilmes

Comunicación entre Modulos

En esta sección se va a encontrar información sobre:

  • Requisitos para la instalación.
  • Instalación de los distintos sub módulos de SIU Sanaviron Quilmes.
  • Configuración para establecer la comunicación entre los distintos sub módulos y otros módulos (SIU Pilagá, SIU Guaraní, Agentes de cobranza)

Requisitos

Herramientas Núcleo Académico G.C.O. SQ Pagos
Git Si Si Si Si
SVN Si Si
Postgres >=9.5 >=9.5
PHP 7.3 7.3 7.3
Extensiones PHP php-pgsql, php-gd, php-curl, php-mbstring, php-dom php-mcrypt php-pgsql, php-gd, php-curl, php-mbstring, php-dom php-mcrypt php-curl
PHP-Composer Si Si Si
NodeJS Si Si SI
Bower Si Si
Java openjdk version 1.8.0 openjdk version 1.8.0
Nota: La base de datos debe tener la codificación es_AR.UTF8

PHP Composer: https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx

Redis: https://redis.io/topics/quickstart

NodeJs: https://nodejs.org/en/download/package-manager

Instalación

Si no tiene instalado Apache y los módulos puede ejecutarlos con la siguiente linea:
apt-get install apache2 libapache2-mod-php php-cli php-pgsql php-gd php-curl php-mbstring php-dom php-mcrypt php-soap

Iniciar módulo rewrite
a2enmod rewrite

Instalación de bower

sudo npm install -g bower


Definir zona horaria en PHP date.timezone=America/Argentina/Buenos_Aires

El servidor debe tener configurada la fecha correctamente para que la comunicación entre los sistemas propios y externos no genere inconvenientes.

Se recomienda utilizar el servicio NTP y utilizar los servidores de south-america.pool.ntp.org

Instalación:

# apt-get install ntp

# vi /etc/ntp.conf

  •     server 0.south-america.pool.ntp.org
  •     server 1.south-america.pool.ntp.org
  •     server 2.south-america.pool.ntp.org
  •     server 3.south-america.pool.ntp.org

# /etc/init.d/ntp restart

SQ Núcleo

  1. Descarga de fuentes.
    Posicionarse en la ubicación deseada para la instalación del proyecto:
    cd /usr/local/proyectos/sanaviron_quilmes/
    El proyecto está disponible en https://hub.siu.edu.ar
    git clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/nucleo.git
    cd nucleo
    Descargar las dependencias mediante Composer
     composer install --no-dev
  2. Configuración de la instalación
    Hay que definir muchas variables para completar la instalación. No hay que preocuparse si hay algo mal definido ya que todo lo que se define acá puede ser modificado luego a través de archivos de configuración de SIU-Sanavirón-Quilmes. Para mayor comodidad, se entrega un archivo instalador.env de variables de entorno listo para ser completado. En la página Variables de entorno para la instalación del se explica en detalle cada una. El instalador dispone de un comando para inicializar el archivo de variables de entorno:
     ./bin/instalador proyecto:definir-variables
    Esto creará el archivo en la raíz del proyecto, el cual debe ser editado según las necesidades. Una vez editado el archivo, se puede proceder a realizar la instalación de SIU-Sanaviron-Quilmes: Núcleo
  3. Instalar el sistema
    El proceso de instalar es simple y estándar, basado en el proyecto para instalación de soluciones SIU. En la misma consola, ejecutar:
     ./bin/instalador proyecto:instalar --crear-db
  4. Corregir los permisos
    Es imprescindible que se configuren los permisos de forma adecuada. Para ello una forma es asignar permisos de usuario de modo que <mi-usuario> pueda leer, modificar y ejecutar los archivos del proyecto mientras asignar los permisos de grupo al que corre el servidor web para que este pueda acceder a los archivos. Esto se logra ejecutando como administrador:
     sudo ./bin/instalador permisos:simple -U www-data -W www-data
    Nota: Existen otras variantes del esquema de permisos y opciones, ver más con ./bin/instalador ayuda
    Importante: Si utiliza como usuario y grupo www-data deberá agregar el usuario que ejecutará el cron al grupo www-data. El grupo www-data deberá tener permisos de escritura para los usuarios del grupo.
  5. Sacar al sistema de modo mantenimiento
     sudo ./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento
  6. Configurar el servidor web Apache
    Se proporciona un archivo de configuración muy simple, a modo de guía y con las rutas necesarias. Para probarlo, basta con ejecutar:
     sudo ln -s ./config/toba.conf /etc/apache2/sites-enabled/sq_nucleo.conf
    Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache:
     sudo a2enmod rewrite
     sudo service apache2 restart
  7. Iniciar el servidor Jasper
    Para poder generar los comprobantes será necesario iniciar el servidor Jasper.
    java -jar ./vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
  8. Configurar el cron
     crontab -e
    Para que el planificador de tareas se ejecute cada un minuto en búsqueda de tareas programadas hay que agregar al crontab la siguiente línea:
     * * * * * <path proyecto NUCLEO>/bin/sq tareas_planificadas
    Nota: Se ponen los 5 asteriscos para que este comando se ejecute cada un minuto. Este comando se encarga de verificar cada minuto si es el momento de ejecutar determinada tarea según se haya configurado en la operación toba Procesos > Planificador de tareas. Luego guardar el archivo y reiniciar la pc. Configurar la ejecución programada de procesos En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.
  9. Configurar la ejecución programada de procesos
    En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.

  10. Iniciar Workers (cola de mensajes)
    Una vez finalizada la instalación o actualización del sistema, este deberá quedar preparado para enviar los mensajes a los sistemas correspondientes. Para que esta cola de mensajes sea leída en forma asíncrona y realice los envíos se debe mantener corriendo el siguiente comando en el servidor:
     ./bin/sq iniciar_workers
    Una vez ejecutado el comando, este inicia los workers que quedán a la espera de nuevos mensajes que se enviarán a la cola para posteriormente realizar el envío al destinatario correspondiente. Para que el comando corra de manera ininterrumpida se puede utilizar el siguiente enfoque:
    Supervisor
Importante: En caso de utilizar solamente la instalación del Núcleo sin módulos adicionales (Académico, G.C.O., SQ-Pagos) se deberá modificar la siguiente variable en el archivo /config/sq.ini
 [sq_nucleo]
...
...
standalone="true"

SQ Académico

  1. Descarga de fuentes.
    Posicionarse en la ubicación deseada para la instalación del proyecto:
    cd /usr/local/proyectos/sanaviron_quilmes/
    El proyecto está disponible en https://hub.siu.edu.ar
    git clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/academico.git
    cd academico
    Descargar las dependencias mediante Composer
     composer install --no-dev
  2. Configuración de la instalación
    Hay que definir muchas variables para completar la instalación. No hay que preocuparse si hay algo mal definido ya que todo lo que se define acá puede ser modificado luego a través de archivos de configuración de SIU-Sanavirón-Quilmes. Para mayor comodidad, se entrega un archivo instalador.env de variables de entorno listo para ser completado. En la página Variables de entorno para la instalación del se explica en detalle cada una. El instalador dispone de un comando para inicializar el archivo de variables de entorno:
     ./bin/instalador proyecto:definir-variables
    Esto creará el archivo en la raíz del proyecto, el cual debe ser editado según las necesidades. Una vez editado el archivo, se puede proceder a realizar la instalación de SIU-Sanaviron-Quilmes: Académico
  3. Instalar el sistema
    El proceso de instalar es simple y estándar, basado en el proyecto para instalación de soluciones SIU. En la misma consola, ejecutar:
     ./bin/instalador proyecto:instalar --crear-db
  4. Corregir los permisos
    Es imprescindible que se configuren los permisos de forma adecuada. Para ello una forma es asignar permisos de usuario de modo que <mi-usuario> pueda leer, modificar y ejecutar los archivos del proyecto mientras asignar los permisos de grupo al que corre el servidor web para que este pueda acceder a los archivos. Esto se logra ejecutando como administrador:
     sudo ./bin/instalador permisos:simple -U www-data -W www-data
    Nota: Existen otras variantes del esquema de permisos y opciones, ver más con ./bin/instalador ayuda
    Importante: Si utiliza como usuario y grupo www-data deberá agregar el usuario que ejecutará el cron al grupo www-data. El grupo www-data deberá tener permisos de escritura para los usuarios del grupo.
  5. Sacar al sistema de modo mantenimiento
     sudo ./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento
  6. Configurar el servidor web Apache
    Se proporciona un archivo de configuración muy simple, a modo de guía y con las rutas necesarias. Para probarlo, basta con ejecutar:
     sudo ln -s ./config/toba.conf /etc/apache2/sites-enabled/sq_uv.conf
    Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache:
     sudo a2enmod rewrite
     sudo service apache2 restart
  7. Iniciar el servidor Jasper
    Para poder generar los comprobantes será necesario iniciar el servidor Jasper.
    java -jar ./vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
  8. Configurar el cron
     crontab -e
    Para que el planificador de tareas se ejecute cada un minuto en búsqueda de tareas programadas hay que agregar al crontab la siguiente línea:
     * * * * * <path proyecto UV>/bin/sq tareas_planificadas
    Nota: Se ponen los 5 asteriscos para que este comando se ejecute cada un minuto. Este comando se encarga de verificar cada minuto si es el momento de ejecutar determinada tarea según se haya configurado en la operación toba Procesos > Planificador de tareas. Luego guardar el archivo y reiniciar la pc. Configurar la ejecución programada de procesos En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.
  9. Configurar la ejecución programada de procesos
    En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. Los procesos que deberías configurar son los siguientes en este orden:
    • Generar_reporte_cobranzas_recibidas (Guarda en la tabla rep_cobranzas_recibidas los payments de MP. necesario para la operación de conciliaciones
    • Vencer ventas
    • Anular inscripciones g3 (Anula las inscripciones que quedaron en estado inicio_cobro_digital o pendiente si pasaron 6 hs desde la generación de la misma. Anula las inscripciones que quedaron en pendiente_cobro_digital si pasaron 3 días desde la generación de la misma.)
    • Notificar morosos a g3 (Notifica a guarSe deben editar:ani todos los ids de los clientes que no pagaron pasada la fecha de vencimiento)
    • Enviar notificaciones por email a clientes
    • Notificar ventas al nucleo (Envía al núcleo las ventas que se encuentran cobradas y que la comisión a la que pertenecen está confirmada)
    • La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.
    • El proceso generar_reporte_cobranzas_recibidas se podría configurar para que se ejecute cada media hora y mantener lo más actualizado posible el informe de Conciliaciones.
  10. Iniciar Workers (cola de mensajes)
    Una vez finalizada la instalación o actualización del sistema, este deberá quedar preparado para enviar los mensajes a los sistemas correspondientes. Para que esta cola de mensajes sea leída en forma asíncrona y realice los envíos se debe mantener corriendo el siguiente comando en el servidor:
     ./bin/sq iniciar_workers
    Una vez ejecutado el comando, este inicia los workers que quedán a la espera de nuevos mensajes que se enviarán a la cola para posteriormente realizar el envío al destinatario correspondiente. Para que el comando corra de manera ininterrumpida se puede utilizar el siguiente enfoque:
    Supervisor

Para realizar validaciones generales puede ejecutar el comando

cd bin
sq validar_instalacion

SQ G.C.O.

  1. Descarga de fuentes.
    Posicionarse en la ubicación deseada para la instalación del proyecto:
    cd /usr/local/proyectos/sanaviron_quilmes/
    El proyecto está disponible en https://hub.siu.edu.ar
    git clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/gco.git
    cd gco
    Descargar las dependencias mediante Composer
     composer install
  2. Configuración de la instalación
    Hay que definir muchas variables para completar la instalación. No hay que preocuparse si hay algo mal definido ya que todo lo que se define acá puede ser modificado luego a través de archivos de configuración de SIU-Sanavirón-Quilmes. Para mayor comodidad, se entrega un archivo instalador.env de variables de entorno listo para ser completado. En la página Variables de entorno para la instalación del se explica en detalle cada una. El instalador dispone de un comando para inicializar el archivo de variables de entorno:
     ./bin/instalador proyecto:definir-variables
    Esto creará el archivo en la raíz del proyecto, el cual debe ser editado según las necesidades. Una vez editado el archivo, se puede proceder a realizar la instalación de SIU-Sanaviron-Quilmes: G.C.O.
  3. Instalar el sistema
    El proceso de instalar es simple y estándar, basado en el proyecto para instalación de soluciones SIU. En la misma consola, ejecutar:
     ./bin/instalador proyecto:instalar
  4. Corregir los permisos
    Es imprescindible que se configuren los permisos de forma adecuada. Para ello una forma es asignar permisos de usuario de modo que <mi-usuario> pueda leer, modificar y ejecutar los archivos del proyecto mientras asignar los permisos de grupo al que corre el servidor web para que este pueda acceder a los archivos. Esto se logra ejecutando como administrador:
     sudo ./bin/instalador permisos:simple -U <mi-usuario> -W www-data
    Nota: Existen otras variantes del esquema de permisos y opciones, ver más con ./bin/instalador ayuda
  5. Configurar el servidor web Apache
    Se proporciona un archivo de configuración muy simple, a modo de guía y con las rutas necesarias. Para probarlo, basta con ejecutar:
     sudo ln -s ./config/alias.conf /etc/apache2/sites-enabled/gco.conf
    Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache:
     sudo a2enmod rewrite
     sudo service apache2 restart


SQ Pagos

  1. Descarga de fuentes.
    Posicionarse en la ubicación deseada para la instalación del proyecto:
    cd /usr/local/proyectos/sanaviron_quilmes/
    El proyecto está disponible en https://hub.siu.edu.ar
    git clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/sq_pagos.git
    cd sq_pagos
  2. Configuración de la instalación
    Editar el archivo config/angular-config.json:
    {
            "entorno": "desarrollo",
            "desarrollo": {
                    "config": {
                            "api_backend_url": "http://ip_servidor/sq_pagos_backend/",
                            "titulo": "Universidad de prueba :: Plataforma de pagos :: SIU­-Sanaviron-Quilmes"
                    }
            },
            "produccion": {
                    "config": {
                            "api_backend_url": "http://ip_servidor/sq_pagos_backend/",
                            "titulo": "Universidad de prueba :: Plataforma de pagos :: SIU­-Sanaviron-Quilmes"
                    }
            }
    }
    IMPORTANTE: Si realiza cambios en este archivo posteriormente a la instalación deberá ejecutar nuevamente el punto 3 (Instalar sistema).
  3. Instalar el sistema
    export NODE_VERSION=4.5.0
    export NVM_DIR=/home/node/.nvm
    git clone https://github.com/creationix/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
    . ~/.nvm/nvm.sh && nvm install $NODE_VERSION
    echo ". ~/.nvm/nvm.sh" >> ~/.bashrc
    . ~/.nvm/nvm.sh && nvm use $NODE_VERSION
    cd /usr/local/proyectos/sanaviron_quilmes/sq_pagos
    npm install --unsafe-perm
  4. Configurar el servidor web Apache
    ln -s ./config/sq_pagos.conf /etc/apache2/sites-enabled/sq_pagos.conf
    Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache
     sudo a2enmod rewrite
     sudo service apache2 restart

Agente de cobranzas

Configurar Mercado Pago

Configurar PayperTic