Chapter 1
División de responsabilidades
División de responsabilidades
Tip
El área de Infraestructura AMX es responsable del estado de salud y correcto funcionamiento de los servidores que se encuentran bajo su cargo, reservándose las tareas de administración sobre estos.
Es por ello que se cuenta con un acceso controlado de usuarios a los diferentes servicios albergados en las máquinas virtuales encomendadas al área. Dichos servicios se exponen a través de dominios protegidos con certificados, y son monitoreados a petición y bajo priorización del cliente.
Ambientes
Los ambientes son entornos controlados y configurados para distintas fases del ciclo de vida del desarrollo de software. Cada ambiente cumple una función específica, desde el desarrollo inicial hasta la producción final, asegurando la calidad y estabilidad del software a medida que avanza de cara al cliente.
Desarrollo (Dev)
Desarrollo
Cambios continuos
Sin Monitoreo
El ambiente de Desarrollo (Dev) es el espacio dedicado a que los desarrolladores puedan crear, implementar y probar nuevas funcionalidades de manera libre y sin restricciones significativas. Es un entorno en constante cambio.
Aunque no se monitorean de manera exhaustiva los artefactos que corren sobre este ambiente, se reconoce la importancia de su funcionamiento continuo. Una disrupción en el ambiente de desarrollo puede causar demoras significativas en el progreso de los proyectos.
Los permisos hacia el equipo de desarrollo son amplios y flexibles que les permiten implementar, modificar y depurar código. Pueden realizar cualquier cambio necesario para desarrollar y probar sus funcionalidades, siempre y cuando se adhieran a buenas prácticas, como evitar cambios manuales que no sean reproducibles. Esto asegura que los desarrollos puedan ser replicados y mantenidos en otros ambientes.
Calidad (QA)
QA
Cambios controlados
Sin Monitoreo
El ambiente de Calidad (QA) se utiliza para realizar pruebas exhaustivas de las funcionalidades desarrolladas. Aquí, los testers evalúan el desempeño, seguridad, y cumplimiento de requisitos de las aplicaciones antes de que pasen a producción. Este entorno replica las condiciones de producción lo más fielmente posible para asegurar que las pruebas sean representativas.
Las pruebas incluyen, pero no se limitan a:
- Pruebas unitarias.
- Pruebas de integración.
- Pruebas de rendimiento.
- Pruebas de seguridad.
Los cambios en este ambiente están restringidos al equipo de QA y a los desarrolladores, quienes deben seguir procedimientos estrictos para implementar nuevas versiones.
Pre-producción (Preprod/Release/UAT)
Pre-producción
Cambios controlados
Monitoreo APM
El ambiente de Pre-producción (Preprod/Release) sirve como un paso intermedio entre QA y Producción. Aquí se realizan pruebas finales y verificaciones antes de que cualquier cambio sea llevado a producción. Este entorno es prácticamente idéntico al de producción y se utiliza para realizar pruebas de aceptación de usuario (UAT).
Preproducción está conectado exactamente a los mismos servicios y las mismas fuentes de datos que el ambiente de Producción. La única diferencia son los cambios en servicios que no están de cara al cliente final. En este ambiente se validan:
- La integración final de todos los componentes.
- La estabilidad del sistema bajo condiciones de producción.
- La preparación para el lanzamiento.
Sandbox
Sandbox
Cambios por RfC
Sin monitoreo
El ambiente Sandbox es una réplica del ambiente de producción utilizado para evaluación de equipos terceros. Los clientes pueden probar el uso e integración sin afectar datos de producción. Se busca resguardar la consistencia de funcionalidades con relación a producción.
Este ambiente es ideal para:
- Probar nuevas versiones de software.
- Evaluar nuevas herramientas o tecnologías.
- Experimentar con configuraciones avanzadas.
Producción (Prod)
Producción
Cambios por RfC
Monitoreo APM/Sintético
El ambiente de Producción (Prod) es donde las aplicaciones y servicios están disponibles para los usuarios finales. Este entorno requiere la mayor estabilidad, seguridad y rendimiento. Todas las funcionalidades deben estar completamente validadas y probadas antes de ser desplegadas aquí.
En este ambiente se deben seguir procedimientos estrictos de:
- Gestión de cambios.
- Monitoreo y alertas.
- Seguridad y cumplimiento normativo.
El acceso a este ambiente está altamente restringido y controlado para minimizar riesgos y asegurar la continuidad del servicio.
Matriz de responsabilidades
| Actividades Generales |
Dev |
QA |
Preproducción/Release |
Producción/Sandbox |
| Comandos linux |
Lectura logs y curl |
Lectura logs y curl |
n/a |
n/a |
| Apagados y reinicios de servicios |
Ticket |
Ticket |
Ticket |
Ticket |
| Operaciones bash |
Ticket |
Ticket |
Ticket |
Ticket |
| Programación/ejecución de crones |
Ticket/CI |
Ticket/CI |
Ticket |
Ticket |
| Gestión de usuarios sobre S.O. |
Ticket |
Ticket |
Ticket |
Ticket |
| Operaciones sobre BD |
Usuario admin |
Usuario admin |
Usuario r/o sobre datos no sensibles |
Usuario r/o sobre datos no sensibles |
| Gitlab |
Permisos Maintainer |
n/a |
n/a |
n/a |
| Despliegues/bajas de aplicativos |
CI |
CI con botón de autorizar |
Solicitud vía CI |
Ticket |
| Edición de archivos de configuración |
Ticket |
Ticket |
Ticket |
Ticket |
| Edición de archivos war/php |
Usuario con permisos rw |
Usuario con permisos ro |
Ticket |
Ticket |
1.0.0