Blog de Amazon Web Services (AWS)
Gobierno de Jujuy implementó el sistema de gestión documental electrónica (GDE) en AWS en 8 semanas
Por Nelson Yugra, Director de Servicios Informáticos en la Secretaría de Innovación Pública del Gobierno de Jujuy; Verónica Adriana Tejerina, Analista Funcional en la Dirección de Servicios Informáticos, Secretaría de Innovación Pública del Gobierno de Jujuy; Cristian Osvaldo Gómez, Analista Funcional en la Dirección de Servicios Informáticos, Secretaría de Innovación Pública del Gobierno de Jujuy; Guillermo Jordán, Sr. Cloud Infrastructure Architect en el equipo de ProServe de AWS; Juan Manuel González, Sr. Security Consultant en el equipo de ProServe de AWS; Alexis Winer, Sr. Cloud Advisory Consultant en el equipo de ProServe de AWS y Leandro Santi, Arquitecto de Soluciones para el Sector Público en AWS.
El sistema GDE (Gestión Documental Electrónica) es una aplicación provista por el gobierno nacional de Argentina orientada a digitalizar procesos administrativos, permitiendo la integración y simplificación de trámites, vinculación de expedientes y firma digital. Actualmente es usado por diversos organismos administrativos del país, incluyendo ministerios, universidades, empresas y agencias gubernamentales.
GDE facilita el seguimiento de actuaciones y expedientes del Sector Público a lo largo de su ciclo de vida. Los beneficios directos residen en la reducción de los tiempos de gestión del ciudadano y el impacto ambiental derivado de la eliminación del papel y reducción de emisiones de carbono asociadas al traslado físico de los documentos.
Esta iniciativa constituye un componente clave del Programa de Transformación Digital impulsado desde la Provincia a partir del mes de abril de 2023. Previamente (hasta 2022) el Gobierno de Jujuy intentó utilizar el sistema GDE siguiendo un enfoque tradicional (on-premises), pero la defectuosa experiencia de usuario limitó su adopción y redobló la resistencia al cambio de paradigma en los equipos.
Al crearse el Ministerio de Planificación Estratégica y Modernización se decidió implementar GDE íntegramente en la nube de AWS para incrementar la eficiencia del sistema y mejorar la experiencia de de los 3.000 usuarios iniciales y escalar a un objetivo de más de 10.000 comprendido entre poder ejecutivo, organismos descentralizados y sociedades del estado.
En este blog te invitamos a revisar los diferentes desafíos, enfoques, y principales beneficios que brinda esta solución.
Desafíos de escalabilidad y elasticidad
La implementación original de GDE se realizó con infraestructura tradicional (on-premises). Al poco tiempo, con apenas 5 módulos operativos de los 15 que componen el sistema y unos 3.200 usuarios habilitados (debajo del 30% de la meta trazada por la Provincia de Jujuy), el equipo de operaciones comenzó a observar frecuentes colapsos en la plataforma.
Esto representó un riesgo para los objetivos del programa, debido a potenciales demoras que introducirían la adquisición, importación e instrumentación de nuevos equipos en el centro de datos para potenciar el sistema.
En la figura 1 se observa un diagrama que representa la cantidad de usuarios conectados a la plataforma GDE a lo largo del día. Podemos ver que la gestión de expedientes posee un pico de usuarios concurrentes alrededor del mediodía; sin embargo, la cantidad de usuarios (y por ende la demanda computacional) decrece al alejarnos de esa hora pico.
Abordar una dinámica de este tipo con un enfoque tradicional de adquisición de hardware y licencias por adelantado implica adquirir una cantidad desproporcionada de componentes y/o comprometer la experiencia de usuario:
- Si se incorporase suficiente cantidad de equipamiento adicional (capacidad estática) para poder soportar el pico de actividad (indicado con la línea de puntos en la figura 1), estaríamos desperdiciando alrededor del 75% de los recursos. Es decir, se traduciría en un mayor riesgo financiero para el programa de transformación digital.
- Por otro lado, si la cantidad de hardware y licencias fuese menor, el sistema podría colapsar durante los períodos de mayor actividad debido a la falta de estos recursos que se necesitan para satisfacer el pico de demanda. Aquí el riesgo radica en el impacto en la experiencia de usuario, que impide la correcta gestión de los expedientes digitales.
El Gobierno de Jujuy decidió encarar el problema de una manera más austera, sostenible e innovadora. Para ello, confió en AWS ProServe para re-arquitectar la solución, llevándola rápidamente a la nube de AWS para resolver estos desafíos.
Arquitectura de referencia para GDE en AWS
En la figura 2 podemos ver la arquitectura de referencia para el sistema de gestión de expedientes electrónicos implementado en la nube de AWS:
Esta solución fue diseñada e implementada en tres capas con arquitectura redundante, en la cual todos los componentes de la misma se encuentran desplegados en dos o más grupos de centros de datos o Availability Zones (AZs) suficientemente separados entre sí para prevenir fallas correlacionadas. Típicamente la separación mutua entre AZs es de alrededor de 100 km. Asimismo las regiones se diseñan de tal manera que la latencia media entre AZs sea menor a 10 milisegundos para permitir esquemas sincrónicos de replicación de datos. A este esquema de diseño para alta disponibilidad, confiabilidad y performance lo denominamos multi-AZ.
La primera capa está compuesta por el servicio de balanceador de carga o application load balancer, que permite distribuir las solicitudes que ingresan para la aplicación entre los servidores que componen la capa de procesamiento y, al mismo tiempo, incrementa su seguridad gracias a que incorpora la capacidad de terminación de las sesiones Transport Layer Security (TLS) del navegador. Este componente altamente escalable reemplazó al HAProxy, componente de la solución original que al correr en un servidor individual constituía un único punto de falla.
La segunda capa consta de una granja de servidores donde corren los diferentes módulos que componen la aplicación. Como puede verse en la figura 2, estas máquinas virtuales se encuentran alojadas en segmentos de red privados y dedicados para lograr un máximo nivel de aislación entre los componentes de la arquitectura. La solución cuenta con grupos de escalamiento automático o auto-scaling groups para ajustar dinámicamente la cantidad de servidores de cada módulo según la demanda. Con esto se logra un uso más eficiente de los recursos, escalando en hora pico, y minimizando el consumo.
La tercera capa de la arquitectura está orientada a los datos y también cuenta con segmentos de red aislados y dedicados. La base de datos Oracle, originalmente en su versión Enterprise 12c, se re-implementó con Amazon RDS for Oracle, un servicio completamente administrado que facilita la implementación, operación y escalamiento de bases de datos basadas en tecnología Oracle.
Amazon RDS permite al usuario enfocarse en el desarrollo de la aplicación y los procesos de innovación, automatizando completamente tareas administrativas que tradicionalmente se hacen de forma manual como, por ejemplo, la instrumentación del motor de base de datos, backups, instalación de parches, monitoreo y escalamiento del hardware.
El análisis realizado por el equipo de ProServe reveló que la aplicación GDE no dependía de funcionalidades de Oracle específicas a la versión Enterprise de la base de datos, por lo cual se implementó la versión Standard Edition 2 (SE2) – con el consecuente ahorro en licenciamiento.
En esta instancia también se actualizó el motor de Oracle a la versión 19c. Esto permitió mantener a la base de datos dentro de una versión soportada por el fabricante, con el beneficio adicional de contar con un único punto de contacto para canalizar todas las solicitudes de soporte.
Por último, es importante aclarar que todos los componentes de esta arquitectura, incluyendo la base de datos y las suscripciones a Oracle son provistos por AWS para simplificar el proceso de adquisición, facturación y pago de los servicios de tecnología.
Implementación ágil de un ambiente nuevo de GDE
El equipo de servicios profesionales de AWS desarrolló una serie de automatizaciones para los diferentes ambientes donde corre la aplicación. Gracias a esto el Gobierno de Jujuy ahora cuenta con capacidad para desplegar nuevos entornos automáticamente.
Por ejemplo, se pueden crear instancias temporarias de la aplicación para capacitación o laboratorio y descartarlas al final. Así, se consumen recursos solamente por el tiempo utilizado, llevando a una menor barrera de entrada y menores riesgos – condiciones necesarias agilizar procesos de experimentación.
Para desarrollar estas automatizaciones se usó Cloud Development Kit (CDK), una biblioteca de desarrollo de software de código abierto para definir infraestructura como código usando lenguajes de programación modernos como por ejemplo Python.
CDK permite describir una arquitectura como la de la figura 2 mediante código. Por ejemplo, se pueden definir las características de la base de datos, plano de aplicaciones (incluyendo el software de los diferentes módulos que componen GDE), arquitectura de redes, balanceador, etc. CDK se encarga de sintetizar automáticamente el código en una serie de plantillas o templates de CloudFormation que pueden ser ejecutados desde la línea de comandos, o incluso integrarlos con herramientas de integración y deployment continuo (pipelines).
En la figura 3 podemos ver un ejemplo de creación de un ambiente GDE de laboratorio que el equipo de operaciones desplegó para realizar pruebas de configuración. En este caso, observamos que el proceso demoró 7.606 segundos, es decir unas 2 horas y 7 minutos (aproximadamente) para implementar una arquitectura como la que se muestra en la figura 2.
Menor costo total operativo: esquema de consumo variable y pago por uso
La implementación original de GDE Jujuy comprendía una granja de 25 servidores que requerían su encendido y apagado en secuencia. Esto se realizaba en forma manual: por ejemplo iniciar el sistema demoraba hasta 4 horas para contar con la aplicación disponible para su uso.
La plataforma GDE en AWS cuenta con una serie de automatizaciones que permiten iniciar y detener los diferentes ambientes de GDE con facilidad. Para desarrollar estas automatizaciones el equipo de ProServe usó AWS Step Functions, una tecnología de orquestación de flujos de trabajo pensada para ejecutar procesos y microservicios en forma coordinada.
Estas automatizaciones permitieron simplificar el proceso disparando la tarea a través de un click, y al mismo tiempo acelerarlo, demorando unos 15 minutos en finalizar (reducción de tiempo de más de 10 veces).
Como veremos más abajo, combinar el elevado nivel de automatización de esta solución con el modelo de pago por uso y la escalabilidad de la nube habilita un aprovechamiento más eficiente de los recursos de la administración pública, con la consecuente mejora operativa.
En la figura 4 podemos ver el flujo de Step Functions usado para iniciar un ambiente GDE. Los diferentes pasos que componen este flujo están conectados a scripts en Python alojados en funciones Lambda de AWS que se encargan de realizar las tareas individuales que se pueden ver en la figura.
De la misma forma (aunque no se muestra en la figura 4), la solución cuenta con otro flujo (Detener-GDE) que permite apagar un ambiente en forma ordenada, y un tercer flujo que permite orquestar el reinicio de los módulos y servicios internos de la aplicación.
En la figura 5 podemos ver la consola de facturación de para el mes de junio de 2024 de uno de los ambientes de desarrollo de GDE Jujuy (ambiente bajo). Tomado como referencia de consumo para una solución tradicional (estática) la línea punteada, podemos ver que la reducción de consumo representa un 35% adicional, aproximadamente.
Avance de la adopción de GDE en el plan de digitalización de expedientes de la provincia
El despliegue inicial de GDE en AWS ocurrió entre los meses de julio y agosto de 2023. Durante este período, el equipo de IT de la Provincia junto a los especialistas de Servicios Profesionales de AWS migraron el sistema desde el centro provincial de datos a partir de las imágenes de los servidores físicos (sin cambios mayores en la arquitectura). El proceso demoró 8 semanas.
Una vez que los ambientes fueron clonados a AWS, los equipos se abocaron a la modernización del sistema en línea con la arquitectura de referencia de la figura 2. Sobre la base de esta plataforma optimizada para correr más eficientemente en la nube de AWS en enero de 2024 comenzó la implementación del sistema para todo el Gobierno de la Provincia de Jujuy y municipios que adhieren a la modernización provincial.
Actualmente el grado de avance es próximo a 90%. El despliegue involucró por parte de la provincia la sensibilización acerca del nuevo paradigma en cada organismo; el armado de una red de administradores locales; un proceso de capacitación y entrenamiento adaptado a cada caso y con diversas estrategias formativas; monitoreo individual de los organismos participantes, y acompañamiento en el camino hacia la despapelización. Dicha fase está casi finalizada, según se muestra en la figura 6.
El 18 de septiembre de 2024 se cumplió el primer aniversario de GDE en la nube. ¡Qué mejor que un pastel de cumpleaños para celebrar la ocasión con el equipo! Innovar continuamente en nombre de los Jujeños puede ser un trabajo duro, pero también divertido y grato: el equipo de Amazon Web Services Argentina los felicita por hacer historia a lo grande.
Conclusiones
En este blog pudimos revisar en detalle el camino recorrido por el equipo de tecnología del Gobierno de Jujuy para implementar GDE, como así también los principales desafíos, enfoques, y beneficios que brinda esta solución al ser re-arquitectada para correr íntegramente en AWS.
El despliegue de GDE en AWS permite instrumentar un esquema redundante con mayores prestaciones de resiliencia, disponibilidad, y performance, gracias a una arquitectura multi-AZ para aprovechar mejor el esquema de regiones globales de AWS.
El elevado nivel de automatización que posee la solución de GDE en AWS permite imprimir mayor agilidad en el proceso de experimentación e innovación para la gestión de expedientes. Gracias a ello, el Gobierno de Jujuy puede desplegar nuevos ambientes de manera completamente automatizada en aproximadamente 2 horas y 7 minutos. Asimismo, se pueden iniciar y detener los ambientes en 15 minutos – una reducción de más de 10 veces si se la compara con las 4 horas que demoraba originalmente este proceso.
El modelo de consumo variable y pago por uso de AWS genera oportunidades para optimizar el uso de los recursos de la administración provincial. Como pudimos ver en el artículo, la dinámica de gestión de expedientes posee un ciclo de uso altamente concentrado. Implementar GDE con una arquitectura elástica permite reducir el costo total operativo (TCO) de la solución y ahorrar en recursos computacionales como procesamiento, memoria y licenciamiento de componentes si se la compara con una implementación tradicional. Lo cual redunda en eficiencia y austeridad gubernamental.
Próximos pasos
A punto de finalizar la primera etapa del despliegue, el equipo conjunto de la provincia y AWS se encuentran trabajando en extender las capacidades de gestión de expedientes digitales en torno a tres iniciativas:
- Nuevas funcionalidades como el Registro Civil Electrónico (RCE), que permitirá generar la documentación del ciudadano digitalmente (partidas de nacimiento, defunción, divorcios, etc.); y Trámites a Distancia (TAD), módulo de cara al ciudadano que permitirá iniciar gestiones desde el portal de trámites unificados (tu.Jujuy), los cuales podrán fluir en forma digital hacia el backoffice de la gestión estatal, completando el circuito.
- Mejoras operativas y automatizaciones para operación de tecnología que permitirán al equipo de colaboradores enfocarse mejor en los clientes internos y reducir el tiempo dedicado a tareas que no generen valor agregado.
- La provincia está desarrollando acuerdos con organismos para facilitar la adopción de soluciones digitales como GDE, continuar su camino hacia la despapelización e incrementar la interoperabilidad digital entre los distintos niveles de la administración.
Sobre los autores
Nelson Yugra es Director de Servicios Informáticos en la Secretaría de Innovación Pública del Gobierno de Jujuy. | |
Verónica Adriana Tejerina es Analista Funcional en la Dirección de Servicios Informáticos, Secretaría de Innovación Pública del Gobierno de Jujuy. | |
Cristian Osvaldo Gómez es Analista Funcional en la Dirección de Servicios Informáticos, Secretaría de Innovación Pública del Gobierno de Jujuy. | |
Guillermo Jordán es Sr. Cloud Infrastructure Architect en el equipo de ProServe de AWS. | |
Juan Manuel González es Sr. Security Consultant en el equipo de ProServe de AWS. | |
Alexis Winer es Sr. Cloud Advisory Consultant en el equipo de ProServe de AWS. | |
Leandro Santi es Arquitecto de Soluciones para el Sector Público en AWS. |