Buenas prácticas para el mantenimiento de servidores On-Premise

AcademiaFinnegans
Tue, 09 Aug 2022 12:27:34 +0000
Soporte técnico

Consulta:

¿Cuáles son las tareas a configurar en los servidores Teamplace/GO On-Premise?

Respuesta:

Actualizaciones
Es necesario:

mantener el servidor actualizado con actualizaciones críticas del sistema operativo. Lo ideal es automatizar el proceso para que se ejecute fuera del horario de trabajo.

mantener actualizada la aplicación, tanto de los módulos estándar como de los particulares

Actualización de módulos estándar: Cómo actualizar Finnegans en servidores propios

Actualización de módulos particuares: Cómo actualizar un módulo particular en servidor propio

Servidor de aplicaciones
Respaldar periódicamente la información importante:

la información de la empresa que se encuentra en el directorio /FAFApps. Este se corresponde con el campo “Espacio de Trabajo” que el usuario ingresa para loguearse a la aplicación.

A modo de ejemplo, si se ingresa al espacio de trabajo “EMPRESA_PRUEBA”, hay que respaldar el directorio (y todo su contenido) /FAFApps/EMPRESA_PRUEBA

los archivos de configuración de la aplicación:

/FAFApps/faf*.xml

librerías de Wildfly:

../wildfly/standalone/deployment/ERP-WEB.war/WEB-INF/lib/*

archivos de configuración de Wildfly:

../wildfly/standalone/configuration/standalone.xml

../wildfly/bin/standalone.conf (linux)

../wildfly/bin/standalone.conf.bat (windows)

Servidor de base de datos

Realizar un backup diario de la base, que es del tipo FAF12_NombreCliente

Configurar tareas de mantenimiento en la base de datos (Creación de un trabajo de Agente SQL Server en SSMS | Microsoft Learn). Para esto es necesario tener instalado el Agente SQL Server.

Se puede utilizar este job personalizable corriendo esta sentencia en una query desde master. Modificando :

USE msdb;
GO

-- Crear el job
EXEC dbo.sp_add_job
  @job_name = N'Mantenimiento Diario';
GO

-- Paso 1: Ejecutar sp_updatestats
EXEC sp_add_jobstep
  @job_name = N'Mantenimiento Diario',
  @step_name = N'Update Statistics',
  @subsystem = N'TSQL',
  @command = N'EXEC sp_updatestats;',
  @database_name = N'FAF12_NombreBaseDeDatos',
  @retry_attempts = 0,
  @retry_interval = 0,
  @on_success_action = 1,    -- Ir al siguiente paso
  @on_fail_action = 3;       -- Salir del job con error
GO

-- Paso 2: Truncar la tabla FAFArbolSeleccion
EXEC sp_add_jobstep
  @job_name = N'Mantenimiento Diario',
  @step_name = N'Truncate FAFArbolSeleccion',
  @subsystem = N'TSQL',
  @command = N'TRUNCATE TABLE FAFArbolSeleccion;',
  @database_name = N'FAF12_NombreBaseDeDatos',
  @retry_attempts = 0,
  @retry_interval = 0,
  @on_success_action = 1,    -- Aunque es el último, se puede dejar como continuar
  @on_fail_action = 3;       -- Salir del job con error
GO

-- Crear el horario diario a las 21:00
EXEC dbo.sp_add_schedule
  @schedule_name = N'Mantenimiento Diario',
  @freq_type = 4,                -- Diario
  @freq_interval = 1,           -- Cada 1 día
  @active_start_time = 210000;  -- 21:00:00
GO

-- Asociar el horario al job
EXEC sp_attach_schedule
  @job_name = N'Mantenimiento Diario',
  @schedule_name = N'Mantenimiento Diario';
GO

-- Asociar el job al servidor SQL Server Agent actual
EXEC dbo.sp_add_jobserver
  @job_name = N'Mantenimiento Diario';
GO

Ejecutar desde una query de master, cambiando donde dice @database_name = N’FAF12_NombreBaseDeDatos’, Por el nombre de la base real

Se puede ajustar el horario a ejecutar, en este ejemplo se corre a las 21 hs
diariamente. Pueden verificar si se ejecutó a la hora deseada desde SQLServerAgent - Jobs - click derecho - View History

Se deben configurar dos pasos:

exec sp_updatestats

truncate table FAFArbolSeleccion

Recomendamos correr el trabajo todos los días, fuera del horario laboral y de backups

Como tarea adicional, se puede aumentar el query-timeout a 300 en caso de ser necesario, el mismo se encuentra en: /opt/wildfly/standalone/configuration/standalone.xml o C:/wildfly/standalone/configuration/standalone.xml si es windows:

Envío de backups a Finnegans
En caso de ser necesario enviar backups a Finnegans para resolver un caso, recomendamos seguir los siguientes pasos:

Eliminar transacciones antiguas por fecha: SQL Server - Cómo eliminar transacciones antiguas por fecha de una base de datos en servidores propios para enviar a Finnegans

Reducir el tamaño de la base: SQL Server - Cómo reducir el tamaño de una base de datos en servidores propios para enviar a Finnegans

Ofuscar datos sensibles: SQL Server - Cómo ofuscar datos sensibles en servidores propios para enviar base de datos a Finnegans

__

1 publicación - 1 participante

Leer todo el tema