Resumen

Para usar Cloud Cost Management en Datadog, siga estos pasos:

  1. Configure la Integración de Google Cloud Platform
  2. Configure la exportación de costos de uso detallados con los permisos necesarios (Google Service APIs, acceso al proyecto de exportación y acceso al conjunto de datos de BigQuery)
  3. Cree o seleccione un bucket de Google Cloud Storage con los permisos necesarios (acceso al bucket)

Configuración

Puede configurar usando la API, Terraform, o directamente en Datadog siguiendo las instrucciones a continuación.

Configure la integración de Google Cloud Platform

Navegue a Setup & Configuration, agregue una cuenta de Google Cloud Platform y siga los pasos para configurar la integración de Google Cloud Platform.

La integración de Google Cloud Platform de Datadog permite que Cloud Cost realice el seguimiento automático de todos los proyectos a los que esta cuenta de servicio tiene acceso. Para limitar los hosts de monitoreo de infraestructura para estos proyectos, aplique etiquetas a los hosts. Luego defina si las etiquetas deben ser incluidas o excluidas del monitoreo en la sección Limit Metric Collection Filters de la página de integración.
Limite la sección de filtros de colección de métricas configurada en la página de integración de Google Cloud Platform

Habilite la exportación detallada de costos de uso

Los datos de costos de uso detallados proporcionan toda la información incluida en los datos estándar de costos de uso, junto con campos adicionales que ofrecen datos de costos a nivel de recurso.
  1. Navegar a Exportación de Facturación en la consola de Google Cloud Facturación.
  2. Habilitar la exportación de Costo de Uso Detallado (seleccionar o crear un proyecto y un conjunto de datos de BigQuery).
  3. Documente el Billing Account ID para la cuenta de facturación donde se configuró la exportación, así como la exportación Project ID y Dataset Name.
Información del proyecto de Google Cloud y del conjunto de datos resaltada

Los conjuntos de datos de exportación de facturación de BigQuery recién creados solo contienen los dos meses más recientes de datos. Puede tardar uno o dos días en que estos datos se completen en BigQuery.

Habilitar las API de Servicios de Google

Los siguientes permisos permiten a Datadog acceder y transferir la exportación de facturación al bucket de almacenamiento utilizando una consulta programada de BigQuery.

  • Habilitar la API de BigQuery.

    1. En la consola de Google Cloud, vaya a la página de selección de proyecto y seleccione su proyecto de Google Cloud.
    2. Habilite la facturación en su proyecto para todas las transferencias.
  • Habilite el Servicio de Transferencia de Datos de BigQuery.

    1. Abra la página de la API de Transferencia de Datos de BigQuery en la biblioteca de API.
    2. En el menú desplegable, seleccione el proyecto que contiene la cuenta de servicio.
    3. Haga clic en el botón ENABLE.

    Nota: La API de Transferencia de Datos de BigQuery debe habilitarse en el proyecto de Google que contiene la cuenta de servicio.

Formulario de configuración de Cloud Cost Management en modo Terraform

Defina detalles de configuración

Ingrese los siguientes detalles para su configuración:

  • Bucket de almacenamiento de GCP: Seleccione para crear un bucket de almacenamiento, o seleccione No para usar un bucket existente.

    Nota: Si utiliza un bucket existente, verifique que el bucket esté ubicado junto con el conjunto de datos de exportación de BigQuery.

  • Nombre del bucket: El nombre de su nuevo bucket de almacenamiento de GCP o de uno existente.

  • Región: La región de GCP de su bucket. Por ejemplo, northamerica-northeast1.

  • ID de cuenta de facturación: El ID de la cuenta de facturación que reporta los costos de su exportación de uso.

  • Nombre e ID del proyecto de exportación: El nombre y el ID de su proyecto de exportación.

  • Nombre e ID del conjunto de datos de exportación: El nombre y el ID de su conjunto de datos de exportación.

Crear exportación de costos y habilitar APIs de Google Service

Complete los pasos de Habilitar exportación de costos de uso detallado y Habilitar APIs de Google Service anteriores, luego regrese a CCM.

Copie el HCL de Terraform generado y aplique los cambios

En la interfaz de usuario de configuración de Terraform de CCM, siga las instrucciones en el paso Aplicar configuración de Terraform. Resuelva cualquier problema que aparezca al ejecutar terraform plan o terraform apply antes de regresar a CCM para confirmar la creación de la cuenta.

Formulario de configuración de Cloud Cost Management en modo manual

Configure el acceso al proyecto de exportación

Agregue la cuenta de servicio como un principal en el recurso del proyecto del conjunto de datos de exportación:

  1. Navegue a la página de IAM en la consola de Google Cloud y seleccione el proyecto del conjunto de datos de exportación.
  2. Seleccione la cuenta de servicio como un principal.
  3. Seleccione un rol con los siguientes permisos para otorgar desde la lista desplegable:
  • bigquery.jobs.create
  • bigquery.transfers.get
  • bigquery.transfers.update

Nota: Esto puede ser un rol personalizado, o puede usar el rol existente de Google Cloud roles/bigquery.admin.

Configure el acceso al conjunto de datos de exportación de BigQuery

Agregue la cuenta de servicio como un principal en el recurso del conjunto de datos de exportación de BigQuery:

  1. En el panel del explorador en la página de BigQuery, expanda su proyecto y seleccione el conjunto de datos de exportación de BigQuery.
  2. Haz clic en Sharing > Permissions y luego en add principal.
  3. En el nuevo campo de principales, ingrese la cuenta de servicio.
  4. Usando la lista de selección de roles, asigne 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: Esto puede ser un rol personalizado, o puede usar el rol existente de Google Cloud roles/bigquery.dataEditor.

Configure el acceso al bucket

Agregue la cuenta de servicio como un principal en el recurso del bucket de GCS:

  1. Navegue a la página de Buckets de Cloud Storage en la consola de Google Cloud y seleccione su bucket.
  2. Seleccione la pestaña de permisos y haga clic en el botón grant access.
  3. En el nuevo campo de principales, ingrese la cuenta de servicio.
  4. Asigne un rol con los siguientes permisos:
    • storage.buckets.get
    • storage.objects.create
    • storage.objects.delete
    • storage.objects.get
    • storage.objects.list

Nota: Esto puede ser un rol personalizado, o puedes usar los roles existentes de Google Cloud roles/storage.legacyObjectReader y roles/storage.legacyBucketWriter.

Cree o seleccione un bucket de Google Cloud Storage

Cloud Cost Management utiliza un bucket de GCP para recibir datos extraídos de su conjunto de datos de costos de uso detallado de BigQuery (prefijado con datadog_cloud_cost_detailed_usage_export). Puedes crear un nuevo bucket o usar uno existente.

Nota: El bucket debe estar co-localizado con el conjunto de datos de exportación de BigQuery.

(Opcional) Configure la autorización de servicio entre proyectos:

Si su Cuenta de Servicio integrada existe en un proyecto diferente de Google Cloud Platform que su conjunto de datos de exportación de facturación, necesita otorgar autorización de cuenta de servicio entre proyectos:

  1. Active la creación del agente de servicio siguiendo la documentación oficial utilizando los siguientes valores:

    • PUNTO DE CONEXIÓN: bigquerydatatransfer.googleapis.com

    • TIPO DE RECURSO: project

    • ID DE RECURSO: proyecto del conjunto de datos de exportación

      Esto crea un nuevo agente de servicio que se parece a service-<billing project number>@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com.

  2. Agregue el rol de Cuenta de Servicio del Servicio de Transferencia de Datos de BigQuery creado por el disparador como un principal en su cuenta de servicio

  3. Asigne el rol roles/iam.serviceAccountTokenCreator.

Configure el Cloud Cost

Siga los pasos indicados en Setup & Configuration.

Nota: Los datos pueden tardar de 48 a 72 horas después de la configuración para estabilizarse en Datadog.

Obteniendo datos históricos

Los conjuntos de datos de exportación de facturación de BigQuery recién creados solo contienen los 2 meses más recientes de datos. Puede tardar uno o dos días en que estos datos se rellenen en BigQuery. Datadog ingiere automáticamente hasta 15 meses de datos históricos de costos disponibles una vez que aparecen en la tabla de BigQuery.

Google Cloud no proporciona un proceso para rellenar datos históricos adicionales, más allá de los 2 meses que se incluyen automáticamente cuando se crea por primera vez la exportación de BigQuery.

Tipos de costo

Puede visualizar sus datos ingeridos utilizando los siguientes tipos de costo:

Tipo de CostoDescripción
gcp.cost.amortizedCosto total de los recursos asignados en el momento de uso durante un intervalo. Los costos incluyen créditos de promoción así como créditos de descuento por uso comprometido.
gcp.cost.amortized.shared.resources.allocatedTodos sus costos amortizados de Google Cloud Platform, con desgloses e información adicional para cargas de trabajo en contenedores. Requiere Asignación de Costos de Contenedores.
gcp.cost.ondemandCosto total público y bajo demanda de los recursos antes de que se apliquen los descuentos públicos y privados durante un intervalo.

Etiquetas predeterminadas

Datadog enriquece automáticamente sus datos de costos de Google Cloud con etiquetas de múltiples fuentes. Para una visión general completa de cómo se aplican las etiquetas a los datos de costos, consulte Etiquetas.

Las siguientes etiquetas predeterminadas se derivan de su informe detallado de costos de uso y facilitan el descubrimiento y la comprensión de los datos de costos:

Nombre de la etiquetaDescripción de la etiqueta
google_productEl servicio de Google que se está facturando.
google_cost_typeEl tipo de cargo cubierto por este ítem (por ejemplo, regular, impuesto, ajuste o error de redondeo).
google_usage_typeLos detalles de uso del ítem (por ejemplo, Almacenamiento Estándar EE. UU.).
google_locationLa ubicación asociada con el ítem a nivel de multi-región, país, región o zona.
google_regionLa región asociada con el ítem.
google_zoneLa zona de disponibilidad asociada con el ítem.
google_pricing_usage_unitLa unidad de precio utilizada para calcular el costo de uso (por ejemplo, gibibyte, tebibyte o año).
google_is_unused_reservationSi el uso fue reservado pero no utilizado.
service_descriptionEl servicio de Google Cloud (como Compute Engine o BigQuery).
project_idEl ID del proyecto de Google Cloud que generó los datos de facturación en la nube.
project_nameEl nombre del proyecto de Google Cloud que generó los datos de facturación en la nube.
cost_typeEl tipo de costo que representa este ítem: regular, tax, adjustment o rounding error.
sku_descriptionUna descripción del tipo de recurso utilizado, que detalla el uso del recurso.
resource_nameUn nombre que los clientes añaden a los recursos. Esto puede no estar en todos los recursos.
global_resource_nameUn identificador de recurso globalmente único generado por Google Cloud.

Correlación de costos y observabilidad

Ver los costos en el contexto de los datos de observabilidad es importante para entender cómo los cambios en la infraestructura impactan los costos, identificar por qué cambian los costos y optimizar la infraestructura tanto para costos como para rendimiento. Datadog actualiza las etiquetas identificativas de recursos en los datos de costos para los principales productos de Google para simplificar la correlación entre métricas de observabilidad y costos.

Por ejemplo, para ver el costo y la utilización de cada base de datos de Cloud SQL, puede 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 costos de Cloud Functions lado a lado, puede graficar gcp.cloudfunctions.function.execution_count y gcp.cost.amortized agrupados por function_name.

Las siguientes etiquetas listas para usar están disponibles:

Producto de GoogleEtiqueta(s)
Compute Engineinstance_id, instance-type
Cloud Functionsfunction_name
Cloud Runjob_name, service_name
Cloud SQLdatabase_id
Cloud Spannerinstance_id
App Enginemodule_id
BigQueryproject_id, dataset_id
Kubernetes Enginecluster_name

Asignación de contenedores

Las métricas de asignación de contenedores contienen todos los mismos costos que las métricas de Google Cloud Platform, pero con desgloses e información adicional para cargas de trabajo de contenedores. Consulte Asignación de Costos de Contenedores para más detalles.

Lectura adicional