

# Coletor gerenciado conectado à VPC
<a name="managed-prometheus-collectors-vpc-setup"></a>

O coletor gerenciado do Prometheus do Amazon CloudWatch conectado à VPC extrai métricas compatíveis com o Prometheus de qualquer recurso acessível em sua VPC (instâncias do Amazon EC2 e tarefas do Amazon ECS). Você fornece sub-redes e um grupo de segurança; o coletor cria interfaces de rede elástica (ENIs) e extrai endpoints Prometheus do `/metrics` de acordo com sua configuração.

Para obter um passo a passo detalhado e específico para cada workload, consulte as soluções de observabilidade do CloudWatch para a coleta de métricas do Prometheus: [Solução do Amazon CloudWatch: coleta de métricas do Prometheus no Amazon EC2](Solution-Prometheus-On-EC2.md) e [Solução do Amazon CloudWatch: coleta de métricas do Prometheus no Amazon ECS](Solution-Prometheus-On-ECS.md).

## Pré-requisitos
<a name="managed-prometheus-collectors-vpc-prerequisites"></a>

Esse procedimento pressupõe familiaridade com sub-redes da Amazon VPC, grupos de segurança e endpoints de exportação do Prometheus.
+ Amazon VPC com DNS habilitado
+ Pelo menos duas sub-redes em zonas de disponibilidade diferentes
+ Grupo de segurança que permite que o coletor alcance suas portas dos exportadores de destino
+ Destinos que expõem um endpoint do Prometheus compatível com `/metrics`

O coletor entrega métricas extraídas para o CloudWatch pela rede da AWS, sem atravessar a internet pública. As sub-redes e os grupos de segurança que você especifica fornecem conectividade aos seus destinos de extração, eles não fornecem o caminho de entrega para o CloudWatch. Você não precisa configurar o acesso à internet, um gateway NAT ou um endpoint da VPC com interface do CloudWatch em sua VPC para entrega de métricas.

## Criar um extrator
<a name="managed-prometheus-collectors-vpc-create-scraper"></a>

Você pode usar [GetDefaultScraperConfiguration](https://docs.aws.amazon.com/prometheus/latest/APIReference/API_GetDefaultScraperConfiguration.html) para recuperar uma configuração de extrator de uso geral ou fornecer a sua própria.

------
#### [ AWS API ]

Use a operação da API `CreateScraper` para criar um extrator com um destino do CloudWatch. Substitua as informações de sub-rede, grupo de segurança e conjunto de dados pelos seus próprios valores.

```
POST /scrapers HTTP/1.1

{
  "alias": "vpc-metrics-scraper",
  "source": {
    "vpcConfiguration": {
      "subnetIds": ["{{subnet-subnet-id-1}}", "{{subnet-subnet-id-2}}"],
      "securityGroupIds": ["{{sg-security-group-id}}"]
    }
  },
  "destination": {
    "cloudWatchConfiguration": {
      "datasetArn": "arn:aws:cloudwatch:{{us-west-2}}:{{123456789012}}:dataset/default"
    }
  },
  "scrapeConfiguration": {
    "configurationBlob": "{{base64-encoded-blob}}"
  }
}
```

------
#### [ AWS CLI ]

Use o comando `create-scraper` para criar um extrator com um destino do CloudWatch. Substitua as informações de sub-rede, grupo de segurança e conjunto de dados pelos seus próprios valores.

```
aws amp create-scraper \
  --alias "vpc-metrics-scraper" \
  --source '{
    "vpcConfiguration": {
      "subnetIds": ["{{subnet-subnet-id-1}}", "{{subnet-subnet-id-2}}"],
      "securityGroupIds": ["{{sg-security-group-id}}"]
    }
  }' \
  --scrape-configuration configurationBlob=$(cat {{scrape-config.yaml}} | base64 -w 0) \
  --destination '{
    "cloudWatchConfiguration": {
      "datasetArn": "arn:aws:cloudwatch:{{us-west-2}}:{{123456789012}}:dataset/default"
    }
  }'
```

------

## Coleta de métricas do Amazon EC2
<a name="managed-prometheus-collectors-vpc-ec2"></a>

Para extrair métricas de instâncias do Amazon EC2 que executam exportadores do Prometheus, como DCGM Exporter ou Node Exporter, use `static_configs` com os endereços IP privados da instância:

```
global:
  scrape_interval: 60s

scrape_configs:
  - job_name: 'ec2-node-exporter'
    static_configs:
      - targets:
          - '{{10.0.1.10}}:9100'
          - '{{10.0.1.11}}:9100'
    relabel_configs:
      - source_labels: [__address__]
        target_label: instance
      - target_label: compute_platform
        replacement: 'ec2'

  - job_name: 'ec2-dcgm-exporter'
    static_configs:
      - targets:
          - '{{10.0.1.10}}:9400'
          - '{{10.0.1.11}}:9400'
    relabel_configs:
      - source_labels: [__address__]
        target_label: instance
      - target_label: compute_platform
        replacement: 'ec2'
```

## Coleta de métricas do Amazon ECS
<a name="managed-prometheus-collectors-vpc-ecs"></a>

Para tarefas do Amazon ECS que você registra no AWS Cloud Map, use a descoberta de serviços DNS para encontrar e extrair automaticamente dos seus contêineres:

```
global:
  scrape_interval: 60s

scrape_configs:
  - job_name: 'ecs-services'
    dns_sd_configs:
      - names:
          - '{{my-service.my-namespace.local}}'
        type: A
        port: 9090
    relabel_configs:
      - source_labels: [__meta_dns_name]
        target_label: service_name
      - source_labels: [__address__]
        target_label: instance
      - target_label: compute_platform
        replacement: 'ecs'
```

## Observabilidade entre contas
<a name="managed-prometheus-collectors-vpc-cross-account"></a>

Para o monitoramento de VPC entre contas, recomendamos usar a centralização de métricas do Amazon CloudWatch. Para obter mais informações, consulte [Centralização de métricas do CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html).

Para configurações alternativas de extratores entre contas, consulte [Extratores entre contas](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-cross-account.html) no *Guia do usuário do Amazon Managed Service for Prometheus*.

## Práticas recomendadas de segurança
<a name="managed-prometheus-collectors-vpc-security"></a>
+ Especifique sub-redes privadas sem acesso direto à internet para os ENIs do coletor.
+ Restrinja a entrada do grupo de segurança ao grupo de segurança do extrator somente em portas de extrator específicas.
+ Habilite a criptografia TLS em trânsito para todos os endpoints do extrator sempre que possível.