

 **Contribuisci a migliorare questa pagina** 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Per contribuire a questa guida per l'utente, scegli il GitHub link **Modifica questa pagina** nel riquadro destro di ogni pagina.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Implementare Prometheus utilizzando Helm
<a name="deploy-prometheus"></a>

In alternativa all’utilizzo del Servizio gestito da Amazon per Prometheus, è possibile implementare Prometheus nel cluster con Helm. Se Helm è già stato installato, è possibile controllarne la versione con il comando `helm version`. Helm è un programma di gestione del pacchetto per cluster Kubernetes. Per ulteriori informazioni su Helm e su come installarlo, consultare [Implementazione di applicazioni con Helm su Amazon EKS](helm.md).

Dopo aver configurato Helm per il cluster Amazon EKS, è possibile utilizzarlo per implementare Prometheus attraverso i seguenti passaggi.

1. Creare un namespace Prometheus.

   ```
   kubectl create namespace prometheus
   ```

1. Aggiungere il repository del grafico `prometheus-community`.

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

1. Implementare Prometheus.

   ```
   helm upgrade -i prometheus prometheus-community/prometheus \
       --namespace prometheus \
       --set alertmanager.persistence.storageClass="gp2" \
       --set server.persistentVolume.storageClass="gp2"
   ```
**Nota**  
Se si riceve l'errore `Error: failed to download "stable/prometheus" (hint: running helm repo update may help)` durante l'esecuzione di questo comando, eseguire `helm repo update prometheus-community`, quindi provare a eseguire nuovamente il comando della fase 2.

   Se si riceve l'errore `Error: rendered manifests contain a resource that already exists`, eseguire `helm uninstall your-release-name -n namespace `, quindi provare a eseguire nuovamente il comando della fase 3.

1. Verificare che tutti i pod nel namespace `prometheus` siano nello stato `READY`.

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

   Di seguito viene riportato un output di esempio.

   ```
   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. Utilizzare `kubectl` per eseguire l'inoltro della porta della console Prometheus al computer locale.

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

1. Indirizzare un browser web a `http://localhost:9090` per visualizzare la console Prometheus.

1. Scegliere un parametro dal menu **- insert metric at cursor**, quindi selezionare **Execute (Esegui)**. Scegliere la scheda **Graph (Grafico)** per visualizzare il parametro nel tempo. L'immagine che segue mostra `container_memory_usage_bytes` nel tempo.  
![\[Parametri Prometheus\]](http://docs.aws.amazon.com/it_it/eks/latest/userguide/images/prometheus-metric.png)

1. Dalla barra di navigazione superiore, scegliere **Status (Stato)**, quindi **Targets (Destinazioni)**.  
![\[Console Prometheus\]](http://docs.aws.amazon.com/it_it/eks/latest/userguide/images/prometheus.png)

   Vengono visualizzati tutti gli endpoint Kubernetes che sono connessi a Prometheus utilizzando il rilevamento di servizi.