Para utilizar Google Cloud Cost Management en Datadog, sigue estos pasos:
- Configura la integración Google Cloud Platform.
- Configura la exportación de costes detallados de uso con los permisos necesarios (API de Google Service, acceso a la exportación de proyectos y acceso a conjuntos de datos de BigQuery).
- Crea o selecciona un bucket de Google Cloud Storage con los permisos necesarios (acceso a buckets).
Configuración
Ve a Configuración y selecciona una integración Google Cloud Platform.
Si no ves la cuenta de servicio que buscas en la lista, ve a la integración Google Cloud Platform para configurarla.
La integración Datadog Google Cloud Platform permite a Cloud Cost monitorizar automáticamente todos los proyectos a los que esta cuenta de servicio tiene acceso.
Para limitar los hosts de monitorización de infraestructuras a estos proyectos, aplica etiquetas (tags) a los hosts. Luego, decide si las etiquetas deben incluirse o excluirse de la monitorización, en la sección Limitar los filtros para la recopilación de métricas de la página de la integración.
Habilitar la exportación de costes detallados de uso
Los
datos de costes detallados de uso proporcionan toda la información incluida en los datos de costes de uso estándar, junto con campos adicionales que proporcionan datos granulares de costes a nivel de los recursos.
- Ve a Exportación de la facturación en la consola de Google Cloud Facturación.
- Habilita la exportación de costes detallados de uso (selecciona o crea un proyecto y un conjunto de datos de BigQuery).
- Documenta el
Billing Account ID
de la cuenta de facturación donde se configuró la exportación, así como la exportación Project ID
y Dataset Name
.
La exportación de conjuntos de datos de facturación de BigQuery recién creada sólo contiene los datos de los dos meses más recientes. Estos datos pueden tardar uno o dos días en rellenarse en BigQuery.
Habilitar las API de Google Service
Los siguientes permisos permiten a Datadog acceder a la exportación de la facturación y transferirla al bucket de almacenamiento mediante una consulta programada a BigQuery.
Habilita la API de BigQuery.
- En la consola de Google Cloud, ve a la página del selector de proyectos y selecciona tu proyecto de Google Cloud.
- Habilita la facturación en tu proyecto para todas las transferencias.
Habilita el servicio de transferencia de datos de BigQuery.
- Abre la página de la API de transferencia de datos de BigQuery en la biblioteca de la API.
- En el menú desplegable, selecciona el proyecto que contiene la cuenta de servicio.
- Haz clic en el botón ENABLE (Habilitar).
Nota: La API de transferencia de datos de BigQuery debe estar habilitada en el proyecto de Google que contiene la cuenta de servicio.
Configurar el acceso a la exportación de proyectos
Añade la cuenta de servicio como elemento principal en el recurso del proyecto de exportación de conjuntos de datos:
- Ve a la página de IAM en la consola de Google Cloud y selecciona el proyecto de exportación de conjuntos de datos.
- Selecciona la cuenta de servicio como elemento principal.
- Selecciona un rol con los siguientes permisos para otorgar desde la lista desplegable:
bigquery.jobs.create
bigquery.transfers.get
bigquery.transfers.update
Nota: Puede ser un rol personalizado o puedes utilizar el rol de Google Cloud roles/bigquery.admin
existente.
Configurar el acceso a la exportación de conjuntos de datos de BigQuery
Añade la cuenta de servicio como elemento principal en el recurso de exportación de conjuntos de datos de BigQuery:
- En el panel del Explorador de la página de BigQuery, expande tu proyecto y selecciona la exportación de conjuntos de datos de BigQuery.
- Haz clic en Sharing > Permissions (Compartir > Permisos) y luego en add principal (añadir elemento principal).
- En el campo de nuevos elementos principales, introduce la cuenta de servicio.
- Utilizando la lista de selección de un rol, asigna un rol con los siguientes permisos:
bigquery.datasets.get
bigquery.tables.create
bigquery.tables.delete
bigquery.tables.export
bigquery.tables.get
bigquery.tables.getData
bigquery.tables.list
bigquery.tables.update
bigquery.tables.updateData
Nota: Puede ser un rol personalizado o puedes utilizar el rol de Google Cloud roles/bigquery.dataEditor
existente.
Crear o seleccionar un bucket de Google Cloud Storage
Utiliza un bucket de Google Cloud Storage existente o crea uno nuevo.
Los datos se extraen periódicamente de tu conjunto de datos detallados de uso de BigQuery y se transfieren al bucket seleccionado, que tiene el prefijo datadog_cloud_cost_detailed_usage_export
.
Nota: El bucket debe estar ubicado junto al conjunto de datos de exportación de BigQuery.
Configurar el acceso al bucket
Añade la cuenta de servicio como elemento principal en el recurso del bucket de GCS:
- Accede a la página de buckets de Cloud Storage en la consola de Google Cloud y selecciona tu bucket.
- Selecciona la pestaña de permisos y haz clic en el botón grant access (conceder acceso).
- En el campo de nuevos elementos principales, introduce la cuenta de servicio.
- Asigna un rol con los siguientes permisos:
storage.buckets.get
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
Nota: Puede ser un rol personalizado o puedes utilizar los roles de Google Cloud roles/storage.legacyObjectReader
y roles/storage.legacyBucketWriter
existentes.
(Opcional) Configura la autorización de servicios entre proyectos:
Si tu cuenta de servicio integrada ya existe en un proyecto de Google Cloud Platform diferente al de exportación del conjunto de datos de la facturación, debes conceder una autorización de cuenta de servicio entre proyectos:
Activa la creación del agente de servicio siguiendo la documentación oficial y utilizando los siguientes valores:
ENDPOINT: bigquerydatatransfer.googleapis.com
TIPO_DE_RECURSO: project
ID_DE_RECURSO: exportar el proyecto de conjunto de datos
Esto crea un nuevo agente de servicio similar a service-<billing project number>@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com
.
Añade el rol de cuenta de servicio de transferencia de datos de BigQuery creado por el activador como elemento principal en tu cuenta de servicio.
Asígnale el rol roles/iam.serviceAccountTokenCreator
.
Configurar Cloud Cost
Sigue los pasos indicados en Configuración.
Nota: Los datos pueden tardar entre 48 y 72 horas en estabilizarse en Datadog.
Tipos de costes
Puedes visualizar tus datos ingeridos utilizando los siguientes tipos de costes:
Tipo de coste | Descripción |
---|
gcp.cost.amortized | Coste total de los recursos asignados en el momento del uso en un intervalo. Los costes incluyen los créditos de promoción, así como los créditos de descuento por compromiso de uso. |
gcp.cost.amortized.shared.resources.allocated | Todos tus costes de Google Cloud Platform amortizados, con desgloses e información adicional de las cargas de trabajo de contenedor. Requiere la asignación de costes de contenedor. |
gcp.cost.ondemand | Coste total público y a la carta de los recursos antes de aplicar los descuentos públicos y privados en un intervalo. |
Etiquetas predefinidas
Datadog añade etiquetas a los datos de costes ingeridos para ayudarte a desglosar y asignar mejor tus costes. Estas etiquetas provienen de tu informe de costes detallados de uso y facilitan la detección y la comprensión de los datos de costes.
Las siguientes etiquetas predefinidas están disponibles para filtrar y agrupar datos:
Nombre de la etiqueta | Descripción de la etiqueta |
---|
google_product | Servicio Google que se está facturando. |
google_cost_type | Tipo de cargo cubierto por esta partida (por ejemplo, regular, impuesto, ajuste o error de redondeo). |
google_usage_type | Detalles de uso de la partida (por ejemplo, Almacenamiento estándar US). |
google_location | Localización asociada a la partida a nivel de varias regiones, país, región o zona. |
google_region | Región asociada a la partida. |
google_zone | Zona de disponibilidad asociada a la partida. |
google_pricing_usage_unit | Unidad de precio utilizada para calcular el coste de uso (por ejemplo, gibibyte, tebibyte o año). |
google_is_unused_reservation | Si el uso se reservó pero no se utilizó. |
service_description | Servicio Google Cloud (como Compute Engine o BigQuery). |
project_id | ID del proyecto de Google Cloud que generó los datos de facturación de Cloud. |
project_name | Nombre del proyecto de Google Cloud que generó los datos de facturación de Cloud. |
cost_type | Tipo de coste que representa esta partida: regular , tax , adjustment o rounding error . |
sku_description | Descripción del tipo de recurso utilizado, que describe los detalles de uso del recurso. |
resource_name | Nombre que los clientes añaden a los recursos. Puede que no aparezca en todos los recursos. |
global_resource_name | Identificador de recurso único global generado por Google Cloud. |
Correlación entre costes y observabilidad
Visualizar los costes en el contexto de los datos de observabilidad es importante para comprender cómo afectan los cambios de infraestructura a los costes, identificar por qué cambian los costes y optimizar la infraestructura, tanto en los costes como en el rendimiento. Datadog actualiza el recurso identificando etiquetas en los datos de costes de los principales productos Google para simplificar la correlación entre la observabilidad y las métricas de costes.
Por ejemplo, para ver el coste y el uso de cada base de datos Cloud SQL, puedes crear una tabla con gcp.cost.amortized
, gcp.cloudsql.database.cpu.utilization
y gcp.cloudsql.database.memory.utilization
(o cualquier otra métrica de Cloud SQL) y agrupar por database_id
. O, para ver el uso y los costes de Cloud Function uno al lado del otro, puedes hacer un gráfico con gcp.cloudfunctions.function.execution_count
y gcp.cost.amortized
agrupados por function_name
.
Están disponibles las siguientes etiquetas predefinidas:
Producto Google | Etiqueta(s) |
---|
Compute Engine | instance_id , instance-type |
Cloud Functions | function_name |
Cloud Run | job_name , service_name |
Cloud SQL | database_id |
Cloud Spanner | instance_id |
App Engine | module_id |
BigQuery | project_id , dataset_id |
Kubernetes Engine | cluster_name |
Asignación de contenedor
Las métricas de Asignación de contenedor contienen todos los mismos costes que las métricas de Google Cloud Platform, pero con desgloses e información adicional de las cargas de trabajo de contenedor. Para obtener más información, consulta Asignación de costes de contenedor.
Referencias adicionales
Más enlaces, artículos y documentación útiles: