El tema de DevOps e IaC es muy popular y se desarrolla rápidamente. Sin embargo, la mayoría de los autores abordan estrictamente problemas técnicos en este camino. Yo describiré los problemas que caracterizan a una gran empresa. No tengo soluciones; los problemas son, en general, fatales y están en el ámbito de la burocracia, la auditoría y las 'soft skills'.

Como el título del artículo es así, el gato será Daenerys, que se ha pasado al lado de Enterprise
Sin duda, ahora está ocurriendo un choque entre lo viejo y lo nuevo. Y a menudo en estos conflictos no hay ni culpables ni inocentes. Así es como suceden las cosas. Pero, para no ser vago, comenzaremos con esta pantalla:

Este es el llamado Change Request. Ustedes ven aproximadamente un tercio de los campos que deben ser llenados a partir de diversas bases de datos, los otros campos se encuentran en otras pestañas. Este documento debe completarse para aplicar un script en producción servidor, o cargar nuevos archivos y, en general, cambiar algo.
La cantidad de campos es tal que escribí mi pequeña automatización para llenar estos campos. Además, esta página está diseñada de tal manera que ninguna herramienta de automatización puede ver sus campos, y la única solución posible fue usar AutoIt para simplemente hacer clic con el mouse en coordenadas. Evalúen el grado de desesperación que se necesita para atreverse a hacer eso:

Así que, ustedes toman jenkins, chef, terraform, nexus y demás, y alegremente los despliegan en su entorno de desarrollo. Pero llega el momento de enviar esto a QA, UAT y PROD. Tienen el artefacto de Nexus y reciben un correo del DBA con un mensaje similar al siguiente:
Estimado,
En primer lugar, su nexus tiene acceso que yo no tengo a su Nexus
En segundo lugar, todos los cambios deben formalizarse como un Change Request.
Los scripts SQL deben extraerse de su Nexus y adjuntarse al Change Request.
Si el cambio no es una Emergencia, debe hacerse dentro de los 7 días posteriores al lanzamiento (exclusivamente en el fin de semana)
Cuando su Change Request sea aprobado por un montón de personas, el DBA ejecutará su script e incluso enviará por correo una captura de pantalla del resultado.Atentamente, su DBA que ha estado aquí desde la época de los mainframes.
¿Saben a qué me recuerda esto? A una semi-automatización: un robot sostiene la base y un trabajador la golpea con un martillo. De verdad, ¿cuál es el sentido de este Nexus si luego todo se hace completamente a mano?
¡Pero no deberíamos culpar a Enterprise por esto! Claro, es sanguinario, pero toda esta burocracia con las Solicitudes de Cambio es forzada y proviene de los auditores. Enterprise tiene que operar así, y punto. No puede hacerlo de otra manera. Y la auditoría es algo muy conservador. ¿Cuántas veces se ha hablado, por ejemplo, que las contraseñas largas, pseudo-complejas y a menudo cambiantes son malas? Pero los enterprises serán el último lugar donde esto cambie. Lo mismo va para los despliegues y todo lo demás.
Por cierto, en su momento intenté crear un archivo para terraform, pero no lo logré. Me encontré con el valor de la etiqueta 'Código de Facturación de Contabilidad del Proyecto', que no pude averiguar, me faltaron habilidades interpersonales.
Ni siquiera menciono el tema del ludismo pasivo: Oh, su automatización amenaza mi seguridad laboral, no quiero aprender nada nuevo, así que sabotearé en silencio.
¿Y cuál puede ser la solución en principio? El API de ITSM es extremadamente primitivo para generar documentos automáticamente. Y en general, la mayoría de estos sistemas proviene de la era de los mainframes. ¿Alguien conoce realmente sistemas modernos de ITSM? ¿Alguien tiene experiencia exitosa integrando DevOps modernos con burocracia? No se trata, por supuesto, de sitios puramente comerciales, donde realmente puede haber despliegues cada día, sino, por ejemplo, del sector bancario, que está bajo auditorías y con un fuerte aislamiento en ambientes superiores.
Pero no olviden que todas sus fantasías están limitadas por la auditoría. Y eso lo cambia todo. ¡Los espero en los comentarios!
Fuente: habr.com
