Comunicación presentada al IV Congreso Ciudades Inteligentes:
Autores
- Braulio Pareja Manzanares, Técnico del Área de Sistemas, Redes, Explotación y CAU, EPICSA
- Jose Maria Riol Hernández, Jefe del Área de Sistemas, Redes, Explotación y CAU, EPICSA
- Antonio Galán Obregón, Jefe Adjunto del Área de Sistemas, Redes, Explotación y CAU, EPICSA
- Antonio García Vázquez, Gerente, EPICSA
- Guillermo Peña Mújica, Director Técnico, EPICSA
Resumen
Sistema orientado al mantenimiento 24×7 de los servicios públicos digitales que la Diputación de Cádiz ofrece al conjunto de la sociedad a través de su empresa instrumental EPICSA. Está desarrollado con tecnologías open source y es reutilizable por parte de otras instituciones.
Palabras clave
Servicios Digitales, Disponibilidad, 24×7, Monitorización, Seguridad, Ciberseguridad, Territorios Inteligentes, Zabbix, Open Source, Transformación Digital
Hacia la Transformación Digital
La Diputación Provincial de Cádiz, tiene delegada sus funciones y servicios de tecnología de la información y comunicación en la empresa pública EPICSA, la cual, le gestiona, asesora, proporciona y mantiene todos los servicios informáticos, tanto internos de la propia corporación, como los externos (orientados a la ciudadanía), así como a los ayuntamientos y otras entidades de la provincia.
EPICSA centra su actividad en garantizar el funcionamiento de las redes de datos y de las aplicaciones corporativas en el ámbito de su competencia, a nivel provincial, para lo cual desarrolla acciones para la adaptación de nuestros servicios a estas actividades.
La Diputación de Cádiz está inmersa en un Plan de Transformación Digital, y con ello, los servicios al ciudadano, tanto en la Diputación como en los Ayuntamientos de la Provincia, se irán convirtiendo en Servicios Digitales a los Ciudadanos. En estos momentos, se cuenta con un gran número de trámites que se ofrecen de manera digital, tanto para la ciudadanía como para la propia corporación y los ayuntamientos.
Consecuencia de esta diversidad de servicios, es que no sea suficiente el personal técnico y administradores para cubrir los servicios ofrecidos, teniéndose así que plantear algún método para poder tener centralizado y localizado todos los servicios que son ofrecidos por dicha empresa, pues éstos deben de estar cubiertos 24 horas, 365 días al año. La disponibilidad es uno de los requisitos indispensables para lograr la Transformación Digital, y es imprescindible para el cumplimiento del Esquema Nacional de Seguridad, que establece en su Guía de Implantación: “la necesidad de que la información y los sistemas se encuentren activos para la prestación de los servicios. Éste corresponde, por lo tanto, a uno de los pilares fundamentales cuyo objetivo es garantizar el objetivo estipulado para la Administración pública: ofrecer un servicio. Ante determinadas adversidades, deberán darse condiciones para que este servicio pueda seguir ofreciéndose y, evidentemente, las medidas serán más amplias y necesarias según aumente en criticidad el servicio prestado.”
Hasta ahora se tenía conocimiento de que los servicios estaban caídos cuando los usuarios iban a hacer uso de ellos, por tanto existe la necesidad de anticiparnos. Era el objetivo de este trabajo. Conseguir una herramienta, basada en software libre, que monitorizara todos los servicios, y mediante el envío de alertas vía SMS o email se informara a los técnicos. Además, en las franjas horarias en las que no hay servicio presencial, esta herramienta, debería, una vez detectado el fallo o caída, intentar el reinicio de los servicios, excepto, claro está, en los casos donde el fallo o caída se haya producido por un error físico ajeno al propio software que soporta el servicio (caso de errores de hardware).
Arquitectura global
La arquitectura global de la Red Corporativa Provincial de telecomunicaciones de la Diputación Provincial de Cádiz es la siguiente:
Servicios
EPICSA ofrece un amplio catálogo de servicios y productos destinados a atender las necesidades de ciudadanía, empresas, otras entidades, así como las necesidades de gestión de la Diputación Provincial, sus organismos y entidades dependientes, y los ayuntamientos de la provincia.
A modo de listado reflejamos los principales productos con los que cuenta para la administración electrónica para el ciudadano.
Sede Electrónica
Gestión de trámites electrónicos y oficina Virtual. Facilita el acceso por medios electrónicos de los ciudadanos a la información y trámites administrativos, a cualquier hora durante todos los días del año, teniendo la misma validez que si se efectúan de forma presencial.
Notificaciones Electrónica
Gestión de notificaciones de forma electrónica a los ciudadanos.
Decretos
La aplicación gestiona de manera telemática e integral la tramitación de Decretos, Notificaciones, Traslados, Certificados y la documentación relacionada, así como de la elaboración y remisión de extractos, y la composición automática del libro de Decretos.
Perfil del Contratante
Gestión de publicaciones en el perfil de contratante. Gestión de publicaciones de licitaciones realizadas por una entidad en el perfil de contratante.
Port@firmas
Permite la firma electrónica de documentos conforme a la actual legislación. A su vez, necesita emplear los Servicios Webs de @firma.
Registro
Permite el registro de documentos y expedientes electrónicos de la Diputación Provincial de Cádiz.
Subsede del SPRYGT
Gestión de trámites electrónicos del Servicio Provincial de recaudación y gestión tributaria. Facilita el acceso por medios electrónicos de los ciudadanos a la información y trámites administrativos, a cualquier hora durante todos los días del año, teniendo la misma validez que si se efectúan de forma presencial.
Requisitos iniciales
Para llevar a cabo el objetivo de mantener los servicios públicos digitales de la Diputación de Cádiz las 24 horas del día y los 365 días del año, se identificaron los siguientes requisitos:
- R-01: Se ha de disponer de un equipo con altas prestaciones para monitorizar
- R-02: El sistema ha de funcionar 24/7
- R-03: Es necesario tener monitorizado todos los servidores con las siguientes características: Memoria total, Memoria Libre, Espacio total en /, Espacio usado / en %, Espacio Libre / en %, Espacio total de swap, Espacio libre de swap, Carga del procesador, Número de procesos ejecutándose, Estado del equipo, Tiempo equipo en corriendo
- R-04: Tenemos que tener monitorizados los siguientes servicios según corresponda con el servidor: Apache, PoolOffice, Dsmcad
- R-05: Monitorización de los contenedores web de la administración electrónica
- R-06: Debe alertar del estado de los siguientes estados: Tengamos menos del 10 % libre en la /, Tengamos menos del 5% libre en la /, Tengamos poca memoria disponible, Avisar si el equipo no está disponible, Carga de CPU alta, Apache no esté disponible, PollOffice no esté disponible, Dsmcad no esté disponible, Contenedor web no esté disponible
- R-07: Debe poder Definir el nivel de importancia de las alertas
- R-08: Informar de los eventos a la personas adecuadas a través de e-mail
- R-09: Capacidad de levantar servicios remotos automáticamente
- R-10: Debe permitir flexión horaria para la ejecución remota
Alcance
Este proyecto se aplica a la definición e implementación de un sistema de monitorización y alertas temprana de la Diputación Provincial de Cádiz para la administración electrónica del ciudadano. Se incluye lo siguiente:
- Estudio de los servidores a monitorizar en la Diputación Provincial de Cádiz
- Especificación de los elementos a monitorizar
- Especificación de alertas del sistema y nivel asignado
- Especificación de método de aviso de estado de una alerta
- Estudio teórico sobre los distintos métodos de monitorización
- Análisis de distintas herramientas de monitorización
- Descripción de las soluciones propuestas
- Guía de instalación y configuración del software utilizado en el gestor
- Guía de instalación y configuración del software utilizado en los clientes
Descripción de la solución propuesta
Tras el estudio de varias alternativas consideradas para la realización del proyecto se ha decidido utilizar la herramienta ZABBIX con licencia GPL, siendo la que mejor se adapta a los requisitos identificados por EPICSA.
Se requiere el seguimiento de unos pasos para el correcto funcionamiento del programa de monitorización, tanto en los medios a monitorizar, como para el funcionamiento del propio servidor. Se precia preparar un sistema operativo con los requisitos que conlleva ZABBIX.
La instalación del servidor gestor se va realizar bajo Ubuntu, php, Mysql y ZABBIX.
Actualmente, el servicio de administración electrónica para el ciudadano consta de 17 servidores Linux, en los cuales tendremos que instalar los agentes zabbix para obtener la información de lo que queremos controlar.
Estructura de ZABBIX y su organización
La estructura de ZABBIX cuenta con una serie de elementos que se definen a continuación.
- Monitor: estado actual de un servicio
- Escenario Web: Está contemplado como un monitor que no necesita agente y obtiene resultados del acceso a una web.
- Iniciador: Evento que se realiza cuando un monitor llega a un estado determinado.
- Gravedad de iniciador: Nivel de la alerta que puede ser Sin clasificar, informativa, advertencia, media, alta y crítica.
- Equipos: Servidores que vamos a monitorizar.
- Plantilla: Conjunto de monitores e iniciadores que son comunes para varios equipos.
- Acción: Regla para realizar un envió de alertas a través de correo o la ejecución de una orden para auto iniciar una aplicación
- Gráficos: Representación de los datos obtenidos a través de los monitores.
- Mapas: Elementos de navegación sobre la herramienta zabbix para ver más intuitivamente los estados de los servidores
La organización y estructura del ZABBIX presenta una relación entre sus elementos, la cual se puede observar en la ilustración.
Como descripción de la puesta en marcha del proyecto, se enumera a continuación las acciones a realizar:
- Se ha creado una plantilla en común llamada Plantilla Linux Producción para todos los servidores con los siguientes datos:
- Monitores:
- Memoria total, Memoria Libre, Espacio total en /, Espacio usado / en %, Espacio Libre / en %, Espacio total de swap, Espacio libre de swap, Carga del procesador, Numero de procesos ejecutándose, Estado del equipo, Tiempo equipo en corriendo.
- Iniciadores:
- Tengamos menos del 10 % libre en la /, Tengamos menos del 5% libre en la /, Tengamos poca memoria disponible, Avisar si el equipo no está disponible, Carga de CPU alta.
- Monitores:
- Se han creado 3 plantillas más, que no necesariamente tiene que estar en todos los equipo que estamos monitorizando, sino en los que realizan ese servicio.
- Plantilla Linux DSMCAD controlamos el sistema de copias del servidor a través del servicio de gestor de copias Tivoli y lo que queremos obtener es el estado en que se encuentra si está activo o no la plantilla se activará a todos los servidores.
- Plantilla Linux POOL OFFICE controlamos el estado en el que se encuentra el servicio indicándonos si está activo o no
- Plantilla Linux APACHE controlamos el estado en el que se encuentra el servicio indicándonos si está activo o no
- Se crearán monitores exclusivos de cada servidor, que en estos casos serán escenarios web que comprueban el estado del servicio. Se presentan los siguientes:
- Servidor de intranet, Servidor de la sede, Servidor Web corporativa, Servidor oficina virtual y procesos batch, Servidor oficina virtual, Servidor Alfresco, Servidor 1 Registro E/S, Servidor 2 Registro E/S, Servidor Subsede SPRYGT, Servidor Decretos y Portafirmas, Servidor web contratación y perfil del contratante, Servidor de Tramitación de la Diputación de Cádiz, Servidor Notificaciones Electrónicas.
En los iniciadores de los monitores web no sólo comprobamos el estado de un monitor en un momento dado, pues nos podría proporcionar falsos positivos, por lo cual para que un iniciador web salte, únicamente lo hará, si solo si, los últimos 3 datos recogidos no tiene el valor correcto, que para algunos casos este iniciador no excederá más de 15 minutos.
- Se procederá a realizar las acciones para cuando un servicio esté parado o tome un valor no esperado.
Para ello realizaremos una acción que contemple al grupo de administración electrónica, que si algún iniciador se activa independientemente de su gravedad nos enviará un correo electrónico al administrador de sistemas.
Una vez realizada la acción de alerta por correo, vamos a realizar la acción de ejecución de auto inicio de un servicio. Para apache, dsmcad o poolOffice solo necesitaríamos realizar una acción por cada plantilla, pero en el caso los escenarios web, tendríamos que realizar una acción por cada contenedor web que esté activo, pues cada uno ejecuta un Tomcat distinto.
Tenemos que tener en cuenta que solo queremos que se inicie el script cuando el personal técnico se encuentre fuera de la jornada laboral. El horario de inicio automático sería:
- Lunes a viernes 15:00 a las 7:00 del día siguiente
- Sábados y domingos completos hasta las 7:00 del lunes
Así quedaría representada la acción desarrollada anteriormente para el restablecimiento del servicio de Viafirma.
Esquema
Conclusiones
Como ya se ha dicho anteriormente, el Esquema Nacional de Seguridad, hace hincapié en la disponibilidad de los servicios como uno de los pilares básicos para su cumplimiento. A través de este sistema se garantiza los servicios 24×7 usando para ello estándares y tecnologías de código abierto, lo que hace posible su reutilización por otros organismos o entidades públicas que deban garantizar sus servicios digitales. Es una herramienta, que en la Diputación de Cádiz nos está ayudando a cumplir con nuestros objetivos de Transformación Digital y asegurar la disponibilidad de los servicios ofrecidos a ciudadanos y entidades.