opción

cloud-integrations

grafana/skills grafana/skills

Configurar, ajustar y solucionar problemas en las integraciones de Grafana Cloud con AWS, Azure y otros proveedores de nube. Se utiliza cuando el usuario solicita conectarse a AWS CloudWatch, configurar Azure Monitor, ajustar la funcionalidad de observabilidad de Confluent Cloud, instalar una integración de Grafana, configurar exportadores alojados, utilizar AWS Firehose para los registros de CloudWatch o resolver problemas en alguna integración de nube. Se activa ante frases como “AWS CloudWatch”, “Azure Monitor”, “integración Confluent”, “integración de nube”, “exportador alojado”, “AWS Firehose” e “instalar”.

...Expandir todo
12
Tiempo actualizado 25 de agosto de 2026

Acerca de las integraciones en la nube

cloud-integrations ayuda a configurar, establecer y solucionar problemas relacionados con las integraciones de Grafana Cloud para proveedores de servicios en la nube, permitiendo conectar las API de monitoreo de estos proveedores a una infraestructura Grafana sin necesidad de utilizar exportadores propios. Resuelve el problema de obtener métricas y registros de la nube en Grafana Cloud a través de exportadores alojados que recopilan datos de las API del proveedor en su nombre y los envían a la infraestructura, o mediante un flujo de transmisión en tiempo real para reducir la latencia.

Los documentos técnicos explican cómo utilizar exportadores alojados como AWS CloudWatch (todos los espacios de nombres a través de YACE), Azure Monitor (a través de la API de Azure Monitor), Confluent Cloud (métricas de Kafka a través de la API de Confluent Metrics), además de un endpoint HTTP en formato Prometheus genérico. También incluyen al receptor AWS Firehose para obtener métricas y registros de CloudWatch en tiempo casi real a través de Kinesis Firehose. Ofrecen una guía paso a paso: cómo navegar por las conexiones en Grafana Cloud, la política IAM mínima necesaria (GetMetricData, GetMetricStatistics, ListMetrics, tag:GetResources y permisos de EC2 describe), las opciones entre recopilación periódica y transmisión mediante Firehose con Terraform para el flujo de métricas y el flujo de entrega, cómo crear un service principal en Azure con el rol Monitoring Reader, y cómo generar una clave API para Confluent Metrics con el rol MetricsViewer. Además, abordan la verificación: cómo consultar las etiquetas de las tareas en Explore, verificar la llegada de etiquetas a través del endpoint de Prometheus y revisar los indicadores de estado de la integración (última recopilación exitosa, cantidad de series y tasa de errores). También señalan la existencia de paneles e alertas ya preparados. Todas las credenciales (claves de acceso de AWS, secretos del cliente de Azure, claves de Confluent y tokens API) se presentan como instrucciones estándar de configuración con marcadores de posición, siguiendo el principio de menor privilegio.

Está dirigido a ingenieros de plataforma, SREs y equipos de observabilidad que quieren integrar telemetría de la nube en Grafana Cloud. Entre los casos de uso se incluyen conectar AWS CloudWatch, configurar Azure Monitor, establecer capacidades de observabilidad en Confluent Cloud, elegir entre recopilación periódica y transmisión mediante Firehose, y solucionar problemas en integraciones que no funcionan correctamente.

Preguntas frecuentes

¿Qué proveedores de servicios en la nube y fuentes son compatibles?

Existen exportadores alojados para AWS CloudWatch (a través de YACE), Azure Monitor, Confluent Cloud y cualquier endpoint HTTP en formato Prometheus genérico, además de un receptor AWS Firehose para obtener métricas y registros de CloudWatch en tiempo casi real a través de Kinesis Firehose.

¿Qué permisos de AWS se requieren?

Se necesita una política IAM mínima que incluya los permisos cloudwatch:GetMetricData, GetMetricStatistics y ListMetrics, tag:GetResources, así como ec2:DescribeInstances y DescribeRegions, asignados a un usuario IAM o a un rol entre cuentas.

¿Cuál es la diferencia entre el exportador alojado y el receptor Firehose?

El exportador alojado consulta la API de CloudWatch aproximadamente cada 60 segundos, con una latencia de entre 1 y 5 minutos; en cambio, el receptor Firehose transmite los flujos de métricas y registros de CloudWatch a través de Kinesis Firehose, lo que permite una entrega en tiempo casi real con menor latencia.

¿Cómo puedo verificar que una integración funciona correctamente?

Consulte la etiqueta de la tarea de la integración en Grafana Explore (por ejemplo, integrations/cloudwatch), verifique la llegada de etiquetas a través del endpoint de etiquetas de Prometheus de la infraestructura, y revise los indicadores de estado: última recopilación exitosa en aproximadamente 2 minutos, cantidad de series estables distinta de cero y tasa de errores del 0%, en la sección Connections > [Integration] > Status.

¿Qué credenciales de Azure y Confluent se necesitan?

Para Azure, se requiere un service principal con el rol Monitoring Reader en las suscripciones objetivo (tenant, client ID y client secret). Para Confluent, se necesita una clave API de Metrics (no una clave de Kafka) con el rol MetricsViewer.

Ver en GitHub

Grafana Cloud Integrations connect cloud provider monitoring APIs to your Grafana stack withoutrunning your own exporters. Hosted exporters scrape cloud APIs on your behalf and push metricsto your Grafana Cloud stack.

Supported hosted exporters:

  • AWS CloudWatch - all CloudWatch namespaces via YACE (Yet Another CloudWatch Exporter)
  • Azure Monitor - Azure resource metrics via the Azure Monitor API
  • Confluent Cloud - Kafka cluster metrics via the Confluent Metrics API
  • Generic HTTP endpoint - any Prometheus-format /metrics endpoint behind auth

AWS Firehose receiver - ingests CloudWatch Logs and Metrics Streams pushed via KinesisFirehose (near real-time, lower latency than API scraping).

Step 1: Navigate to Connections

In Grafana Cloud: Connections > Add new connection (or Connections > Cloud Provider).

Available paths:

  • AWS CloudWatch - hosted exporter + optional Firehose receiver
  • Azure Monitor - hosted exporter
  • Confluent Cloud - hosted exporter
  • All integrations - full catalog including Linux, MySQL, Kubernetes, etc.

Step 2: AWS CloudWatch integration

Option A: Hosted exporter (polling)

The hosted exporter scrapes CloudWatch API every 60s. Latency: ~1-5 minutes.

Required IAM permissions (minimum):

{  "Version": "2012-10-17",  "Statement": [    {      "Effect": "Allow",      "Action": [        "cloudwatch:GetMetricData",        "cloudwatch:GetMetricStatistics",        "cloudwatch:ListMetrics",        "tag:GetResources",        "ec2:DescribeInstances",        "ec2:DescribeRegions"      ],      "Resource": "*"    }  ]}

Setup steps:

  1. Create an IAM user or role with the policy above
  2. Generate an access key pair (for IAM user) or configure cross-account role assumption
  3. In Grafana Cloud: Connections > AWS > Configure hosted exporter
  4. Enter: AWS Access Key ID, Secret Access Key, region(s), CloudWatch namespaces to scrape
  5. Grafana provisions the exporter and begins scraping within 2-3 minutes

Supported namespaces: EC2, RDS, ELB/ALB, S3, Lambda, ECS, SQS, SNS, ElastiCache,Kinesis, DynamoDB, and 50+ others.

Option B: AWS Firehose receiver (streaming)

Near-real-time metrics and logs via CloudWatch Metric Streams and CloudWatch Logs subscriptions.

Architecture:

CloudWatch Metric Streams → Kinesis Firehose → Grafana Cloud Firehose ReceiverCloudWatch Logs (subscription filter) → Kinesis Firehose → Grafana Cloud Firehose Receiver

Setup:

  1. In Grafana Cloud: Connections > AWS > Firehose receiver
  2. Grafana provides an HTTPS endpoint URL and access token
  3. In AWS, create a Kinesis Firehose delivery stream:
    • Destination: HTTP endpoint
    • Endpoint URL: (from step 2)
    • Access key: (from step 2)
    • Content encoding: GZIP
  4. Create a CloudWatch Metric Stream pointing at the Firehose stream:
    • Output format: OpenTelemetry 1.0
    • Namespaces: select or include all
  5. For logs: add a CloudWatch Logs subscription filter pointing at the Firehose stream

Terraform for Firehose setup:

resource "aws_cloudwatch_metric_stream" "grafana_cloud" {  name          = "grafana-cloud-metrics"  role_arn      = aws_iam_role.firehose_role.arn  firehose_arn  = aws_kinesis_firehose_delivery_stream.grafana.arn  output_format = "opentelemetry1.0"  # Optionally scope to specific namespaces  # include_filter { namespace = "AWS/EC2" }  # include_filter { namespace = "AWS/RDS" }}resource "aws_kinesis_firehose_delivery_stream" "grafana" {  name        = "grafana-cloud-stream"  destination = "http_endpoint"  http_endpoint_configuration {    url            = var.grafana_firehose_endpoint    access_key     = var.grafana_firehose_access_key    name           = "Grafana Cloud"    content_encoding = "GZIP"    s3_configuration {      role_arn   = aws_iam_role.firehose_role.arn      bucket_arn = aws_s3_bucket.firehose_backup.arn    }  }}

Step 3: Azure Monitor integration

Required Azure permissions:

Create a service principal with the Monitoring Reader role on the subscription(s) to monitor.

# Create service principalaz ad sp create-for-rbac --name grafana-cloud-monitoring \  --role "Monitoring Reader" \  --scopes /subscriptions/<SUBSCRIPTION_ID># Output: appId (client ID), password (client secret), tenant

Setup in Grafana Cloud:

  1. Connections > Azure > Configure hosted exporter
  2. Enter: Tenant ID, Client ID, Client Secret, Subscription IDs
  3. Select resource types to monitor (VMs, App Services, AKS, SQL, etc.)
  4. The exporter begins scraping within 2-3 minutes

Supported resource types: Virtual Machines, App Service Plans, AKS, Azure SQL, CosmosDB,Storage Accounts, Event Hubs, Service Bus, Application Gateway, and others.

Step 4: Confluent Cloud integration

Required Confluent API credentials:

  1. In Confluent Cloud: Environment > API Keys (or Cloud API Keys for organization-level)
  2. Create a Metrics API key (not a Kafka API key) with MetricsViewer role
  3. Note the API Key and Secret

Setup in Grafana Cloud:

  1. Connections > Confluent > Configure hosted exporter
  2. Enter: Confluent API Key, API Secret, Environment ID(s), Cluster ID(s)
  3. The exporter scrapes the Confluent Metrics API every 60s

Available metrics: Consumer lag, broker request rates, partition counts, replication lag,active controller count, and cluster-level health metrics.

Step 5: Verify the integration is working

# Check in Grafana Explore — query for the integration's job label# For AWS:{job="integrations/cloudwatch"}# For Azure:{job="integrations/azure-monitor"}# Check metric arrival (replace with your stack's Prometheus endpoint)curl -s -H "Authorization: Bearer <USER>:<API_KEY>" \  "https://prometheus-prod-XX-XX-X.grafana.net/api/prom/api/v1/labels" | \  jq '.data | map(select(startswith("aws_") or startswith("azure_")))'

The integration status is also visible in: Connections > [Integration name] > Status

Integration health indicators:

  • Last successful scrape - should be within the last 2 minutes
  • Series count - should be non-zero and stable
  • Error rate - should be 0%

Step 6: Pre-built dashboards and alerts

Every integration installs a set of pre-configured dashboards and alert rules automatically.

Find installed dashboards:

  • Dashboards > Browse > folder named after the integration (e.g. "AWS CloudWatch")

Find installed alert rules:

  • Alerting > Alert rules > filter by datasource or folder

Modify without losing updates:

  1. Do not edit the provisioned dashboards directly (they may be overwritten on updates)
  2. Duplicate the dashboard (Dashboard settings > Save as copy)
  3. Edit the copy

Step 7: Troubleshoot integration failures

Hosted exporter not receiving data:

# Check the integration status via Grafana Cloud APIcurl -s -H "Authorization: Bearer <STACK_ID>:<API_TOKEN>" \  "https://integrations-api.grafana.net/api/v1/integrations" | \  jq '.integrations[] | {name, status, lastScrapeTime, errorMessage}'

Common errors:

ErrorCauseFix
AccessDenied (AWS)IAM policy missing permissionsAdd required actions to the IAM policy
AuthorizationFailed (Azure)Service principal missing roleGrant Monitoring Reader on the subscription
401 Unauthorized (Confluent)Wrong API credentialsRe-enter credentials; confirm Metrics API key (not Kafka key)
No metrics foundWrong namespace/resource type selectedAdd the namespace in integration settings
Scrape timeoutNetwork restrictionEnsure Grafana Cloud's IPs can reach the cloud provider API

AWS-specific: CloudWatch API rate limiting

CloudWatch GetMetricData has a rate limit. If you have many resources, enable Metric Streams(Option B) instead of API polling to avoid throttling.

Step 8: Reduce costs with metric filtering

Hosted exporters scrape all metrics by default. Filter to reduce series count and cost.

AWS - select specific namespaces:In integration settings, switch from "All namespaces" to specific ones (e.g. EC2, RDS only).

AWS - filter by resource tags:

# In exporter configuration, add tag filtersdiscovery:  - type: AWS/EC2    filters:      - key: Environment        values: ["production"]

Azure - select specific resource types:Only enable the resource types you actually have dashboards for.

Use Adaptive Metrics to aggregate away unused label dimensions:See the grafana-cloud/adaptive-metrics skill.

References

  • Grafana Cloud Connections documentation
  • AWS CloudWatch integration
  • Azure Monitor integration
  • YACE (Yet Another CloudWatch Exporter)
  • CloudWatch Metric Streams

Todos los archivos

0 archivos

Instalar cloud-integrations

Descargue y extraiga los archivos de habilidades a su directorio .claude/skills/.

Descargar ZIP

Clona el repositorio y copia los archivos de la habilidad a tu proyecto.

git clone https://github.com/grafana/skills/blob/main/skills/grafana-cloud/cloud-integrations/SKILL.md # Copy SKILL.md to your .claude/skills/ directory

Copiar Copiar
Configuración rápida: Copie la carpeta de habilidades a .claude/skills; Claude detectará automáticamente dicha carpeta y la utilizará.
Repositorio grafana/skills

Habilidades relacionadas

Cloudflare Manager
Tiempo actualizado 29 de junio de 2026
pinecone
Tiempo actualizado 29 de junio de 2026
sentry-architecture-variants
Tiempo actualizado 29 de junio de 2026
azure-setup-guide
Tiempo actualizado 29 de junio de 2026
OR