Este tema demuestra cómo utilizar Cost Insight en escenarios empresariales reales para calcular con mayor precisión la asignación de costos del negocio en una arquitectura cloud-native. Este enfoque ayuda a las empresas a gestionar y controlar los costos de manera efectiva, al tiempo que aprovechan la flexibilidad y eficiencia de las tecnologías cloud-native.
Requisitos previos
Create a cluster con versión 1.18.8 o posterior. Para obtener más información, consulte Manually upgrade a cluster.
Asegúrese de que la duración del almacenamiento de métricas de Prometheus sea superior a su ciclo de gobernanza de costos. Para obtener más información, consulte Determine the cost governance cycle y Adjust the metric storage duration.
Contexto
En los escenarios tradicionales de gobernanza de TI, cada unidad de negocio suele utilizar un conjunto dedicado de recursos en la nube, como nodos, instancias de Server Load Balancer y recursos de almacenamiento. Estos recursos se facturan de forma independiente, lo que facilita el seguimiento de costos.
En la era cloud-native, los patrones de uso de recursos han cambiado. Un solo nodo puede ejecutar contenedores de múltiples negocios simultáneamente, y los recursos de red y almacenamiento pueden compartirse entre aplicaciones. Este modelo de recursos compartidos aumenta la complejidad de la asignación de costos, lo que dificulta atribuirlos claramente a unidades de negocio individuales y complica el análisis y la gestión de costos.
Para abordar esta situación, ACK proporciona un cost data model de propósito general que le ayuda a calcular la asignación de costos del negocio con mayor precisión. La implementación funciona de la siguiente manera:
Primero, se analizan los recursos (como CPU, memoria y almacenamiento) utilizados por cada pod y se calcula su costo simulado.
Luego, se asigna la factura total del clúster —incluidos todos los cargos por recursos— a cada pod de forma proporcional según sus costos simulados. Esta división proporcional determina la parte de la factura total del clúster que corresponde a cada pod.
Finalmente, se suman los costos asignados de todos los pods asociados a un negocio específico durante un periodo determinado para obtener el costo total de dicha unidad de negocio.
Ejemplo de escenario
Como se muestra en el siguiente diagrama, una empresa despliega todas sus cargas de trabajo en un único clúster de ACK. Su estructura organizativa incluye cuatro departamentos: el Departamento A gestiona la Aplicación A; los Departamentos B y C gestionan conjuntamente la Aplicación B; y el Departamento D gestiona las Aplicaciones C y D.
Las Aplicaciones A y B son servicios web que requieren cargas de trabajo estables y se programan en instancias ECS de subscription. Las Aplicaciones C y D manejan cargas de procesamiento de datos y DataAnalysis con demandas elásticas de recursos, y se programan en instancias ECS pay-as-you-go.
Uso de Cost Insight para la gestión y optimización de costos
Los siguientes pasos muestran cómo utilizar el panel visual de Cost Insight para consultar los costos por departamento y aplicación.
Paso 1: Determinar el ciclo de gobernanza de costos
-
Ciclo de visualización de costos del clúster:
Las instancias ECS tienen dos ciclos de facturación: las instancias de subscription se facturan mensual o semanalmente, mientras que las instancias pay-as-you-go se facturan por hora. Dado que este escenario utiliza ambos tipos de facturación, establezca el ciclo de visualización a nivel mensual al revisar los costos totales del clúster. Para simplificar la comparación directa y el análisis de los datos de facturación, utilice la fecha de facturación de ECS como fechas de inicio y fin para la gobernanza de costos.
-
Ciclo de visualización de costos por departamento y aplicación:
Los Departamentos A, B y C ejecutan cargas de trabajo en nodos de subscription, por lo que su ciclo de gobernanza de costos es mensual.
El Departamento D ejecuta cargas de trabajo en nodos pay-as-you-go, por lo que su ciclo de gobernanza de costos es diario.
Determine el ciclo de visualización de costos de la aplicación en función del departamento al que pertenece.
Paso 2: Elegir una estrategia de asignación de costos según el tipo de carga de trabajo
Al calcular la asignación de costos del negocio, ACK estima el costo de los pods asociados a cada negocio. ACK ofrece dos estrategias de estimación: recurso único y recurso híbrido ponderado.
|
Estrategia de estimación |
Subestrategia |
Caso de uso |
|
Política de recurso único para recursos de CPU y memoria |
Escenarios donde un tipo de recurso se utiliza significativamente más que otro, o donde las cargas de trabajo del clúster solicitan predominantemente un tipo de recurso. |
|
|
Estrategia híbrida de CPU-memoria (pesos recomendados) y estrategia híbrida de CPU-memoria (pesos personalizados). |
Escenarios donde aplicaciones intensivas en CPU y optimizadas para memoria se mezclan en el clúster, o donde los niveles de utilización de CPU y memoria son similares. |
De forma predeterminada, utilice la estrategia de estimación de recurso único cuando las cargas de trabajo del clúster soliciten predominantemente un tipo de recurso. Por ejemplo, si todas las cargas de trabajo son intensivas en CPU, seleccione la estrategia de solo CPU.
Para obtener más orientación sobre la selección y el análisis de estrategias, consulte Cost estimation strategies.
Paso 3: Consultar los costos del clúster
Inicie sesión en la consola de ACK. En el panel de navegación izquierdo, haga clic en Clusters.
En la página Clusters, haga clic en el nombre de su clúster. En el panel de navegación izquierdo, haga clic en .
-
En la página Cost Insights, vaya a la pestaña Cluster Dimension. Configure los siguientes filtros y revise los resultados de costos.
Actual/Original Bill: Seleccione una opción de cálculo de costos del clúster. En este ejemplo, establézcalo en Actual post-discount bill cost.
Rango de tiempo: En este ejemplo, establézcalo en 2024-05-01 00:00:00 to 2024-05-31 23:59:59.
En la sección Month-to-date spending – Actual post-discount bill cost, consulte el costo total del clúster para mayo de 2024. Después de aplicar estas configuraciones, la página muestra una descripción general del gasto del clúster, incluidas tarjetas de métricas para Yesterday’s cluster cost, Day-over-day spending change, Tomorrow’s predicted cost, Week-to-date spending, Month-to-date spending y Projected month-end total, junto con un Cluster spending and capacity trend graph. El valor mostrado en Month-to-date spending – Actual post-discount bill cost representa el costo total real del clúster para el mes.
Paso 4: Consultar los costos del departamento
-
En la página Cost Insights, vaya a la pestaña Namespace Dimension. Configure los siguientes filtros y revise los resultados de asignación de costos.
Namespace (Namespace): Seleccione el namespace correspondiente al departamento. En este ejemplo, utilice el namespace predeterminado default.
Actual/Original Bill: Seleccione una opción de cálculo de costos del namespace. En este ejemplo, establézcalo en Actual post-discount bill cost.
-
Rango de tiempo: En este ejemplo, establézcalo en 2024-05-31 00:00:00 to 2024-05-31 23:59:59.
En este ejemplo, las cargas de trabajo del Departamento D tienen demandas variables de recursos. También puede ajustar el rango de tiempo a un día específico —como el 31 de mayo de 2024— para consultar los costos diarios del Departamento D.
A continuación, en la sección Namespace cost allocation, consulte el costo asignado del departamento.
Paso 5: Consultar los costos de la aplicación
-
En la página Cost Insights, vaya a la pestaña Application Dimension. Configure los siguientes filtros y revise el gasto de la aplicación.
Namespace (Namespace): Seleccione el namespace donde se ejecuta la aplicación. En este ejemplo, utilice el namespace predeterminado default.
Label selector: Introduzca la etiqueta asociada con la aplicación.
-
Rango de tiempo: En este ejemplo, establézcalo en 2024-05-31 10:00 to 2024-05-31 16:59.
En este ejemplo, las Aplicaciones C y D tienen costos diarios variables debido a las características de sus cargas de trabajo. Por lo tanto, reduzca el rango de tiempo a una ventana específica —como de 10:00 a 16:59— para consultar los costos durante ese periodo.
A continuación, en la sección Application spending, consulte los resultados.
Esta página muestra las siguientes tarjetas de métricas de monitoreo: Application spending (costo total de la aplicación), Current replica count (réplicas actuales/máximas/mínimas), Compute resource utilization (CPU, memoria, memoria GPU), Hourly node cost (costo por nodo), Application runtime / total core-hours consumed y Application’s share of cluster/namespace resource utilization.
Preguntas frecuentes
Después de habilitar Cost Insight, ¿por qué no hay datos al consultar el gasto del mes o semana pasados?
Cost Insight comienza a registrar datos solo después de habilitar la función. No existen datos para periodos anteriores a la activación.
Al consultar el gasto histórico, ¿por qué el monto mostrado es inferior a mi gasto real?
ARMS Prometheus almacena métricas durante 15 días de forma predeterminada. Asegúrese de que el rango de tiempo seleccionado se encuentre dentro de esta ventana de almacenamiento. Si necesita un periodo de análisis de costos más largo, consulte Adjust the metric storage duration.
Referencias
Además del panel visual de Cost Insight, también puede use the Allocation API para recuperar las asignaciones de costos por departamento y aplicación desde la factura del clúster. La API de asignación le permite agregar los costos del negocio por namespace, controlador, etiqueta, pod y otras dimensiones.
Para obtener explicaciones detalladas de las métricas de Cost Insight, consulte Cluster-level cost analysis, Namespace-level cost analysis, Node pool-level cost analysis y Application-level cost analysis.
Si desea simplificar la configuración de solicitudes y límites para contenedores, utilice la función Resource Profiling para obtener recomendaciones de recursos a nivel de contenedor y ajustar las configuraciones de su aplicación.
En escenarios multinube y de nube híbrida, los recursos pueden provenir de múltiples proveedores de nube o incluso de entornos on-premises, lo que dificulta el monitoreo unificado de recursos y la gestión de costos. Para obtener detalles sobre el uso de ACK One para la gestión de costos en nube híbrida, consulte Cluster cost insight.