El patrón de servidor inmutable es una disciplina de implementación que favorece la reproducibilidad de las implementaciones. Se caracteriza por el hecho de que " un servidor que una vez implementado, nunca se modifica, simplemente se reemplaza con una nueva instancia actualizada " y la implementación de esta disciplina requiere una automatización de la implementación del servidor. Esta automatización tiene numerosas ventajas operativas, una de las más importantes es permitir el reemplazo rápido y confiable de instancias con fallas en una infraestructura. Esta automatización también implica que la implementación del servidor se describe mediante artefactos de software versionados y está sujeta a mejoras iterativas.
Un aspecto popular de las implementaciones de esta disciplina es la eliminación de los métodos de acceso remoto al servidor una vez que se ha lanzado (especialmente la eliminación del acceso SSH). Eliminar el acceso remoto es una manera fácil de garantizar que la configuración del servidor coincida con la configuración preparada por la automatización de la implementación.
Sin embargo, cuando se investigan las causas de una falla de software en una autopsia , confiar en un monitoreo estructurado no siempre es suficiente y podría ser necesario el acceso remoto a la máquina. Es una situación práctica común que la supervisión del servidor no cubre todas las fuentes de fallas, o que la supervisión puede verse afectada por la falla del servidor en sí, lo que probablemente sería el caso si el servidor se queda sin memoria o alcanza su límite de proceso.
¿Cómo implementar el patrón de servidor inmutable sin perder la capacidad de hacer autopsias?