Well-Architected Framework: Pilar de optimización de costos

Last reviewed 2025-02-14 UTC

En el pilar de optimización de costos del framework de arquitectura deGoogle Cloud , se describen los principios y las recomendaciones para optimizar el costo de tus cargas de trabajo en Google Cloud.

El público previsto incluye lo siguiente:

  • CTO, CIO, CFO y otros ejecutivos responsables de la administración estratégica de costos.
  • Son los arquitectos, desarrolladores, administradores y operadores que toman decisiones que afectan el costo en todas las etapas del recorrido de una organización hacia la nube.

Los modelos de costos para las cargas de trabajo locales y en la nube difieren significativamente. Los costos de TI locales incluyen los gastos de capital (CapEx) y los gastos operativos (OpEx). Los recursos de hardware y software locales se adquieren, y los costos de adquisición se deprecian durante la vida útil de los recursos. En la nube, los costos de la mayoría de los recursos de la nube se tratan como OpEx, en los que se incurre cuando se consumen los recursos de la nube. Esta diferencia fundamental destaca la importancia de los siguientes principios básicos de la optimización de costos.

Para conocer los principios y las recomendaciones de optimización de costos específicos de las cargas de trabajo de IA y AA, consulta Perspectiva de IA y AA: Optimización de costos en el Well-Architected Framework.

Evalúa las cargas de trabajo con una habilidad para agentes

Para permitir que los agentes de IA evalúen tus cargas de trabajo en la nube en función de los principios y las recomendaciones de este pilar, usa la habilidad de google-cloud-waf-cost-optimization, que está disponible en el repositorio de habilidades de agentes de Google en GitHub.

Para instalar la habilidad, ejecuta el siguiente comando en el cliente o la terminal de tu agente:

npx skills add google/skills --skill google-cloud-waf-cost-optimization

Cuando se te solicite, especifica los agentes de IA para los que deseas instalar la habilidad y establece el alcance de la instalación (proyecto o global).

Principios básicos

Las recomendaciones del pilar de optimización de costos del Well-Architected Framework se asignan a los siguientes principios básicos:

  • Alinea el gasto en la nube con el valor empresarial: Asegúrate de que tus recursos de la nube ofrezcan un valor empresarial medible alineando el gasto en TI con los objetivos comerciales.
  • Fomenta una cultura de conocimiento de los costos: Asegúrate de que las personas de tu organización consideren el impacto en los costos de sus decisiones y actividades, y de que tengan acceso a la información de costos necesaria para tomar decisiones fundamentadas.
  • Optimiza el uso de recursos: Aprovisiona solo los recursos que necesitas y paga solo por los recursos que consumes.
  • Optimiza de forma continua: Supervisa de forma continua el uso y los costos de los recursos de la nube, y realiza ajustes de forma proactiva según sea necesario para optimizar tus gastos. Este enfoque implica identificar y abordar las posibles ineficiencias de costos antes de que se conviertan en problemas significativos.

Estos principios están estrechamente alineados con los principios básicos de FinOps de la nube. FinOps es relevante para cualquier organización, sin importar su tamaño o antigüedad en la nube. Si adoptas estos principios y sigues las recomendaciones relacionadas, puedes controlar y optimizar los costos durante todo tu recorrido en la nube.

Colaboradores

Autor: Nicolas Pintaux | Ingeniero de Atención al Cliente, especialista en modernización de aplicaciones

Otros colaboradores:

Alinea el gasto en la nube con el valor empresarial

Este principio del pilar de optimización de costos del Google Cloud Well-Architected Framework proporciona recomendaciones para alinear el uso de los recursos de Google Cloud con los objetivos comerciales de tu organización.

Descripción general del principio

Para administrar de forma eficaz los costos de la nube, debes maximizar el valor empresarial que proporcionan los recursos de la nube y minimizar el costo total de propiedad (TCO). Cuando evalúes las opciones de recursos para tus cargas de trabajo en la nube, ten en cuenta no solo el costo de aprovisionar y usar los recursos, sino también el costo de administrarlos. Por ejemplo, las máquinas virtuales (VM) en Compute Engine pueden ser una opción rentable para alojar aplicaciones. Sin embargo, cuando consideras la sobrecarga para mantener, aplicar parches y escalar las VMs, el TCO puede aumentar. Por otro lado, los servicios sin servidores, como Cloud Run, pueden ofrecer un mayor valor empresarial. La menor sobrecarga operativa permite que tu equipo se enfoque en las actividades principales y ayuda a aumentar la agilidad.

Para asegurarte de que tus recursos en la nube ofrezcan un valor óptimo, evalúa los siguientes factores:

  • Costos de aprovisionamiento y uso: Son los gastos en los que incurres cuando compras, aprovisionas o consumes recursos.
  • Costos de administración: Son los gastos recurrentes para operar y mantener los recursos, incluidas tareas como la aplicación de parches, la supervisión y el escalamiento.
  • Costos indirectos: Son los costos en los que podrías incurrir para administrar problemas como el tiempo de inactividad, la pérdida de datos o las violaciones de la seguridad.
  • Impacto empresarial: Son los beneficios potenciales de los recursos, como el aumento de los ingresos, la mejora de la satisfacción del cliente y un tiempo de salida al mercado más rápido.

Cuando alineas el gasto en la nube con el valor empresarial, obtienes los siguientes beneficios:

  • Decisiones basadas en el valor: Se alienta a tus equipos a priorizar las soluciones que ofrecen el mayor valor empresarial y a considerar las implicaciones de costos a corto y largo plazo.
  • Elección de recursos fundamentada: Tus equipos tienen la información y el conocimiento que necesitan para evaluar el valor empresarial y el TCO de varias opciones de implementación, por lo que eligen recursos que son rentables.
  • Alineación entre equipos: La colaboración multifuncional entre los equipos empresariales, financieros y técnicos garantiza que las decisiones de la nube se alineen con los objetivos generales de la organización.

Recomendaciones

Para alinear el gasto en la nube con los objetivos comerciales, ten en cuenta las siguientes recomendaciones.

Prioriza los servicios administrados y los productos sin servidores

Siempre que sea posible, elige servicios administrados y productos sin servidores para reducir la sobrecarga operativa y los costos de mantenimiento. Esta opción permite que tus equipos se concentren en sus actividades empresariales principales. Pueden acelerar la entrega de nuevas funciones y características, y ayudar a impulsar la innovación y el valor.

A continuación, se incluyen ejemplos de cómo puedes implementar esta recomendación:

Equilibra la rentabilidad con la agilidad empresarial

Controlar los costos y optimizar el uso de los recursos son objetivos importantes. Sin embargo, debes equilibrar estos objetivos con la necesidad de una infraestructura flexible que te permita innovar con rapidez, responder con rapidez a los cambios y entregar valor con mayor rapidez. A continuación, se muestran ejemplos de cómo puedes lograr este equilibrio:

  • Adopta las métricas de DORA para el rendimiento de la entrega de software. Las métricas como el porcentaje de fallas en los cambios (CFR), el tiempo de detección (TTD) y el tiempo de restablecimiento (TTR) pueden ayudar a identificar y corregir los cuellos de botella en tus procesos de desarrollo e implementación. Si reduces el tiempo de inactividad y aceleras la entrega, puedes lograr eficiencia operativa y agilidad empresarial.
  • Sigue las prácticas de la ingeniería de confiabilidad de sitios (SRE) para mejorar la confiabilidad operativa. El enfoque de la SRE en la automatización, la observabilidad y la respuesta ante incidentes puede reducir el tiempo de inactividad, disminuir el tiempo de recuperación y aumentar la satisfacción del cliente. Si minimizas el tiempo de inactividad y mejoras la confiabilidad operativa, puedes evitar la pérdida de ingresos y la necesidad de aprovisionar recursos en exceso como una red de seguridad para controlar las interrupciones.

Habilita la optimización de autoservicio

Fomenta una cultura de experimentación y exploración proporcionando a tus equipos herramientas de optimización de costos de autoservicio, herramientas de observabilidad y plataformas de administración de recursos. Permíteles aprovisionar, administrar y optimizar sus recursos de nube de forma autónoma. Este enfoque ayuda a fomentar un sentido de propiedad, acelerar la innovación y garantizar que los equipos puedan responder con rapidez a las necesidades cambiantes, sin perder de vista la eficiencia de costos.

Adopta e implementa FinOps

Adopta FinOps para establecer un entorno colaborativo en el que todos tengan la capacidad de tomar decisiones fundamentadas que equilibren el costo y el valor. FinOps fomenta la responsabilidad financiera y promueve la optimización eficaz de los costos en la nube.

Promover una mentalidad orientada al valor y consciente del TCO

Alienta a los miembros de tu equipo a adoptar una actitud integral respecto de la inversión en la nube, con un énfasis en el TCO y no solo en los costos iniciales. Usa técnicas como la asignación del flujo de valor para visualizar y analizar el flujo de valor a través del proceso de entrega de software y para identificar áreas de mejora.

Comprende de forma detallada los generadores de costos con el cálculo de costos unitarios para tus aplicaciones y servicios. Adopta la rentabilidad de la unidad para equilibrar los costos con los ingresos o las métricas empresariales. Si correlacionas la inversión en la nube con las unidades de medida de la unidad de negocios, como los ingresos por cliente o el volumen de transacciones, puedes medir los márgenes de las unidades y verificar que el aumento de la inversión se deba a un crecimiento rentable. Cuando equilibras el costo con los ingresos, tu organización puede distinguir entre la ineficiencia operativa y el escalamiento saludable. Esto te ayuda a identificar cuándo se justifican más inversiones en la nube. Para obtener más información, consulta Maximiza el valor empresarial con las operaciones financieras en la nube.

Fomenta una cultura de reconocimiento de costos

Este principio del pilar de optimización de costos del Google Cloud Well-Architected Framework proporciona recomendaciones para promover el conocimiento de los costos en toda tu organización y garantizar que los miembros del equipo tengan la información de costos que necesitan para tomar decisiones fundamentadas.

Por lo general, la responsabilidad de la administración de costos puede centralizarse en unos pocos interesados seleccionados y enfocarse principalmente en las decisiones iniciales de la arquitectura del proyecto. Sin embargo, los miembros del equipo de todos los roles de usuario de la nube (analista, arquitecto, desarrollador o administrador) pueden ayudar a reducir el costo de tus recursos en Google Cloud. Si compartes los datos de costos de forma adecuada, puedes capacitar a los miembros del equipo para que tomen decisiones rentables durante los procesos de desarrollo y de implementación.

Descripción general del principio

Las partes interesadas en varios roles (propietarios de productos, desarrolladores, ingenieros de implementación, administradores y analistas financieros) necesitan visibilidad de los datos de costos pertinentes y su relación con el valor empresarial. Cuando aprovisionan y administran recursos de la nube, necesitan los siguientes datos:

  • Costos de recursos proyectados: Son las estimaciones de costos en el momento del diseño y la implementación.
  • Costos de uso de recursos en tiempo real: Son datos de costos actualizados que se pueden usar para la supervisión continua y la validación del presupuesto.
  • Costos asignados a métricas empresariales: Estadísticas sobre cómo el gasto en la nube afecta los indicadores clave de rendimiento (KPI) para permitir que los equipos identifiquen estrategias rentables.

Es posible que no todas las personas necesiten acceder a los datos de costos sin procesar. Sin embargo, promover el conocimiento de los costos en todos los roles es fundamental, ya que las decisiones individuales pueden afectar los costos.

Si promueves la visibilidad de los costos y garantizas una propiedad clara de las prácticas de administración de costos, te aseguras de que todos conozcan las implicaciones financieras de sus elecciones y de que todos contribuyan de forma activa a los objetivos de optimización de costos de la organización. Ya sea a través de un equipo de FinOps centralizado o un modelo distribuido, establecer la responsabilidad es fundamental para realizar esfuerzos eficaces de optimización de costos.

Recomendaciones

Para promover el conocimiento de los costos y garantizar que los miembros de tu equipo tengan la información de costos que necesitan para tomar decisiones fundamentadas, ten en cuenta las siguientes recomendaciones.

Proporciona visibilidad de los costos en toda la organización

Para lograr la visibilidad de los costos en toda la organización, los equipos responsables de la administración de costos pueden realizar las siguientes acciones:

  • Estandariza el cálculo de costos y la elaboración de presupuestos: Usa un método coherente para determinar los costos totales de los recursos en la nube, después de tener en cuenta los descuentos y los costos compartidos. Establece procesos de creación de presupuestos claros y estandarizados que se alineen con los objetivos de tu organización y permitan una administración de costos proactiva.
  • Usa herramientas estandarizadas de administración de costos y visibilidad: Usa herramientas adecuadas que proporcionen estadísticas en tiempo real sobre la inversión en la nube y generen instantáneas periódicas (por ejemplo, semanales) de la evolución de los costos. Estas herramientas permiten crear presupuestos, realizar previsiones y detectar oportunidades de optimización de forma proactiva. Las herramientas podrían ser herramientas del proveedor de servicios en la nube (como el panel de Facturación de Google Cloud), soluciones de terceros o soluciones de código abierto, como la solución de atribución de costos.
  • Implementa un sistema de asignación de costos: Asigna una parte del presupuesto general de la nube a cada equipo o proyecto. Esta asignación les da a los equipos una sensación de propiedad sobre el gasto en la nube y los alienta a tomar decisiones rentables dentro del presupuesto asignado.
  • Fomenta la transparencia: Alienta a los equipos a analizar las implicaciones de los costos durante los procesos de diseño y toma de decisiones. Crea un entorno seguro y de apoyo para compartir ideas y preocupaciones relacionadas con la optimización de costos. Algunas organizaciones usan mecanismos de refuerzo positivo, como tablas de clasificación o programas de reconocimiento. Si tu organización tiene restricciones para compartir datos de costos sin procesar debido a inquietudes empresariales, explora enfoques alternativos para compartir información y estadísticas de costos. Por ejemplo, considera compartir métricas agregadas (como el costo total de un entorno o una función) o métricas relativas (como el costo promedio por transacción o usuario).

Comprender cómo se facturan los recursos de la nube

Los precios de los recursos de Google Cloud pueden variar según las regiones. Algunos recursos se facturan mensualmente a un precio fijo, y otros se pueden facturar según el uso. Para comprender cómo se facturan los recursos de Google Cloud , usa la calculadora de precios deGoogle Cloud y la información de precios específica del producto (por ejemplo, precios de Google Kubernetes Engine (GKE)).

Comprende las opciones de optimización de costos basadas en recursos

Para cada tipo de recurso de nube que planees usar, explora estrategias para optimizar el uso y la eficiencia. Las estrategias incluyen el ajuste de tamaño, el ajuste de escala automático y la adopción de tecnologías sin servidores cuando corresponda. A continuación, se muestran ejemplos de opciones para optimizar costos para algunos productos de Google Cloud :

  • Cloud Run te permite configurar CPUs asignadas siempre para controlar cargas de tráfico predecibles a una fracción del precio del método de asignación predeterminado (es decir, CPUs asignadas solo durante el procesamiento de solicitudes).
  • Puedes comprar compromisos de ranuras de BigQuery para ahorrar dinero en el análisis de datos.
  • GKE proporciona métricas detalladas para ayudarte a comprender las opciones para optimizar los costos.
  • Comprende cómo los precios de red pueden afectar el costo de las transferencias de datos y cómo puedes optimizar los costos de servicios de red específicos. Por ejemplo, puedes reducir los costos de transferencia de datos para los balanceadores de cargas de aplicaciones externos con Cloud CDN o Google Cloud Armor. Para obtener más información, consulta Formas de reducir los costos de los balanceadores de cargas de aplicaciones externos.

Comprende las opciones de optimización de costos basadas en descuentos

Familiarízate con los programas de descuento que ofrece Google Cloud , como los siguientes ejemplos:

  • Descuentos por compromiso de uso (CUD): Los CUD son adecuados para los recursos que tienen un uso predecible y estable. Los CUD te permiten obtener reducciones significativas en el precio a cambio de comprometerte a usar recursos específicos durante un período (por lo general, de uno a tres años). También puedes usar la renovación automática de CUD para evitar tener que volver a comprar compromisos de forma manual cuando venzan.
  • Descuentos por uso continuo: Para ciertos productos de Google Cloud , como Compute Engine y GKE, puedes obtener créditos de descuento automáticos después de un uso continuo de recursos que supere los umbrales de duración específicos.
  • VMs Spot: Para las cargas de trabajo tolerantes a errores y flexibles, las VMs Spot pueden ayudar a reducir los costos de Compute Engine. El costo de las VMs Spot es significativamente menor que las VMs normales. Sin embargo, Compute Engine podría detener o borrar las VMs Spot de forma preventiva para recuperar capacidad. Las VMs Spot son adecuadas para trabajos por lotes que pueden tolerar la interrupción y no tienen requisitos de alta disponibilidad.
  • Descuentos para opciones de productos específicos: Algunos servicios administrados, como BigQuery, ofrecen descuentos cuando compras capacidad de procesamiento de consultas dedicada o de ajuste de escala automático.

Evalúa y elige las opciones de descuento que se alineen con las características y los patrones de uso de tu carga de trabajo.

Incorpora estimaciones de costos en los planos de arquitectura

Anima a los equipos a desarrollar planos de arquitectura que incluyan estimaciones de costos para diferentes opciones y parámetros de configuración de implementación. Esta práctica permite que los equipos comparen los costos de forma proactiva y tomen decisiones fundamentadas que se alineen con los objetivos técnicos y financieros.

Usa un conjunto de etiquetas coherente y estándar para todos tus recursos

Puedes usar etiquetas para hacer un seguimiento de los costos y para identificar y clasificar los recursos. En particular, puedes usar etiquetas para asignar costos a diferentes proyectos, departamentos o centros de costos. Definir una política de etiquetado formal que se alinee con las necesidades de los principales interesados de tu organización ayuda a que los costos sean más visibles. También puedes usar etiquetas para filtrar los datos de costo y uso de los recursos según el público objetivo.

Usa herramientas de automatización, como Terraform, para aplicar el etiquetado en cada recurso que se cree. Para mejorar aún más la visibilidad y la atribución de costos, puedes usar las herramientas que proporciona la solución de atribución de costos de código abierto.

Comparte informes de costos con los miembros del equipo

Si compartes informes de costos con los miembros de tu equipo, los empoderas para que se hagan cargo de sus gastos en la nube. Esta práctica permite tomar decisiones rentables, optimizar los costos de forma continua y realizar mejoras sistemáticas en tu modelo de asignación de costos.

Los informes de costos pueden ser de varios tipos, incluidos los siguientes:

  • Informes de costos periódicos: Los informes periódicos informan a los equipos sobre sus gastos actuales en la nube. Por lo general, estos informes pueden ser exportaciones de hojas de cálculo. Entre los métodos más eficaces, se incluyen los correos electrónicos automatizados y los paneles especializados. Para garantizar que los informes de costos proporcionen información relevante y práctica sin abrumar a los destinatarios con detalles innecesarios, los informes deben adaptarse a los públicos objetivo. Configurar informes personalizados es un paso fundamental para lograr una visibilidad y administración de costos más interactivas y en tiempo real.
  • Notificaciones automatizadas: Puedes configurar informes de costos para notificar de forma proactiva a las partes interesadas pertinentes (por ejemplo, por correo electrónico o chat) sobre anomalías de costos, umbrales de presupuesto o las oportunidades de optimización de costos. Cuando se proporciona información oportuna directamente a quienes pueden actuar en función de ella, las alertas automatizadas fomentan la acción rápida y un enfoque proactivo para la optimización de costos.
  • Paneles deGoogle Cloud : Puedes usar los paneles de facturación integrados en Google Cloud para obtener estadísticas sobre los desgloses de costos y, también, identificar oportunidades de optimización de costos. Google Cloud también proporciona el centro de FinOps para ayudarte a supervisar los ahorros y obtener recomendaciones para la optimización de costos. Un motor de IA potencia el centro de FinOps para recomendar oportunidades de optimización de costos para todos los recursos que se implementan en este momento. Para controlar el acceso a estas recomendaciones, puedes implementar el control de acceso basado en roles (RBAC).
  • Paneles personalizados: Puedes crear paneles personalizados exportando datos de costos a una base de datos de estadísticas, como BigQuery. Usa una herramienta de visualización como Data Studio para conectarte a la base de datos de estadísticas, crear informes interactivos y habilitar el control de acceso detallado a través de permisos basados en roles.
  • Informes de costos de múltiples nubes: Para las implementaciones de múltiples nubes, necesitas una vista unificada de los costos en todos los proveedores de servicios en la nube para garantizar un análisis, un presupuesto y una optimización integrales. Usa herramientas como BigQuery para centralizar y analizar los datos de costos de varios proveedores de servicios en la nube, y usa Data Studio para crear informes interactivos específicos para cada equipo.

Optimiza el uso de recursos

Este principio del pilar de optimización de costos del Google Cloud Well-Architected Framework proporciona recomendaciones para ayudarte a planificar y aprovisionar recursos que coincidan con los requisitos y los patrones de consumo de tus cargas de trabajo en la nube.

Descripción general del principio

Para optimizar el costo de tus recursos de nube, debes comprender por completo los requisitos de recursos y los patrones de carga de tus cargas de trabajo. Esta comprensión es la base de un modelo de costos bien definido que te permite prever el costo total de propiedad (TCO) y, además, identificar los generadores de costos durante todo el recorrido de adopción de la nube. Si analizas y prevés de forma proactiva la inversión en la nube, puedes tomar decisiones fundamentadas sobre el aprovisionamiento, el uso y la optimización de costos de los recursos. Este enfoque te permite controlar el gasto en la nube, evitar el aprovisionamiento excesivo y garantizar que los recursos de la nube estén alineados con las necesidades dinámicas de tus cargas de trabajo y entornos.

Recomendaciones

Para optimizar de manera eficaz el uso de los recursos de la nube, ten en cuenta las siguientes recomendaciones.

Elige recursos específicos del entorno

Cada entorno de implementación tiene diferentes requisitos de disponibilidad, confiabilidad y escalabilidad. Por ejemplo, los desarrolladores pueden preferir un entorno que les permita implementar y ejecutar aplicaciones con rapidez durante períodos breves, pero es posible que no necesiten alta disponibilidad. Por otro lado, un entorno de producción suele necesitar alta disponibilidad. Para maximizar el uso de tus recursos, define requisitos específicos del entorno según las necesidades de tu empresa. En la siguiente tabla, se enumeran ejemplos de requisitos específicos del entorno.

Entorno Requisitos
Producción
  • Alta disponibilidad
  • Rendimiento predecible
  • Estabilidad operativa
  • Seguridad con recursos sólidos
Desarrollo y pruebas
Otros entornos (como los de etapa de pruebas y QA)
  • Asignación de recursos personalizada según los requisitos específicos del entorno

Elige recursos específicos para la carga de trabajo

Cada una de tus cargas de trabajo de nube puede tener requisitos diferentes de disponibilidad, escalabilidad, seguridad y rendimiento. Para optimizar los costos, debes alinear las opciones de recursos con los requisitos específicos de cada carga de trabajo. Por ejemplo, es posible que una aplicación sin estado no requiera el mismo nivel de disponibilidad o confiabilidad que un backend con estado. En la siguiente tabla, se enumeran más ejemplos de requisitos específicos de la carga de trabajo.

Tipo de carga de trabajo Requisitos de las cargas de trabajo Opciones de recursos
Servicio crítico Disponibilidad continua, seguridad sólida y alto rendimiento Recursos premium y servicios administrados, como Spanner, para alta disponibilidad y coherencia global de los datos.
No importantes Infraestructura rentable y con ajuste de escala automático Recursos con funciones básicas y recursos efímeros, como VMs Spot.
Basada en eventos Escalado dinámico según la demanda actual de capacidad y rendimiento Servicios sin servidores, como Cloud Run y Cloud Run Functions.
Cargas de trabajo experimentales Entorno flexible y de bajo costo para el desarrollo, la iteración, las pruebas y la innovación rápidos Recursos con funciones básicas, recursos efímeros como las VM Spot y entornos de zona de pruebas con límites de inversión definidos.

Un beneficio de la nube es la oportunidad de aprovechar la potencia de procesamiento más adecuada para una carga de trabajo determinada. Algunas cargas de trabajo se desarrollan para aprovechar los conjuntos de instrucciones del procesador, y otras podrían no estar diseñadas de esta manera. Compara y perfila tus cargas de trabajo según corresponda. Categoriza tus cargas de trabajo y elige recursos específicos para cada una (por ejemplo, selecciona las familias de máquinas adecuadas para las VMs de Compute Engine). Esta práctica ayuda a optimizar los costos, habilitar la innovación y mantener el nivel de disponibilidad y rendimiento que necesitan tus cargas de trabajo.

A continuación, se incluyen ejemplos de cómo puedes implementar esta recomendación:

  • Para las cargas de trabajo esenciales que prestan servicios a usuarios distribuidos de forma global, considera usar Spanner. Spanner elimina la necesidad de realizar implementaciones de bases de datos complejas, ya que garantiza la confiabilidad y la coherencia de los datos en todas las regiones.
  • Para las cargas de trabajo con niveles de carga fluctuantes, usa el ajuste de escala automático para asegurarte de no incurrir en costos cuando la carga sea baja y, al mismo tiempo, mantener la capacidad suficiente para satisfacer la carga actual. Puedes configurar el ajuste de escala automático para muchos servicios deGoogle Cloud , incluidas las VMs de Compute Engine, los clústeres de Google Kubernetes Engine (GKE) y Cloud Run. Cuando configuras el ajuste de escala automático, puedes establecer límites máximos de escalamiento para garantizar que los costos se mantengan dentro de los presupuestos especificados.

Selecciona las regiones según los requisitos de costo

Para tus cargas de trabajo en la nube, evalúa con cuidado las regiones de Google Cloud disponibles y elige las que se alineen con tus objetivos de costos. Es posible que la región con el costo más bajo no ofrezca una latencia óptima o que no cumpla con tus requisitos de sustentabilidad. Toma decisiones fundamentadas sobre dónde implementar tus cargas de trabajo para lograr el equilibrio deseado. Puedes usar el selector de región deGoogle Cloud para comprender las compensaciones entre el costo, la sustentabilidad, la latencia y otros factores.

Usa las opciones integradas de optimización de costos

Los productos deGoogle Cloud proporcionan funciones integradas para ayudarte a optimizar el uso de recursos y controlar los costos. En la siguiente tabla, se enumeran ejemplos de funciones de optimización de costos que puedes usar en algunos productos de Google Cloud :

Producto Función de optimización de costos
Compute Engine
GKE
Cloud Storage
  • Realiza la transición automática de los datos a clases de almacenamiento de menor costo según la antigüedad de los datos o los patrones de acceso con la Administración del ciclo de vida de los objetos.
  • Mueve datos de forma dinámica a la clase de almacenamiento más rentable según los patrones de uso con Autoclass.
BigQuery
  • Reduce los costos de procesamiento de consultas para las cargas de trabajo de estado estable con los precios basados en la capacidad.
  • Optimizar el rendimiento y los costos de las consultas con técnicas de partición y agrupamiento en clústeres
Google Cloud VMware Engine

Optimiza el uso compartido de recursos

Para maximizar el uso de los recursos de la nube, puedes implementar varias aplicaciones o servicios en la misma infraestructura y, al mismo tiempo, cumplir con los requisitos de seguridad y de otro tipo de las aplicaciones. Por ejemplo, en los entornos de desarrollo y pruebas, puedes usar la misma infraestructura de nube para probar todos los componentes de una aplicación. En el entorno de producción, puedes implementar cada componente en un conjunto de recursos independiente para limitar el alcance del impacto en caso de incidentes.

A continuación, se incluyen ejemplos de cómo puedes implementar esta recomendación:

  • Usa una sola instancia de Cloud SQL para varios entornos que no sean de producción.
  • Permite que varios equipos de desarrollo compartan un clúster de GKE con la función de administración de equipos de flotas en GKE con los controles de acceso adecuados.
  • Usa GKE Autopilot para aprovechar las técnicas de optimización de costos, como el empaquetado en contenedores y el ajuste de escala automático, que GKE implementa de forma predeterminada.
  • Para las cargas de trabajo de IA y AA, ahorra costos de GPU con estrategias de uso compartido de GPU, como GPU de instancias múltiples, GPU de tiempo compartido y NVIDIA MPS.

Desarrollar y mantener arquitecturas de referencia

Crea y mantén un repositorio de arquitecturas de referencia que se adapten para cumplir con los requisitos de diferentes entornos de implementación y tipos de cargas de trabajo. Para optimizar el proceso de diseño y de implementación de proyectos individuales, un equipo, como un Centro de excelencia para la nube (CCoE), puede administrar los planos de forma centralizada. Los equipos de proyectos pueden elegir planos adecuados según criterios definidos con claridad para garantizar la coherencia de la arquitectura y la adopción de las prácticas recomendadas. Para los requisitos que son exclusivos de un proyecto, el equipo del proyecto y el equipo de arquitectura central deben colaborar para diseñar nuevas arquitecturas de referencia. Puedes compartir las arquitecturas de referencia en toda la organización para fomentar el intercambio de conocimientos y expandir el repositorio de soluciones disponibles. Este enfoque garantiza la coherencia, acelera el desarrollo, simplifica la toma de decisiones y promueve el uso eficiente de los recursos.

Revisa las arquitecturas de referencia que proporciona Google para varios casos de uso y tecnologías. Estas arquitecturas de referencia incorporan prácticas recomendadas para la selección, el dimensionamiento, la configuración y la implementación de recursos. Con estas arquitecturas de referencia, puedes acelerar el proceso de desarrollo y lograr ahorros desde el principio.

Aplica la disciplina de costos con las políticas de la organización

Considera usar políticas de la organización para limitar las ubicaciones y los productos de Google Cloud disponibles que los miembros del equipo pueden usar. Estas políticas ayudan a garantizar que los equipos se adhieran a soluciones rentables y aprovisionen recursos en ubicaciones que estén alineadas con tus objetivos de optimización de costos.

Estimar presupuestos realistas y establecer límites financieros

Desarrolla presupuestos detallados para cada proyecto, carga de trabajo y entorno de implementación. Asegúrate de que los presupuestos cubran todos los aspectos de las operaciones en la nube, incluidos los costos de infraestructura, las licencias de software, el personal y el crecimiento previsto. Para evitar gastos excesivos y garantizar la alineación con tus objetivos financieros, establece límites o umbrales de inversión claros para proyectos, servicios o recursos específicos. Supervisa los gastos en la nube con regularidad en función de estos límites. Puedes usar las alertas de cuota proactivas para identificar posibles excesos de costos de forma anticipada y tomar medidas correctivas oportunas.

Además de establecer presupuestos, puedes usar cuotas y límites para ayudar a aplicar la disciplina de costos y evitar aumentos repentinos inesperados en los gastos. Puedes ejercer un control detallado sobre el consumo de recursos estableciendo cuotas en varios niveles, incluidos proyectos, servicios y, incluso, tipos de recursos específicos.

A continuación, se incluyen ejemplos de cómo puedes implementar esta recomendación:

  • Cuotas a nivel de proyecto: Establece límites de inversión o cuotas de recursos a nivel de proyecto para establecer límites financieros generales y controlar el consumo de recursos en todos los servicios del proyecto.
  • Cuotas específicas del servicio: Configura cuotas para servicios específicos de Google Cloud, como Compute Engine o BigQuery, para limitar la cantidad de instancias, CPU o capacidad de almacenamiento que se pueden aprovisionar.
  • Cuotas específicas del tipo de recurso: Aplica cuotas a tipos de recursos individuales, como VMs de Compute Engine, buckets de Cloud Storage, instancias de Cloud Run o nodos de GKE, para restringir su uso y evitar sobrecostos inesperados.
  • Alertas de cuota: Recibe notificaciones cuando el uso de la cuota (a nivel del proyecto) alcance un porcentaje del valor máximo.

Si usas cuotas y límites junto con la elaboración de presupuestos y la supervisión, puedes crear un enfoque proactivo y de varias capas para el control de costos. Este enfoque ayuda a garantizar que tu inversión en la nube se mantenga dentro de los límites definidos y se alinee con tus objetivos comerciales. Recuerda que estos controles de costos no son permanentes ni rígidos. Para garantizar que los controles de costos sigan alineados con los estándares actuales de la industria y reflejen las necesidades cambiantes de tu empresa, debes revisar los controles con regularidad y ajustarlos para incluir nuevas tecnologías y prácticas recomendadas.

Optimiza continuamente

Este principio del pilar de optimización de costos del Framework de buena arquitectura deGoogle Cloud proporciona recomendaciones para ayudarte a optimizar el costo de tus implementaciones en la nube en función de los objetivos comerciales en constante cambio y evolución.

A medida que tu empresa crece y evoluciona, tus cargas de trabajo en la nube deben adaptarse a los cambios en los requisitos de recursos y los patrones de uso. Para obtener el máximo valor de tu gasto en la nube, debes mantener la rentabilidad y, al mismo tiempo, seguir respaldando los objetivos comerciales. Esto requiere un enfoque proactivo y adaptable que se centre en la mejora y la optimización continuas.

Descripción general del principio

Para optimizar los costos de forma continua, debes supervisar y analizar de forma proactiva tu entorno de nube y realizar los ajustes adecuados para cumplir con los requisitos actuales. Enfoca tus esfuerzos de supervisión en los indicadores clave de rendimiento (KPI) que afectan directamente la experiencia de los usuarios finales, se alinean con tus objetivos comerciales y proporcionan estadísticas para la mejora continua. Este enfoque te permite identificar y abordar las ineficiencias, adaptarte a las necesidades cambiantes y alinear de forma continua la inversión en la nube con los objetivos comerciales estratégicos. Para equilibrar la observabilidad integral con la rentabilidad, comprende los costos y los beneficios de supervisar el uso de recursos y usa estrategias adecuadas de mejora y optimización de procesos.

Recomendaciones

Para supervisar de forma eficaz tu entorno de Google Cloud y optimizar los costos de forma continua, ten en cuenta las siguientes recomendaciones.

Enfócate en las métricas relevantes para la empresa

La supervisión eficaz comienza con la identificación de las métricas más importantes para tu empresa y tus clientes. Estas métricas incluyen la siguiente información:

  • Métricas de experiencia del usuario: Las métricas de latencia, tasas de error, capacidad de procesamiento y satisfacción del cliente son útiles para comprender la experiencia de los usuarios finales cuando usan tus aplicaciones.
  • Métricas de resultados empresariales: Los ingresos, el crecimiento de los clientes y la participación se pueden correlacionar con el uso de recursos para identificar oportunidades de optimización de costos.
  • Métricas de DevOps Research & Assessment (DORA): Las métricas como la frecuencia de implementación, el plazo de entrega para los cambios, el porcentaje de fallas de cambio y el tiempo de restablecimiento proporcionan estadísticas sobre la eficiencia y la confiabilidad de tu proceso de entrega de software. Si mejoras estas métricas, puedes aumentar la productividad, reducir el tiempo de inactividad y optimizar los costos.
  • Métricas de la ingeniería de confiabilidad de sitios (SRE): Los porcentajes de error aceptables ayudan a los equipos a cuantificar y administrar el nivel aceptable de interrupción del servicio. Cuando se establecen expectativas claras de confiabilidad, los porcentajes de error aceptable permiten que los equipos innoven y, además, implementen cambios con más confianza, ya que conocen su margen de seguridad. Este enfoque proactivo promueve un equilibrio entre la innovación y la estabilidad, lo que ayuda a evitar costos operativos excesivos asociados con interrupciones importantes o tiempos de inactividad prolongados.

Usa la observabilidad para optimizar los recursos

Las siguientes son recomendaciones para usar la observabilidad con el objetivo de identificar cuellos de botella y recursos infrautilizados en tus implementaciones de Cloud:

  • Supervisa el uso de recursos: Usa métricas de uso de recursos para identificar los recursos deGoogle Cloud que se subutilizan. Por ejemplo, usa métricas como el uso de CPU y memoria para identificar los recursos de VM inactivas. En Google Kubernetes Engine (GKE), puedes ver un desglose detallado de los costos y las métricas de optimización relacionadas con los costos. En el caso de Google Cloud VMware Engine, revisa el uso de recursos para optimizar los CUD, el consumo de almacenamiento y el ajuste de tamaño de ESXi.
  • Usa las recomendaciones de la nube: Active Assist es una cartera de herramientas inteligentes que te ayudan a optimizar tus operaciones en la nube. Estas herramientas proporcionan recomendaciones prácticas para reducir costos, aumentar el rendimiento, mejorar la seguridad y, además, tomar decisiones centradas en la sustentabilidad. Por ejemplo, las estadísticas de ajuste de tamaño de las VMs pueden ayudar a optimizar la asignación de recursos y evitar gastos innecesarios.
  • Correlaciona el uso de recursos con el rendimiento: Analiza la relación entre el uso de recursos y el rendimiento de la aplicación para determinar si puedes cambiar a recursos menos costosos sin afectar la experiencia del usuario.

Equilibra las necesidades de solución de problemas con el costo

Los datos de observabilidad detallados pueden ayudar a diagnosticar y solucionar problemas. Sin embargo, almacenar cantidades excesivas de datos de observabilidad o exportar datos innecesarios a herramientas de supervisión externas puede generar costos innecesarios. Para solucionar problemas de manera eficiente, ten en cuenta las siguientes recomendaciones:

  • Recopila datos suficientes para solucionar problemas: Asegúrate de que tu solución de supervisión capture suficientes datos para diagnosticar y resolver problemas de forma eficiente cuando surjan. Estos datos pueden incluir registros, seguimientos y métricas en varios niveles de detalle.
  • Usa el muestreo y la agregación: Equilibra la necesidad de datos detallados con las consideraciones de costos usando técnicas de muestreo y agregación. Este enfoque te permite recopilar datos representativos sin incurrir en costos de almacenamiento excesivos.
  • Comprende los modelos de precios de tus herramientas y servicios de supervisión: Evalúa diferentes soluciones de supervisión y elige opciones que se alineen con las necesidades, el presupuesto y los patrones de uso específicos de tu proyecto. Ten en cuenta factores como el volumen de datos, los requisitos de retención y las funciones necesarias cuando hagas tu selección.
  • Revisa tu configuración de supervisión con regularidad: Quita las métricas o los registros innecesarios para evitar recopilar datos excesivos.

Adaptar la recopilación de datos a los roles y establecer políticas de retención específicas para cada rol

Considera las necesidades de datos específicas de los diferentes roles. Por ejemplo, es posible que los desarrolladores necesiten principalmente acceso a los seguimientos y los registros a nivel de la aplicación, mientras que los administradores de TI pueden enfocarse en los registros del sistema y las métricas de infraestructura. Si adaptas la recopilación de datos, puedes reducir los costos de almacenamiento innecesarios y evitar abrumar a los usuarios con información irrelevante.

Además, puedes definir políticas de retención según las necesidades de cada rol y los requisitos normativos. Por ejemplo, es posible que los desarrolladores necesiten acceder a registros detallados durante un período más corto, mientras que los analistas financieros podrían requerir datos a más largo plazo.

Considera los requisitos normativos y de cumplimiento

En algunas industrias, los requisitos regulatorios exigen la retención de datos. Para evitar riesgos legales y financieros, debes asegurarte de que tus prácticas de supervisión y retención de datos te ayuden a cumplir con las reglamentaciones pertinentes. Al mismo tiempo, debes mantener la rentabilidad. Ten en cuenta las siguientes recomendaciones:

  • Determina los requisitos específicos de retención de datos para tu industria o región, y asegúrate de que tu estrategia de supervisión cumpla con los requisitos de esos requisitos.
  • Implementa mecanismos adecuados de archivo y recuperación de datos para satisfacer las necesidades de auditoría y cumplimiento, y, al mismo tiempo, minimizar los costos de almacenamiento.

Implementa alertas inteligentes

Las alertas ayudan a detectar y resolver problemas de manera oportuna. Sin embargo, es necesario un equilibrio entre un enfoque que te mantenga informado y uno que te abrume con notificaciones. Si diseñas sistemas de alertas inteligentes, puedes priorizar los problemas críticos que tienen un mayor impacto en el negocio. Ten en cuenta las siguientes recomendaciones:

  • Prioriza los problemas que afectan a los clientes: Diseña alertas que se activen con rapidez para los problemas que afectan directamente la experiencia del cliente, como interrupciones del sitio web, tiempos de respuesta lentos o fallas en las transacciones.
  • Ajusta para problemas temporales: Usa umbrales y mecanismos de retraso adecuados para evitar alertas innecesarias por problemas temporales o problemas del sistema de reparación automática que no afectan a los clientes.
  • Personaliza la gravedad de las alertas: Asegúrate de que los problemas más urgentes reciban atención inmediata diferenciando entre las alertas críticas y las no críticas.
  • Usa los canales de notificaciones con prudencia: Elige los canales adecuados para las notificaciones de alertas (notificación por correo electrónico, SMS o buscapersonas) según la gravedad y la urgencia de las alertas.