Este modelo de madurez le lleva a un recorrido desde el conocimiento básico del costo hasta el dominio de optimización avanzado.
A partir de prácticas fundamentales como la transparencia y la responsabilidad, creará gradualmente funcionalidades sofisticadas, como análisis sistemáticos, información controlada por el usuario, aprendizajes de producción y, en última instancia, técnicas de eficiencia avanzadas. La progresión está diseñada para transformar su enfoque de simplemente reaccionar a las sorpresas de costos para dar forma proactiva a los resultados financieros que se alinean con sus objetivos empresariales.
El modelo se estructura en cinco niveles de madurez distintos, cada uno con un objetivo principal y un conjunto de estrategias principales. Use las vistas con pestañas siguientes para explorar cada nivel. Asegúrese de revisar también los inconvenientes resaltados y los riesgos asociados a medida que avanza.
Establecer la responsabilidad del equipo y los procesos fundamentales para administrar los costos de carga de trabajo a lo largo de su ciclo de vida.
El nivel 1 del modelo de madurez ayuda a los equipos de carga de trabajo a comprender su presupuesto y configurar procesos y herramientas para administrar sus costos durante el ciclo de vida de la carga de trabajo. Antes de configurar procesos más maduros, como la creación de un modelo de costos, debe centrarse en los procedimientos recomendados básicos de administración de costos para comenzar la carga de trabajo sin causar problemas con el presupuesto.
Las siguientes recomendaciones pueden ayudarle a administrar los costos de forma inteligente al crear la carga de trabajo de forma eficaz.
Estrategias clave
✓ Compartir objetivos financieros, detalles del presupuesto y gastos de carga de trabajo con todos los miembros del equipo, administradores y responsables de la toma de decisiones
Proporcione a las partes interesadas información detallada sobre el presupuesto asignado, los desgloses de costos y los objetivos financieros de la carga de trabajo. Comparta información detallada sobre varios gastos, como los costos de infraestructura, las licencias de software y los gastos operativos. Esta práctica no se piensa a menudo, pero es importante. Ayuda a crear confianza entre el equipo de carga de trabajo y los equipos de liderazgo y muestra que el equipo de carga de trabajo está pensando en la administración de gastos. Esta colaboración también ayuda a motivar al equipo de carga de trabajo a permanecer diligente en su administración de costos debido a sus compromisos con los equipos directivos.
Use herramientas de colaboración para animar a los miembros del equipo a compartir ideas y conclusiones de optimización de costos. Proporcionar mecanismos para que el equipo colabore en sus ideas y conclusiones. Este enfoque permite a los miembros del equipo ofrecer sugerencias en todas las disciplinas del equipo de gestión de carga. Al fomentar una cultura de colaboración en la optimización de costos, refuerza la mentalidad de que la administración de los costos de carga de trabajo depende de todos los miembros del equipo de la misma manera.
Para motivar una mentalidad de optimización de costos, considere la posibilidad de reconocer personas y equipos que demuestren la responsabilidad financiera y contribuyan a la optimización de costos. Puede usar evaluaciones de rendimiento, incentivos u otros programas de reconocimiento.
✓ Recopilar datos detallados de costos de todos los orígenes, incluidos los datos facturados y medidos
Los datos facturados representan los importes facturados reales y los datos medidos son predictivos en función de los planes de facturación. Para obtener una imagen detallada de los costos de la carga de trabajo, explore todas las herramientas y métodos disponibles que ofrece el proveedor de servicios. Es posible que la factura mensual no proporcione a las partes interesadas suficientes detalles sobre el gasto. Compile datos para ahorrar tiempo investigando cargos poco claros y explicando términos ocultos. Después de recopilar datos de uso, centralice esos datos en un sistema unificado.
Aproveche los paneles de facturación que tienen filtros para distintas vistas. Las partes interesadas y los miembros del equipo de carga de trabajo pueden usar los filtros para ver fácilmente la información más relevante para ellos.
✓ Determinar los factores de costos
Para identificar cómo contribuyen los distintos componentes de carga de trabajo a los costos generales, use las herramientas que ha adoptado para recopilar datos de facturación. Preste especial atención a los costos relacionados con los procesos, como las transferencias de datos o las transacciones, y cómo contribuyen a los costos generales. Estos costos suelen pasarse por alto durante las estimaciones iniciales de costos de recursos antes de la implementación.
También debe comprender cómo los factores que no están directamente relacionados con los recursos en la nube pueden afectar al presupuesto. Estos factores pueden incluir entrenamiento para miembros del equipo y licencias de software que el proveedor de nube no administra.
✓ Decidir si se va a construir o comprar
Una de las primeras decisiones que debe tomar el equipo de carga de trabajo es si deben usar soluciones fuera de la plataforma o crear soluciones internamente. Por lo general, el marco de Well-Architected favorece mantener las cosas sencillas. El uso de soluciones disponibles en el mercado sigue esa filosofía. Las soluciones bien respaldadas liberan al equipo de la carga operativa y reducen el tiempo necesario para el desarrollo, permitiendo a los desarrolladores centrarse en la funcionalidad básica de la aplicación.
Contrapartida: tenga en cuenta los costos cuando decida si va a desarrollar o comprar una solución. La creación interna de soluciones suele significar una inversión inicial para el tiempo de desarrollo y los recursos necesarios para completar el desarrollo. Pero tiene menos costos periódicos porque no tiene que mantener contratos de soporte técnico ni licencias.
Para ayudarle a tomar la decisión adecuada para su equipo, evalúe los siguientes puntos.
-
Nivel de control deseado: Decida cuánto control necesita sobre la funcionalidad de una solución.
-
Cantidad necesaria de personalización: Determine el nivel de personalización adecuado para la carga de trabajo en evolución.
-
El tiempo esperado de comercialización: Conozca las expectativas de las partes interesadas para incorporar la carga de trabajo al mercado y cómo puede cumplir mejor esa escala de tiempo.
-
La experiencia técnica necesaria: Determine cuánta experiencia necesita conservar para desarrollar y operar una solución.
-
Carga operativa esperada: Calcule cuánto tiempo y esfuerzo necesitan los equipos de operaciones para respaldar una solución.
Estas evaluaciones le ayudan a comprender los costos totales de cada opción para que pueda ponderarlos entre sí. Es posible que el costo total no sea el único factor determinante. Pero si las opciones tienen diferencias significativas, elija la opción de menor costo para acelerar el desarrollo de la carga de trabajo.
✓ Invertir en las aptitudes de su equipo
Invierte en mejorar la formación en áreas en las que tu equipo carece de conocimiento. Las aptitudes sólidas en la nube facilitan la toma de decisiones a largo plazo y optimizan la productividad diaria. Considere la posibilidad de entrenar o certificaciones que ofrezca su proveedor de nube u otros asociados. Mejorar la productividad de su equipo de carga de trabajo y otros responsables de la toma de decisiones le ahorra tiempo y dinero al minimizar los costosos errores.
Crear análisis sistemáticos de costos e informes para comprender los patrones de gasto.
Después de la implementación inicial, es habitual centrarse en desarrollar nuevas características y impulsar las ventas, al tiempo que se pasa por alto la administración de costos. En el nivel 2, se espera que el gasto aumente, por lo que debe adoptar un enfoque estructurado. Evalúe los costos de las herramientas y las tecnologías, cree una línea base e identifique los principales factores de costos.
La administración de costos puede parecer abrumadora, pero el análisis sistemático de costos en una fase temprana es necesario para mantener el control financiero y apoyar el crecimiento.
Estrategias clave
✓ Desarrollar un modelo de costo de línea base
Un modelo de costo es una estimación del costo general de una carga de trabajo. El costo se desglosa mediante factores que contribuyen, como servicios de plataforma, almacenamiento de datos, flujos de usuario y sistema y operaciones. Como mínimo, debe realizar un análisis sistemático de costos y crear un modelo de costos básico. Este ejercicio le ayuda a tomar decisiones fundamentadas sobre la asignación y optimización de recursos.
Cree un inventario de todos los recursos de Azure y especifique qué aspectos de cada recurso generan mayores costos.
Formule preguntas sobre las opciones tecnológicas y su alineación con objetivos como la escalabilidad y la confiabilidad dentro de las restricciones de costos. Para cada recurso, anote el costo y determine si el costo es demasiado alto o demasiado bajo. Mida las cargas previstas mientras considera el crecimiento potencial.
Tenga en cuenta el costo de los flujos y distinguir entre los flujos críticos y no críticos. Priorice los flujos críticos, como la experiencia del usuario en una aplicación de comercio electrónico, sobre flujos no críticos, como los trabajos en segundo plano con fines de auditoría.
Calcule el costo del almacenamiento de datos y los patrones de acceso a datos.
✓ Crear informes de costos
Cree informes de costos básicos para la visibilidad financiera y analice los patrones de costos. Además, configure alertas de costos para cuando se supere una cantidad específica de gasto.
Se recomienda usar Microsoft Cost Management para analizar, supervisar y controlar los gastos en los servicios. Si esa opción no está disponible, cree un sistema para realizar un seguimiento del consumo y generar un informe mensual.
✓ Establecer la responsabilidad
La responsabilidad no es negociable para la administración de costos. En las primeras fases, asigne un miembro del equipo para revisar los presupuestos y los informes de costos mensualmente y para informar al equipo de picos inesperados. La persona responsable debe evaluar el gasto de la carga de trabajo y guiar al equipo en consecuencia.
Inicialmente, la responsabilidad puede ser flexible. A medida que la startup madura, apliquen controles más estrictos.
✓ Evaluar oportunidades de optimización
El modelo de costos debe proporcionarle una buena comprensión de los principales impulsores de los costos y los informes de costos deben proporcionar evidencia. Evalúe esos controladores y explore las oportunidades para optimizar. Tenga en cuenta las estrategias siguientes:
Evalúe el modelo de facturación de cada recurso de Azure que use la carga de trabajo. Determine si necesita todas las características que cada plan agrupa. Por ejemplo, si necesita características específicas como un punto de conexión privado con Azure Front Door, es posible que necesite el plan Premium. De lo contrario, considere la posibilidad de elegir un plan más bajo para ahorrar costos.
Elija entre la facturación basada en el consumo y la facturación basada en el compromiso. Se recomienda empezar con la facturación basada en el consumo para que pueda comprender los costos incurridos. Si la carga es coherente, puede explorar los descuentos que Azure proporciona para cargas coherentes en fases posteriores.
Evalúe los procedimientos de codificación. Use la instrumentación de código para identificar los procesos que son costosos de ejecutar y proporcionar información sobre los problemas de rendimiento, lo que puede suponer costos innecesarios. Recopile métricas como la duración del proceso y las tasas de error para tomar decisiones controladas por datos para la optimización futura.
✓ Decidir sobre una estrategia de escalado inicial
Se prefiere escalar horizontalmente porque es más rentable y fácil de implementar en comparación con el escalado vertical. El escalado vertical implica tiempo de inactividad y mayores costos.
Considere las pruebas de rendimiento y las métricas, y escale horizontalmente o verticalmente según su evaluación.
Incorporar los comentarios de los usuarios y las señales operativas para refinar las estrategias de optimización de costos.
En las primeras fases del desarrollo y las operaciones de cargas de trabajo, puede confiar en el bucle de comentarios de desarrollo interno para optimizar la carga de trabajo. En este nivel de madurez, es importante expandir el bucle de comentarios para incluir usuarios internos y externos, así como otras partes interesadas. A medida que realice refinamientos de optimización de costos en su carga de trabajo, también debe tener en cuenta las contrapartidas con otros pilares, especialmente los pilares de eficiencia y confiabilidad del rendimiento.
El nivel 3 del pilar Optimización de costos se centra en preparar la carga de trabajo para producción mediante la integración de comentarios internos y externos en su estrategia, a la vez que se garantiza que se cumplen los objetivos de rendimiento y confiabilidad.
Estrategias clave
✓ Invertir en flujos impactantes y ajustar otros flujos
Tenga en cuenta las prioridades asignadas a los flujos de aplicación. Priorice los esfuerzos de desarrollo en flujos críticos mientras busca formas de simplificar y reducir el costo de los flujos no críticos. Los flujos no críticos pueden tener requisitos de confiabilidad menos estrictos. Como resultado, es posible que pueda simplificar su diseño.
Para cada flujo, elimine elementos innecesarios, seleccione los niveles de rendimiento adecuados, ajuste la configuración de escalado de la demanda variable y ajuste las configuraciones para alinearse con las necesidades de rendimiento y presupuesto. Supervise los flujos para identificar ineficacias, como instancias de proceso inactivas, datos sin usar y ancho de banda de red bajo. Use herramientas nativas de registro y análisis para ayudar a agregar y analizar estas métricas para las tendencias.
✓ Exigir límites de protección de costos mediante alertas
Cree umbrales de gasto y alertas asociadas para aplicar límites de protección de costos. Este enfoque garantiza que la carga de trabajo permanezca dentro del presupuesto. Entre los ejemplos de alertas se incluyen los siguientes tipos:
Las alertas de presupuesto permiten establecer umbrales de gasto, supervisar los costos y recibir notificaciones para ayudar a controlar los gastos y mantenerse informados.
Las alertas de anomalías de costos le notifican las variaciones de costos inesperadas. Permiten investigar y abordar ineficacias o patrones de gasto anómalos.
Las alertas de uso del plan basadas en compromiso le ayudan a supervisar y optimizar el uso de los recursos basados en el compromiso mediante la notificación a las partes interesadas cuando el uso cae por debajo de un umbral deseado.
✓ Desarrollar una estrategia para optimizar el uso de los recursos
A medida que compila los entornos de producción y no producción, es posible que implemente de forma involuntaria recursos sobreaprovisionados. Con el tiempo, puede acumular recursos que se implementaron para una prueba de concepto (PoC) o para pruebas que ya no son necesarias. Desarrollar una estrategia para identificar recursos infrautilizados y no utilizados es esencial para mejorar continuamente el mantenimiento de un entorno de nube optimizado. Tenga en cuenta las recomendaciones siguientes:
Use los tipos de recursos y las SKU correctos para cada entorno. Investigue las opciones de infraestructura que proporciona la plataforma en la nube y seleccione los tipos de recursos y las SKU adecuados para cada caso de uso. A menudo, existen tipos de recursos y SKU específicos destinados concretamente a los entornos de pruebas o desarrollo y PoC. Estos tipos de recursos y SKU son significativamente menos costosos que los recursos estándar o de alto rendimiento, pero no se pueden usar para cargas de trabajo de producción.
Configure y aplique directivas para restringir los tipos de recursos, las SKU, las regiones y los permisos de implementación para los usuarios. Las directivas automatizadas ayudan a administrar los cambios en el entorno. Este proceso reduce el riesgo de implementaciones no autorizadas.
Normalice el uso de la infraestructura como código para todos los cambios en el entorno. Este enfoque ayuda a aplicar las directivas de cambio del entorno y simplifica las prácticas de operaciones para reducir el riesgo de error humano.
Monitoree las métricas de uso como CPU, memoria y almacenamiento para ayudar a determinar si los recursos están subutilizados y se pueden ajustar mediante reducción de escala.
Revise los entornos de producción y no producción para los recursos no utilizados que se pueden apagar o eliminar de forma segura.
Aproveche las herramientas que proporciona la plataforma en la nube para ayudar a identificar las optimizaciones de recursos. Por ejemplo, Azure Advisor proporciona recomendaciones de optimización de costos que identifican posibles ineficacias y sugieren pasos para abordarlos.
Contrapartida: considere los objetivos de rendimiento y confiabilidad al ajustar los recursos. Interactuar con las partes interesadas cuando los compromisos pueden ayudar a equilibrar el rendimiento, la confiabilidad y los costos, o cuando las restricciones presupuestarias dificultan las mejoras en las cargas de trabajo.
✓ Optimizar licencias y otros costos estáticos
A medida que implementa recursos en la nube, adopte un enfoque estratégico para comprar licencias y otros costos mensuales fijos. Estos costos incluyen licencias de servidor y base de datos, licencias de software y reservas compradas previamente. Tenga en cuenta las siguientes estrategias de ahorro de costos:
Opciones de investigación, como ventaja híbrida de Azure, para aplicar licencias existentes a los sistemas que se migran a la nube o para nuevas implementaciones en la nube. Investigue las licencias por volumen o los contratos empresariales que su organización mantiene para aprovechar posibles ahorros de costos en recursos en la nube o licencias de software.
Use licencias que no sean de producción y desarrollo/pruebas para sistemas aplicables, como licencias de desarrollo y pruebas de Visual Studio.
Adquirir previamente la capacidad de los recursos en la nube cuando sea práctico. Reservar capacidad puede reducir significativamente los costos de uso mensuales y ayudar a mantener gastos más coherentes.
Riesgo: Al comprar reservas, asegúrese de seleccionar el modelo más rentable para su caso de uso. Por ejemplo, si un recurso se puede reducir durante la noche o de manera estacional, puede ser más rentable ajustar su escalado de forma inteligente. Además, identifique la SKU correcta para adquirir previamente mediante pruebas de línea base y planeamiento de capacidad.
✓ Refinar las directivas de escalado automático
Es posible que las directivas de escalado inicial puedan basarse en el ciclo de retroalimentación de desarrollo interno. Estas directivas se centran en ajustar el escalado para satisfacer las necesidades de desarrollo. A medida que la carga de trabajo evoluciona, incorpore comentarios internos y externos del usuario para asegurarse de que el rendimiento permanece dentro del intervalo aceptable.
Ajuste los umbrales de escalado e introduzca períodos de enfriamiento para mitigar los picos de carga temporales. Supervise y ajuste continuamente el sistema para optimizar los costos y cumplir los requisitos. Defina las unidades de escala que se van a usar en el futuro. Estas unidades dependen de factores como el diseño de cargas de trabajo, el caso de uso, los componentes, los flujos y los requisitos empresariales.
Por ejemplo, para cargas de trabajo críticas para la misión, una unidad de escala podría ser un sello de implementación completo. Como alternativa, para cargas de trabajo más sencillas que tienen flujos no críticos, la unidad de escala podría basarse en el número de instancias de proceso de una SKU específica asignada a la carga de trabajo. Seleccione unidades de escala que permitan que la carga de trabajo maneje los incrementos esperados en la carga sin capacidad desperdiciada. Actualice el modelo de costos para incluir las necesidades de escalado previstos.
✓ Optimizar su patrimonio de datos
Los datos son un controlador principal de los costos en la nube. La administración de datos adecuada puede ayudarle a mantener los costos coherentes y dentro del presupuesto. Use las estrategias siguientes para administrar el patrimonio de datos:
Clasifique y etiquete los datos para aplicar los controles adecuados y determinar los niveles de confiabilidad y rendimiento adecuados para diferentes tipos de datos y almacenes.
Capture solo los datos esenciales, comprima los datos para el almacenamiento más frío y elimine los datos innecesarios mediante directivas de retención adecuadas. Desduplicar datos para eliminar los datos redundantes y educar a los usuarios en prácticas de almacenamiento de datos eficaces.
Optimice las copias de seguridad mediante copias de seguridad incrementales, lo que permite la compresión y mueve copias de seguridad anteriores al almacenamiento en frío.
Optimice la replicación aplicando los modelos de replicación adecuados, ya sean sincrónicos o asincrónicos, para optimizar la replicación en función de sus requisitos. Ajuste la frecuencia de replicación para alinearse con sus necesidades específicas. Evalúe continuamente los requisitos y la configuración.
Incorpore comentarios internos y externos para revisar los patrones de acceso de almacenamiento y ajustar las estrategias de administración del ciclo de vida de los datos.
Use herramientas para ayudar a optimizar las consultas.
Contrapartida: compare las directivas de copia de seguridad y replicación con los destinos de recuperación. La replicación menos frecuente o la descarga de copias de seguridad más antiguas en almacenamiento frío pueden afectar al tiempo de recuperación, por lo que considere la implementación de estas optimizaciones.
✓ Optimizar código, prácticas de desarrollo de software y estrategias de desarrollo de características
El código ineficaz puede degradar el rendimiento del sistema. Esta ineficiencia puede dar lugar a mayores costos para el uso de recursos. Optimizar tu código puede mejorar la eficacia y permitir que tu carga de trabajo maneje una mayor demanda sin necesidad de aumentar tus recursos. Use las estrategias siguientes para optimizar el código:
Analice los datos en tiempo de ejecución y mida el rendimiento mediante herramientas de generación de perfiles.
Evalúe la lógica de negocios y su efecto en la experiencia del usuario.
Revise las recomendaciones de rendimiento específicas para cada lenguaje.
Quita las llamadas de función innecesarias, minimiza los registros y refina los bucles y condicionales.
Reduzca el procesamiento de datos, minimice las solicitudes de red y las asignaciones de memoria y evalúe las implementaciones transversales.
Use los métodos siguientes para optimizar las rutas de acceso de red:
Minimice las transferencias de datos entre los componentes y entre regiones geográficas distantes mediante el análisis y la eliminación de transferencias innecesarias. Asegúrese de que solo se envían los campos de datos necesarios y no se envían objetos completos ni estructuras de datos. Este enfoque reduce el tamaño y la frecuencia de las transferencias de datos.
Evite transferir datos redundantes solo mediante el envío de información esencial.
Refactorice el código para reducir las solicitudes repetidas y procesarlas por lotes cuando sea posible.
La optimización de las prácticas de desarrollo mejora la velocidad de compilación. Este enfoque ayuda a los equipos de cargas de trabajo a ahorrar tiempo valioso y ofrecer mejoras de forma eficaz a la producción. Use las estrategias siguientes para simplificar las prácticas de desarrollo:
Acelere los tiempos de compilación mediante la optimización de la configuración, la eliminación de pasos y procesos innecesarios, la paralelización de tareas, el almacenamiento en caché y la habilitación de compilaciones incrementales para evitar la compilación redundante.
Use el simulacro de producción para optimizar las pruebas. La técnica de 'mocking' en producción permite a los desarrolladores centrar las pruebas en escenarios simulados que resulta poco práctico reproducir en un entorno de producción.
Optimice los procedimientos de planeamiento de desarrollo mediante la definición de objetivos claros y métricas, mediante herramientas de supervisión para realizar un seguimiento de los indicadores clave de rendimiento y la priorización de información accionable.
Use herramientas de asistencia de codificación de IA, como GitHub Copilot, para reducir el tiempo de desarrollo cuando sea práctico.
Evalúe la estrategia de desarrollo de características para asegurarse de que se priorizan las características valiosas. Incorpore comentarios de usuarios internos y externos y partes interesadas para identificar las características que mejoran la satisfacción del usuario e impulsan una mayor involucración. En algunos escenarios, es posible que las características se diseñen específicamente para optimizar los costos. Compare estas características con prioridades funcionales para evaluar su valor relativo.
Impulsar optimizaciones de costos dirigidas mediante el uso de datos operativos de producción.
El nivel 4 del modelo de madurez supone que se ha implementado en producción y que ha estado operando su carga de trabajo durante un tiempo suficiente para recopilar información útil sobre cómo se ejecuta habitualmente. En este nivel, aplique estas conclusiones de producción al entorno.
Los cambios en el entorno de producción afectan directamente a otros aspectos de la carga de trabajo. Por ejemplo, los refinamientos de ahorro de costos pueden afectar a uno o varios de los otros pilares de Well-Architected Framework. Por este motivo, las prácticas de administración de cambios maduras son cruciales. Al realizar ajustes de ahorro de costos en la carga de trabajo, revise y pruebe exhaustivamente los cambios y desarrolle planes de reversión para mitigar los impactos en el rendimiento, la seguridad y la confiabilidad.
Estrategias clave
✓ Refinar el modelo de costos en función de los aprendizajes de producción
Después de implementar y operar la carga de trabajo en producción durante suficiente tiempo para comprender los patrones de uso normales, revise su modelo de costos para planificar el futuro. El modelo de costos debe proyectar gastos futuros, asignar fondos y ajustarse a las desviaciones. En el análisis de escenarios, el modelo de costos evalúa el impacto financiero de diferentes cambios empresariales y prevé las implicaciones de costos del comportamiento del cliente. Para la optimización de recursos, identifica los recursos en la nube infrautilizados, prevé los costos de escalado y compara los modelos de facturación de los proveedores de nube para que pueda elegir la opción más económica.
Como parte de este ejercicio, determine la estrecha alineación de los costos en ejecución con el modelo de costos desarrollado anteriormente e investigue las causas de discrepancias. Encontrar costos inesperados es común y asignar la culpa por ellos suele ser improductivo. En su lugar, evalúe el valor de los componentes que impulsan costos inesperados. Colabore con las partes interesadas para decidir si se debe ajustar el diseño de la carga de trabajo para una mejor alineación con el modelo de costos o si se debe modificar el modelo de costo.
Dilema: Tenga en cuenta que es difícil proyectar con precisión los costos variables, especialmente cuando se adoptan nuevas tecnologías. Es posible que tenga que buscar compromisos cuando planee su presupuesto. Asegúrese de que las partes interesadas entiendan cómo determinar las estimaciones de costos variables y su estrategia para mantener estos costos bajo control.
Riesgo: Las medidas de reducción de costos pueden afectar negativamente a la confiabilidad, la seguridad, el rendimiento y la excelencia operativa. Analice cuidadosamente el impacto de cada medida de reducción de costos planeada y determine si realizar un cambio vale la pena el posible impacto.
✓ Optimizar el uso de los datos para reducir costes
Use la información de producción para refinar las estrategias de datos. En concreto, busque oportunidades de optimización para los siguientes factores:
- Optimice las soluciones de almacenamiento teniendo en cuenta la facilidad de administración. Evalúe si las soluciones de almacenamiento implementadas actualmente se ajustan mejor a su caso de uso y si la transición a una tecnología diferente podría reducir la carga operativa o los costos de uso. Por ejemplo, es posible que haya implementado inicialmente SQL Server en máquinas virtuales para migrar fácilmente la carga de trabajo o porque era la tecnología más conocida para el equipo de cargas de trabajo. Pasar a una solución de plataforma como servicio (PaaS) puede reducir significativamente la sobrecarga operativa y reducir los costos, en función de varios factores.
✓ Aumentar la densidad de recursos
Cuando sea práctico, optimice los costos mediante la consolidación de servicios compartidos entre cargas de trabajo. Por ejemplo, puede hospedar varias aplicaciones web en un solo servidor o en una instancia de PaaS. Varias cargas de trabajo pueden compartir una base de datos, redes, seguridad y otros servicios. Lleve a cabo un análisis de costo-beneficio para determinar si la consolidación de recursos merece la pena para que su equipo la lleve a cabo. Después de identificar los candidatos para la consolidación, planee cuidadosamente la implementación y siga las buenas prácticas de administración de cambios. Asegúrese de que las partes interesadas comprendan los riesgos.
Riesgo: la consolidación de recursos puede hacer que la carga de trabajo sea menos confiable y menos segura. Las cargas de trabajo críticas y críticas para la empresa deben favorecer la confiabilidad y la seguridad sobre la consolidación.
Riesgo: la consolidación mal ejecutada puede provocar ineficiencias futuras. Revise exhaustivamente el plan de consolidación para asegurarse de que no está creando cuellos de botella que puedan afectarle en el futuro antes de realizar la migración. Después de la migración, preste atención adicional a la supervisión a los recursos consolidados para asegurarse de que funcionan según lo previsto.
✓ Evaluar y optimizar las características de la aplicación
Supervise los patrones de uso de características en producción para evaluar su alineación con el modelo de costos. Determine si se debe mantener, refactorizar o quitar una característica. En algunos casos, la monetización de características podría ser una decisión empresarial estratégica. Es posible que las características no justifican la inversión actual, pero aún podrían proporcionar valor a los clientes. Ofrecer estas características como complementos de pago o suscripciones puede ayudar a compensar los costos de inversión.
✓ Minimizar los costos de escalado mediante la regulación de la demanda
Una estrategia que puede ayudarle a optimizar los costos de escalado de recursos es regular la demanda en lugar de agregar capacidad. Este enfoque puede incluir la descarga de la demanda a otros recursos o reducirla a través de diversas estrategias, como colas de prioridad, almacenamiento en búfer, equilibrio de carga y almacenamiento en caché. Cuando considere estas tácticas, evalúe su impacto en los otros pilares del marco de Well-Architected. Controlar el suministro limitando los límites de escalado y estableciendo un presupuesto ayuda a mantener los gastos dentro de los umbrales definidos. Realice un seguimiento del uso y use plataformas de administración de costos y alertas presupuestarias para ayudar a supervisar y controlar los gastos de forma eficaz.
Dilema: La descarga de tareas en otros recursos puede reducir los costos de escalado, pero podría presentar desafíos operativos y de mantenimiento. Realice un análisis exhaustivo del costo-beneficio para confirmar que el método de descarga elegido es eficaz y factible. Asegúrese de equilibrar el ahorro con posibles complejidades.
✓ Exigir la responsabilidad de los costos a través de la propiedad
La designación de un individuo directamente responsable de los costos (DRI) ayuda al equipo de trabajo a asumir la responsabilidad de sus costos de trabajo. La DRI es responsable de administrar y optimizar los costos mediante la supervisión del uso, la implementación de estrategias de ahorro de costos y la garantía de que los gastos se alinean con los objetivos de presupuesto y negocio. La DRI toma decisiones relacionadas con la asignación de recursos en la nube, identifica áreas de posible reducción de costos y garantiza un uso eficaz de los servicios en la nube para evitar gastos innecesarios.
La DRI también actúa como primera línea de defensa frente a los costos de carga de trabajo superiores a los esperados. Los DRIs pueden ayudar a identificar la causa de estos altos costos y trabajar proactivamente con el equipo encargado de la carga de trabajo para reducirlos a su intervalo esperado antes de convertirse en una emergencia de costos.
Transformar la optimización de costos en una ventaja competitiva a través de la innovación continua.
En el nivel 5 del modelo de madurez, debe tener muchos mecanismos y procesos de optimización de costos ya implementados. El nivel 5 se centra en maximizar la rentabilidad de la inversión (ROI) manteniendo un presupuesto de carga de trabajo coherente y predecible, produciendo previsiones altamente precisas y aplicando refinamientos avanzados. Tenga en cuenta las siguientes recomendaciones para lograr estos objetivos.
Estrategias clave
✓ Imponer límites de gasto en los procesos de desarrollo de software
Utiliza las compuertas de liberación para servir como límites de control de gasto al establecer criterios relacionados con los costos que se deben cumplir para pasar la compuerta. Por ejemplo, puede establecer límites de gasto para asegurarse de que los lanzamientos no agreguen costos inesperados a su presupuesto de carga de trabajo. Incorpore estas puertas a la canalización de integración y entrega continua para garantizar que se incluyen en cada implementación.
✓ Invertir en la creación de conocimientos
Permita que el equipo de cargas de trabajo tome posesión de las iniciativas de optimización de costos mediante el desarrollo de un programa de aprendizaje de aptitudes. Anime a los miembros del equipo a aprender de los líderes de pensamiento del sector participando en conferencias, seminarios web y otros eventos relevantes. Proporcionar formación interna para apoyar el desarrollo de habilidades cruzadas y crear entornos de pruebas aislados para experiencias de aprendizaje práctico. Alinee el entrenamiento con iniciativas de optimización de costos, como optimizar las estrategias de escalado. Los equipos altamente cualificados mejoran la eficiencia y pueden reducir la dependencia de terceros para proyectos futuros.
Asegúrese de que el modelo de costos incluye entrenamientos planeados para un período fiscal específico, como el próximo trimestre.
✓ Optimizar los costos de alta disponibilidad y recuperación ante desastres
Después de ejecutar simulacros de recuperación ante desastres (DR) reales o experimentar incidentes de recuperación ante desastres reales, es posible que encuentre oportunidades de optimización de costos. Es posible que descubra que una estrategia de recuperación ante desastres menos costosa es suficiente para determinados componentes mientras sigue cumpliendo los objetivos de recuperación. Por ejemplo, no necesita un diseño de reserva activa para flujos no críticos. En este escenario, considere la posibilidad de implementar un enfoque de implementación en recuperación en su lugar.
Como parte de las prácticas de mejora continua, revise periódicamente los objetivos de recuperación para asegurarse de que son adecuados para los requisitos de confiabilidad y costo.
✓ Refinar el diseño de la carga de trabajo
Después de observar la carga de trabajo en producción durante un período prolongado, puede determinar que está en el límite de optimizaciones valiosas sin que merezca la pena refactorizar partes de la misma. La refactorización puede requerir mucho esfuerzo y ser costosa. Sin embargo, la refactorización podría ser una inversión valiosa si se traduce en ahorros de costos a largo plazo. También puede ampliar el ciclo de vida de la carga de trabajo mediante la adopción de tecnologías y prácticas de administración más eficaces. Tenga en cuenta las estrategias siguientes:
Combinar flujos similares. Reduzca las redundancias o el uso de recursos infrautilizados mediante la consolidación de flujos similares en un recurso compartido o un conjunto de recursos. Por ejemplo, puede hospedar varias aplicaciones web en una sola instancia de proceso o hospedar varias bases de datos en un único servidor lógico.
Separe flujos disimilares. La asignación de tareas que tienen diferentes necesidades computacionales para recursos dedicados mejora la eficiencia y reduce los costos. Este enfoque mejora la escalabilidad, la tolerancia a errores y la preparación al minimizar la interferencia y optimizar la asignación de recursos según la prioridad de cada tarea.
Rediseñe la carga de trabajo para obtener eficiencias. Revise toda la arquitectura de carga de trabajo para buscar oportunidades para mejorar la eficacia. Favorece un diseño y exploración de microservicios mediante servicios sin servidor o administrados que alivian la carga operativa y pueden tener un tamaño adecuado a través del escalado automático. Un objetivo final de la arquitectura podría ser implementar automáticamente entornos que no sean de producción solo cuando sea necesario para las actividades de implementación. A continuación, estos entornos se pueden destruir para minimizar los costos de uso innecesarios.
Supervise y ajuste continuamente los tamaños de los recursos en función de los patrones de uso para optimizar los costos.
✓ Evolucionar las operaciones de su equipo
Investigue y adopte metodologías de desarrollo eficientes como Scrum, Kanban y cascada. Vuelve a evaluar periódicamente la eficacia de su equipo para determinar si la metodología elegida es la mejor opción. Determine los costos de las tareas de cada empleado, conocidos como costos unitarios, y busque oportunidades para reducir esos costos. Revise las tareas más costosas y evalúe su ROI.
Evalúe si se pueden descargar tareas específicas en otros equipos. Por ejemplo, un equipo de nube centralizado podría administrar tareas operativas para otras unidades de negocio o cargas de trabajo, mientras que un equipo de seguridad centralizado podría controlar la supervisión y las pruebas. Al descargar tareas, planee cuidadosamente la entrega, asegúrese de una comunicación clara entre todos los equipos implicados y siga los procesos de administración de cambios establecidos.