Desventajas de excelencia operativa

La excelencia operativa proporciona calidad de carga de trabajo a través de la implementación de estándares claros de equipo, responsabilidad y responsabilidad entendidas, atención a los resultados de los clientes y cohesión del equipo. La implementación de estos objetivos se basa en DevOps, que recomienda minimizar la varianza del proceso, reducir el error humano y, en última instancia, aumentar la rentabilidad del valor de la carga de trabajo. Ese valor no se mide solo con los requisitos funcionales que cumplen los componentes de la carga de trabajo. También se mide por el valor que el equipo ofrece para esforzarse por mejorar.

Durante la fase de diseño de una carga de trabajo y durante su ciclo de vida, a medida que se realizan pasos de mejora continua, es importante tener en cuenta cómo se toman las decisiones basadas en los principios de diseño de excelencia operativa y las recomendaciones de la lista de comprobación de revisión de diseño para la excelencia operativa pueden influir en los objetivos y optimizaciones de otros pilares. Algunas decisiones pueden beneficiarse de algunos pilares, pero constituyen inconvenientes para otros. En este artículo se describen los inconvenientes de ejemplo que un equipo de carga de trabajo podría encontrar al diseñar la arquitectura y las operaciones de la carga de trabajo.

Desventajas de excelencia operativa con confiabilidad

Equilibrio: mayor complejidad. La confiabilidad prioriza la simplicidad, ya que el diseño simple minimiza la configuración incorrecta y reduce las interacciones inesperadas.

  • Las estrategias de implementación seguras suelen requerir cierta cantidad de compatibilidad hacia delante y hacia atrás entre la lógica de la aplicación y los datos de la carga de trabajo. Esta complejidad adicional aumenta la carga de las pruebas y puede provocar complejidades o problemas de integridad con los datos de la carga de trabajo.

  • La infraestructura con capas, modulares o parametrizadas, ya que el código puede aumentar la posibilidad de una configuración incorrecta accidental debido a la complejidad de la interacción entre los componentes de código.

  • Los patrones de diseño en la nube que benefician a veces requieren la introducción de componentes adicionales, por ejemplo, el uso de un almacén de configuración externo o la coordinación de implementaciones sidecar en una plataforma de aplicaciones en contenedor. Los componentes adicionales aumentan los puntos de interacción en el sistema, aumentando el área expuesta para mal funcionamiento o configuración incorrecta.

  • Los componentes de carga de trabajo diseñados para evolucionar de forma independiente para admitir el desarrollo ágil y el hospedaje introducen dependencias en la detección de servicios, o incluso DNS como una capa de direccionamiento indirecto. La detección de servicios puede carecer de capacidad de respuesta para cambiar y el mal funcionamiento puede ser difícil de diagnosticar.

Equilibrio: aumento de las actividades potencialmente desestabilizadoras. El pilar Confiabilidad fomenta la prevención de actividades o opciones de diseño que pueden desestabilizar un sistema y provocar interrupciones, interrupciones o errores de funcionamiento.

  • La implementación de cambios pequeños e incrementales es una técnica para mitigar el riesgo, pero también se espera que esos pequeños cambios se entreguen a producción con más frecuencia. Las implementaciones pueden desestabilizar un sistema, a medida que aumenta la tasa de implementación, por lo que este riesgo lo hace.

  • Una referencia cultural que se mide a sí misma con métricas de velocidad como implementaciones por semana y usa la automatización que puede facilitar la introducción de cambios a un ritmo más rápido también es probable que realice más implementaciones en un período más corto.

  • El aumento de la densidad para simplificar las operaciones reduciendo el número de superficies de control y observabilidad también puede provocar un mayor riesgo de disponibilidad porque el mal funcionamiento o la configuración incorrecta aumenta el radio de impacto de un evento desestabilizador.

Desventajas de excelencia operativa con seguridad

Compensación: aumento del área expuesta. El pilar Seguridad recomienda un área expuesta de carga de trabajo reducida en términos de componentes y exposición a las operaciones. Esta reducción minimiza los vectores de ataque y genera un ámbito más pequeño para el control y las pruebas de seguridad.

  • Los componentes que rodean la carga de trabajo y admiten sus operaciones, como la automatización o un plano de control personalizado, también deben estar en el ámbito de la protección y las pruebas de seguridad normales.

  • Las operaciones rutinarias, ad hoc y de emergencia aumentan los puntos de contacto con la carga de trabajo. Un enfoque de confianza cero requiere que estos procesos se consideren vectores de ataque y deben incluirse en los controles de seguridad y la validación de la carga de trabajo.

  • La plataforma de observabilidad del sistema recopila registros y métricas sobre la carga de trabajo, que puede ser una valiosa fuente de divulgación de información. Por lo tanto, la seguridad de la carga de trabajo debe ampliarse para proteger los receptores de datos frente a amenazas internas y externas.

  • Los agentes de compilación, la configuración externa y los almacenes de alternancia de características y los enfoques de implementación en paralelo aumentan el área expuesta de la aplicación que requiere seguridad.

  • Una mayor frecuencia de implementación causada por pequeños cambios incrementales o por "obtener actual, mantenerse al día" da lugar a más pruebas de seguridad en el ciclo de vida de desarrollo de software.

Equilibrio: aumento del deseo de transparencia. Una carga de trabajo segura se basa en diseños que protegen la confidencialidad de los datos que fluyen a través de los componentes del sistema.

Las plataformas de observabilidad ingieren datos de todos los tipos para obtener información sobre el estado y el comportamiento de una carga de trabajo. A medida que los equipos intentan lograr una mayor fidelidad en los datos de observabilidad, existe un mayor riesgo de que los controles de clasificación de datos, como el enmascaramiento de datos, de los sistemas de origen no se extiendan a los registros y receptores de registros de la plataforma de observabilidad.

Compensación: segmentación reducida. Un enfoque de seguridad clave para aislar el acceso y la función es diseñar una estrategia de segmentación sólida. Este diseño se implementa a través del aislamiento de recursos y los controles de identidad.

  • La colocalización de componentes de aplicación dispares en recursos de proceso, red y datos compartidos para facilitar la administración invierte la segmentación o hace que la segmentación basada en roles sea más difícil de lograr. Los componentes ubicados conjuntamente también pueden necesitar compartir una identidad de carga de trabajo, lo que puede provocar una sobreasignación de permisos o una falta de rastreabilidad.

  • La recopilación de todos los registros del sistema en un receptor de registro unificado puede facilitar la consulta y la creación de alertas. Sin embargo, hacerlo también puede dificultar o imposible proporcionar seguridad basada en filas para tratar los datos confidenciales con los controles de auditoría necesarios.

  • Simplifique la administración de la seguridad basada en atributos o basada en roles al reducir la granularidad de los roles y sus asignaciones puede dar lugar a permisos inadecuados amplios.

Inconvenientes de excelencia operativa con optimización de costos

El pilar de excelencia operativa nunca recomienda actividades que reduzcan la productividad o pongan en peligro la rentabilidad de una carga de trabajo sobre la inversión. Las recomendaciones que parecen cambiar el foco de las actividades de entrega tienen en cuenta los mejores intereses a largo plazo para la carga de trabajo y el equipo. Si la carga de trabajo está cerca de su fecha de puesta de sol, probablemente no tenga sentido invertir muy en recomendaciones que desencadenen estos inconvenientes.

Compensación: aumento del gasto en recursos. Un factor de costo importante para una carga de trabajo es el costo de sus recursos. La implementación de menos recursos, el ajuste de tamaño correcto de los recursos y la reducción del consumo suelen ayudar a mantener los costos bajos.

  • La implementación de prácticas de implementación seguras, incluso si los cambios son relativamente pequeños, puede provocar un aumento en el número de recursos que se implementan simultáneamente. Estos patrones requieren la implementación de varias instancias simultáneas de la aplicación o el componente de infraestructura para que el tráfico se pueda desplazar de forma controlada. Este aumento se pronuncia más en una carga de trabajo que usa un enfoque de infraestructura inmutable.

  • Es posible que el equipo tenga que introducir componentes de carga de trabajo adicionales para implementar patrones de diseño en la nube alineados de forma operativa o automatización de cargas de trabajo. Por ejemplo, para admitir la agilidad de la implementación, podrían agregar un componente de enrutamiento de puerta de enlace. Para admitir una mejor administración de configuración, es posible que agreguen un almacén de configuración externo. Para admitir eventos de ciclo de vida de inquilinos, pueden crear un plano de control. Estos recursos también influyen en los costos de los entornos de preproducción.

  • Aumentar el número de entornos de preproducción para mejorar la experiencia de desarrollo y pruebas a través del aislamiento también aumenta el número de recursos. Estos recursos, que no se usan para entregar la oferta frente a la demanda de producción, aumentan el costo de la solución.

  • Aumentar la paridad de los entornos de preproducción con el entorno de producción, en términos de recuento de recursos, SKU y volúmenes de datos, mejora el proceso de control de calidad. El costo aumenta a medida que aumenta la paridad.

  • Aunque los datos de telemetría no son directamente un recurso, para permitir la eficacia de las plataformas de observabilidad, estos datos deben conservarse. La mayoría de los almacenes de datos operativos tienen precios basados en una combinación de tasas de ingesta y volumen. Por lo general, a medida que aumenta la cantidad de telemetría de baja latencia y alta diversidad, también aumentan los costos. En el caso de las implementaciones de varias regiones, se espera que estos receptores de datos operativos se implementen por región, por lo que los costos por recurso se convierten en un factor.

Compensación: se ha reducido el foco en las actividades de entrega. Los miembros del equipo de carga de trabajo ofrecen un mayor valor de carga de trabajo mediante la realización eficaz de tareas alineadas con sus funcionalidades.

  • Los equipos de carga de trabajo que dedican tiempo a crear y refinar una estructura de soporte técnico correcta y responsable y la respuesta a incidentes proporcionan un servicio valioso a los usuarios de la carga de trabajo. A medida que aumenta el esfuerzo de soporte técnico (por ejemplo, rotaciones formales en las llamadas), normalmente debido a un cambio en la importancia empresarial, aumentan los costos de estas actividades. Este aumento de costos puede ser el resultado de un aumento en el personal o puede incurrir indirectamente en forma de atención que se ha desplazado de las actividades de entrega a las funciones de apoyo.

  • El entrenamiento es una parte fundamental del proceso de mejora continua personal de un equipo de carga de trabajo. Este entrenamiento puede ser formal o autodirigida durante el tiempo de enriquecimiento personal. A medida que aumenta el tiempo de entrenamiento, la cantidad de tiempo disponible para el desarrollo directo de la carga de trabajo disminuye. La inversión en formación se reduce cuando el entrenamiento no está basado en roles o específicamente relevante para la carga de trabajo o su futuro.

  • Las tareas operativas rutinarias estandarizadas para proteger la confiabilidad, la seguridad y la eficiencia del rendimiento de una carga de trabajo tardan tiempo en definir, refinar y realizar. Este tiempo no se dedica directamente a la entrega. Algunos ejemplos de estas tareas son un análisis completo del impacto en los cambios, procesos de control de cambios, pruebas exhaustivas y una mayor administración de revisiones. A medida que aumenta la frecuencia, la integralidad o la carga operativa de estas tareas, el tiempo invertido también aumenta.

Compensación: aumento de las demandas de herramientas y la diversidad. El pilar optimización de costos recomienda la reducción de la expansión de herramientas, la consolidación de proveedores y un enfoque de tamaño adecuado para todas las compras de herramientas.

Un equipo de cargas de trabajo compra herramientas y hardware para admitir actividades que se realizan durante todo el ciclo de vida de desarrollo de software (SDLC), incluido el planeamiento y el diseño, el desarrollo y las pruebas y la supervisión. El marketplace para las herramientas en este espacio está creciendo. Las herramientas se ofrecen a varios puntos de precio que normalmente corresponden a las características y funcionalidades de las herramientas. Con la excepción de las ofertas gratuitas, estas herramientas incurren en costos de licencia iniciales, que pueden ser por puesto o en todo el sitio. A menudo también requieren contratos de mantenimiento continuos. Es posible que sea necesario establecer nuevas relaciones de proveedor. Estos son algunos ejemplos de gastos esperados de herramientas o hardware asociados a los principios de excelencia operativa:

  • Requisitos y administración de trabajos pendientes
  • Herramientas de diseño de arquitectura
  • Herramientas de diseño de interfaz de usuario y experiencia del usuario
  • Hospedaje de código y recursos
  • Entornos de desarrollo de código y poco código
  • Herramientas de automatización
  • Estaciones de trabajo de control de calidad y desarrollo
  • Canalizaciones de desarrollo e implementación
  • Ejecución y seguimiento de pruebas
  • Herramientas de observabilidad

Desventajas de excelencia operativa con la eficiencia del rendimiento

Compensación: aumento del uso de recursos. El pilar Eficiencia del rendimiento recomienda la asignación de la mayor cantidad de proceso y red disponibles posible a los requisitos de la carga de trabajo.

  • El marco de observabilidad de una carga de trabajo requiere que los componentes de la arquitectura asignen tiempo y recursos para crear, recopilar y transmitir registros y métricas. Estos puntos de datos ayudan a garantizar que las alertas y la supervisión eficaces sean posibles para la confiabilidad, la seguridad y el rendimiento. A medida que aumenta el nivel de instrumentación, la tensión en los recursos del sistema también puede aumentar.

  • Algunos modelos de implementación, como la implementación azul/verde, que una carga de trabajo podría usar para una implementación segura, podría introducir implementaciones en paralelo en la plataforma de aplicaciones de producción. Estas implementaciones requieren un escalado preventivo para proporcionar suficiente suministro para satisfacer la demanda futura o dejar una implementación principalmente inactiva durante un período de tiempo para admitir la reversión.

Equilibrio: mayor latencia. Para crear cargas de trabajo eficaces, los equipos buscan formas de reducir el tiempo y los recursos que consumen las cargas de trabajo para realizar sus tareas.

  • Muchos modelos de implementación requieren el uso de patrones de acceso de enrutamiento de puerta de enlace, que pueden introducir latencia. Esta latencia se basa en el presupuesto de destino de rendimiento de los flujos relacionados.

  • Algunos patrones de diseño en la nube que admiten enfoques de "cambio independiente a lo largo del tiempo" para admitir los ideales de mejora incremental pueden introducir latencia debido al recorrido de componentes adicionales. Esta latencia se puede introducir mediante puertas de enlace, agentes de mensajería o capas contra daños.

Explore los inconvenientes de los otros pilares: