

 **Ajudar a melhorar esta página** 

Para contribuir com este guia de usuário, escolha o link **Editar esta página no GitHub**, disponível no painel direito de cada página.

# Implantar o Prometheus usando o Helm
<a name="deploy-prometheus"></a>

Como alternativa ao uso do Amazon Managed Service for Prometheus, é possível implantar o Prometheus no cluster com o Helm. Se você já tiver o Helm instalado, poderá verificar sua versão com o comando `helm version`. O Helm é um gerenciador de pacotes para clusters do Kubernetes. Para obter mais informações sobre o Helm e como instalá-lo, consulte [Implantar aplicações com o Helm no Amazon EKS](helm.md).

Após configurar o Helm para o cluster do Amazon EKS, você poderá usá-lo para implantar o Prometheus com as etapas a seguir.

1. Crie um namespace do Prometheus.

   ```
   kubectl create namespace prometheus
   ```

1. Adicione o gráfico do repositório do `prometheus-community`.

   ```
   helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
   ```

1. Implante o Prometheus.

   ```
   helm upgrade -i prometheus prometheus-community/prometheus \
       --namespace prometheus \
       --set alertmanager.persistence.storageClass="gp2" \
       --set server.persistentVolume.storageClass="gp2"
   ```
**nota**  
Se você receber o erro `Error: failed to download "stable/prometheus" (hint: running helm repo update may help)` ao executar este comando, execute `helm repo update prometheus-community` e, em seguida, tente executar o comando da etapa 2 novamente.

   Se você receber o erro `Error: rendered manifests contain a resource that already exists` ao executar este comando, execute `helm uninstall your-release-name -n namespace ` e, em seguida, tente executar o comando da etapa 3 novamente.

1. Verifique se todos os pods no namespace do `prometheus` estão no estado `READY`.

   ```
   kubectl get pods -n prometheus
   ```

   Veja abaixo um exemplo de saída.

   ```
   NAME                                             READY   STATUS    RESTARTS   AGE
   prometheus-alertmanager-59b4c8c744-r7bgp         1/2     Running   0          48s
   prometheus-kube-state-metrics-7cfd87cf99-jkz2f   1/1     Running   0          48s
   prometheus-node-exporter-jcjqz                   1/1     Running   0          48s
   prometheus-node-exporter-jxv2h                   1/1     Running   0          48s
   prometheus-node-exporter-vbdks                   1/1     Running   0          48s
   prometheus-pushgateway-76c444b68c-82tnw          1/1     Running   0          48s
   prometheus-server-775957f748-mmht9               1/2     Running   0          48s
   ```

1. Use `kubectl` para fazer o redirecionamento de portas do console do Prometheus para sua máquina local.

   ```
   kubectl --namespace=prometheus port-forward deploy/prometheus-server 9090
   ```

1. Indique um navegador da web para `http://localhost:9090` para visualizar o console do Prometheus.

1. Escolha uma métrica do menu **- insert metric at cursor (- inserir métrica no cursor)** e selecione **Execute (Executar)**. Selecione a guia **Graph (Gráfico)** para mostrar a métrica ao longo do tempo. A imagem a seguir mostra `container_memory_usage_bytes` ao longo do tempo.  
![\[Métricas do Prometheus\]](http://docs.aws.amazon.com/pt_br/eks/latest/userguide/images/prometheus-metric.png)

1. Na barra de navegação superior, selecione **Status** e **Targets (Destinos)**.  
![\[Console do Prometheus\]](http://docs.aws.amazon.com/pt_br/eks/latest/userguide/images/prometheus.png)

   Todos os endpoints do Kubernetes que estão conectados ao Prometheus usando a descoberta de serviço são exibidos.