Questo argomento spiega come distribuire Prometheus in un cluster del carico di lavoro. Le procedure seguenti si applicano alle distribuzioni vSphere, Amazon Web Services (AWS) e Azure.
Prometheus è un toolkit per il monitoraggio e le notifiche dei sistemi open source. Tanzu Kubernetes Grid include file binari firmati per Prometheus che è possibile distribuire nei cluster del carico di lavoro per monitorare l'integrità e i servizi del cluster.
kubectl
, come descritto in Installazione della CLI di Tanzu e della CLI di Kubernetes per l'utilizzo con un supervisore vSphere with Tanzu o Installazione della CLI di Tanzu e della CLI di Kubernetes per l'utilizzo con i cluster di gestione autonomi.cert-manager
e contour
.ImportanteIl supporto per gli indirizzi IPv6 in Tanzu Kubernetes Grid è limitato; vedere Distribuzione dei cluster in IPv6 (solo vSphere). Se non si distribuisce in un ambiente di rete solo IPv6, è necessario specificare gli indirizzi IPv4 nei passaggi seguenti.
Per preparare il cluster:
Recuperare le credenziali di amministratore del cluster del carico di lavoro in cui si desidera distribuire Prometheus. Ad esempio:
tanzu cluster kubeconfig get my-cluster --admin
Impostare il contesto di kubectl sul cluster. Ad esempio:
kubectl config use-context my-cluster-admin@my-cluster
(Facoltativo) Abilitazione dell'ingresso per Prometheus
Per abilitare l'ingresso, è possibile installare i pacchetti facoltativi seguenti:
Procedere con Distribuzione di Prometheus nel cluster del carico di lavoro di seguito.
Per installare Prometheus:
Se nel cluster non è installato un repository dei pacchetti con il pacchetto Prometheus, ad esempio il repository tanzu-standard
, installarne uno:
tanzu package repository add PACKAGE-REPO-NAME --url PACKAGE-REPO-ENDPOINT --namespace tkg-system
In cui:
PACKAGE-REPO-NAME
è il nome del repository dei pacchetti, ad esempio tanzu-standard
o il nome di un registro immagini privato configurato con le variabili ADDITIONAL_IMAGE_REGISTRY
.PACKAGE-REPO-ENDPOINT
è l'URL del repository dei pacchetti.
tanzu-standard
è projects.registry.vmware.com/tkg/packages/standard/repo:v2023.10.16
. Vedere Elenco dei repository dei pacchetti per ottenere questo valore dalla CLI di Tanzu oppure in Tanzu Mission Control vedere l'elenco Elementi aggiuntivi (Addons) > Repository (Repositories) nel riquadro Cluster.Verificare che il pacchetto Prometheus sia disponibile nel cluster del carico di lavoro:
tanzu package available list -A
Recuperare la versione del pacchetto disponibile:
tanzu package available list prometheus.tanzu.vmware.com -A
| Retrieving package versions for prometheus.tanzu.vmware.com...
NAME VERSION RELEASED-AT NAMESPACE
prometheus.tanzu.vmware.com 2.43.0+vmware.1-tkg.4 2020-11-24T18:00:00Z tanzu-package-repo-global
Quando si è pronti per distribuire Prometheus, è possibile:
vSphere with Tanzu: Per distribuire il pacchetto Prometheus in un cluster del carico di lavoro creato da un vSphere Supervisor cluster, è necessario distribuirlo con valori personalizzati. Il pacchetto Prometheus non è stato convalidato per i cluster del carico di lavoro in vSphere 7.0 U3.
Dopo aver verificato la versione del pacchetto e averla recuperata, è possibile installarlo.
Installare il pacchetto Prometheus utilizzando i valori predefiniti:
tanzu package install prometheus \
--package prometheus.tanzu.vmware.com \
--version AVAILABLE-PACKAGE-VERSION \
--namespace TARGET-NAMESPACE
In cui:
TARGET-NAMESPACE
è lo spazio dei nomi in cui si desidera installare il pacchetto Prometheus. Ad esempio, lo spazio dei nomi my-packages
o tanzu-cli-managed-packages
.
--namespace
non viene specificato, la CLI di Tanzu utilizza lo spazio dei nomi default
. I pod Prometheus e tutte le altre risorse associate al componente Prometheus vengono creati nello spazio dei nomi tanzu-system-monitoring
. Non installare il pacchetto Prometheus in questo spazio dei nomi.kubectl create namespace my-packages
.AVAILABLE-PACKAGE-VERSION
è la versione recuperata in precedenza, ad esempio 2.43.0+vmware.1-tkg.4
.
Ad esempio:
tanzu package install prometheus --package prometheus.tanzu.vmware.com --namespace my-packages --version 2.43.0+vmware.1-tkg.4
\ Installing package 'prometheus.tanzu.vmware.com'
| Getting package metadata for 'prometheus.tanzu.vmware.com'
| Creating service account 'prometheus-my-packages-sa'
| Creating cluster admin role 'prometheus-my-packages-cluster-role'
| Creating cluster role binding 'prometheus-my-packages-cluster-rolebinding'
- Creating package resource
\ Package install status: Reconciling
Added installed package 'prometheus' in namespace 'my-packages'
vSphere with Tanzu: In vSphere 8 e vSphere 7.0 U2 con la funzionalità vSphere with Tanzu abilitata, è possibile che il comando tanzu package install prometheus
restituisca l'errore Failed to get final advertise address: No private IP address found, and explicit IP not provided
.
Per correggere questo errore, creare e applicare un overlay di pacchetto per riconfigurare il componente alertmanager
:
Creare un file overlay-alertmanager.yaml
contenente:
---
#@ load("@ytt:overlay", "overlay")
#@overlay/match by=overlay.and_op(overlay.subset({"kind": "Deployment"}), overlay.subset({"metadata": {"name": "alertmanager"}}))
---
spec:
template:
spec:
containers:
#@overlay/match by="name",expects="0+"
- name: alertmanager
args:
- --cluster.listen-address=
Creare un segreto dall'overlay:
kubectl create secret generic alertmanager-overlay -n tanzu-package-repo-global -o yaml --dry-run=client --from-file=overlay-alertmanager.yaml | kubectl apply -f -
Prendere nota del pacchetto con il segreto:
kubectl annotate PackageInstall prometheus -n tanzu-package-repo-global ext.packaging.carvel.dev/ytt-paths-from-secret-name.1=alertmanager-overlay
Procedere con Verifica della distribuzione di Prometheus di seguito.
Per installare il pacchetto Prometheus utilizzando i valori forniti dall'utente:
Creare un file di configurazione. Questo file configura il pacchetto Prometheus.
tanzu package available get prometheus.tanzu.vmware.com/PACKAGE-VERSION --default-values-file-output FILE-PATH
Dove PACKAGE-VERSION
è la versione del pacchetto Prometheus che si desidera installare e FILE-PATH
è la posizione in cui si desidera salvare il file di configurazione, ad esempio prometheus-data-values.yaml
. Il comando precedente crea un file di configurazione denominato prometheus-data-values.yaml
contenente i valori predefiniti. Si tenga presente che nelle versioni precedenti questo file era denominato prometheus-data-values.yaml
.
Per informazioni sui parametri di configurazione da utilizzare in prometheus-data-values.yaml
, vedere Parametri di configurazione del pacchetto Prometheus di seguito.
vSphere with Tanzu: Se si distribuisce Prometheus in un cluster del carico di lavoro creato da vSphere Supervisor Cluster, impostare un valore non null per prometheus.pvc.storageClassName
e alertmanager.pvc.storageClassName
nel file prometheus-data-values.yaml
:
ingress:
enabled: true
virtual_host_fqdn: "prometheus.corp.tanzu"
prometheus_prefix: "/"
alertmanager_prefix: "/alertmanager/"
prometheusServicePort: 80
alertmanagerServicePort: 80
prometheus:
pvc:
storageClassName: STORAGE-CLASS
alertmanager:
pvc:
storageClassName: STORAGE-CLASS
In cui STORAGE-CLASS
è il nome della classe di storage del cluster restituito da kubectl get storageclass
.
Dopo aver apportato le modifiche necessarie al file prometheus-data-values.yaml
, rimuovere tutti i commenti presenti in esso:
yq -i eval '... comments=""' prometheus-data-values.yaml
Distribuire il pacchetto:
tanzu package install prometheus \
--package prometheus.tanzu.vmware.com \
--version PACKAGE-VERSION \
--values-file prometheus-data-values.yaml \
--namespace TARGET-NAMESPACE
In cui:
TARGET-NAMESPACE
è lo spazio dei nomi in cui si desidera installare il pacchetto Prometheus, l'app del pacchetto Prometheus e tutte le altre risorse Kubernetes che descrivono il pacchetto. Ad esempio, lo spazio dei nomi my-packages
o tanzu-cli-managed-packages
. Se il flag --namespace
non viene specificato, la CLI di Tanzu utilizza lo spazio dei nomi default
. I pod Prometheus e tutte le altre risorse associate al componente Prometheus vengono creati nello spazio dei nomi tanzu-system-monitoring
. Non installare il pacchetto Prometheus in questo spazio dei nomi.PACKAGE-VERSION
è la versione recuperata in precedenza, ad esempio 2.43.0+vmware.1-tkg.4
.Procedere con Verifica della distribuzione di Prometheus di seguito.
Dopo aver distribuito Prometheus, è possibile verificare che la distribuzione sia stata eseguita correttamente:
Verificare che il pacchetto Prometheus sia installato. Ad esempio:
tanzu package installed list -A
/ Retrieving installed packages...
NAME PACKAGE-NAME PACKAGE-VERSION STATUS NAMESPACE
cert-manager cert-manager.tanzu.vmware.com 1.10.1+vmware.1-tkg.2 Reconcile succeeded my-packages
prometheus prometheus.tanzu.vmware.com 2.43.0+vmware.1-tkg.4 Reconcile succeeded my-packages
antrea antrea.tanzu.vmware.com Reconcile succeeded tkg-system
metrics-server metrics-server.tanzu.vmware.com Reconcile succeeded tkg-system
vsphere-cpi vsphere-cpi.tanzu.vmware.com Reconcile succeeded tkg-system
vsphere-csi vsphere-csi.tanzu.vmware.com Reconcile succeeded tkg-system
Il pacchetto prometheus
e l'app prometheus
vengono installati nello spazio dei nomi specificato quando si esegue il comando tanzu package install
.
Verificare che l'app prometheus
sia riconciliata correttamente:
kubectl get apps -A
Ad esempio:
NAMESPACE NAME DESCRIPTION SINCE-DEPLOY AGE
my-packages cert-manager Reconcile succeeded 74s 29m
my-packages prometheus Reconcile succeeded 20s 33m
tkg-system antrea Reconcile succeeded 70s 3h43m
[...]
Se lo stato non è Reconcile succeeded
, visualizzare i dettagli completi dello stato dell'app prometheus
. La visualizzazione dello stato completo può aiutare a risolvere il problema:
kubectl get app prometheus --namespace PACKAGE-NAMESPACE -o yaml
Dove PACKAGE-NAMESPACE
è lo spazio dei nomi in cui è stato installato il pacchetto.
Verificare che i nuovi servizi siano in esecuzione visualizzando l'elenco di tutti i pod in esecuzione nel cluster:
kubectl get pods -A
Nello spazio dei nomi tanzu-system-monitoring
, è possibile visualizzare i servizi prometheus
, alertmanager
, node_exporter
, pushgateway
, cadvisor
e kube_state_metrics
in esecuzione in un pod:
NAMESPACE NAME READY STATUS RESTARTS AGE
[...]
tanzu-system-monitoring alertmanager-d6bb4d94d-7fgmb 1/1 Running 0 35m
tanzu-system-monitoring prometheus-cadvisor-pgfck 1/1 Running 0 35m
tanzu-system-monitoring prometheus-kube-state-metrics-868b5b749d-9w5f2 1/1 Running 0 35m
tanzu-system-monitoring prometheus-node-exporter-97x6c 1/1 Running 0 35m
tanzu-system-monitoring prometheus-node-exporter-dnrkk 1/1 Running 0 35m
tanzu-system-monitoring prometheus-pushgateway-84cc9b85c6-tgmv6 1/1 Running 0 35m
tanzu-system-monitoring prometheus-server-6479964fb6-kk9g2 2/2 Running 0 35m
[...]
I pod Prometheus e tutte le altre risorse associate al componente Prometheus vengono creati nello spazio dei nomi specificato in prometheus-data-values.yaml
. Se si utilizza lo spazio dei nomi predefinito, questi vengono creati nello spazio dei nomi tanzu-system-monitoring
.
Esistono due modi per configurare i parametri di configurazione del pacchetto Prometheus:
Per recuperare lo schema del pacchetto:
tanzu package available get prometheus.tanzu.vmware.com/2.43.0+vmware.1-tkg.4 -n AVAILABLE-PACKAGE-NAMESPACE --values-schema
Questo comando consente di visualizzare un elenco dei parametri di configurazione del pacchetto Prometheus e i loro valori predefiniti. È possibile utilizzare l'output per aggiornare il file prometheus-data-values.yml
creato in precedenza in Distribuzione di Prometheus con valori personalizzati.
La tabella seguente include i parametri di configurazione del pacchetto Prometheus e una descrizione dei loro valori predefiniti.
È possibile impostare i valori di configurazione seguenti nel file prometheus-data-values.yml
creato in precedenza in Distribuzione di Prometheus con valori personalizzati.
Parametro | Descrizione | Tipo | Predefinito |
---|---|---|---|
namespace |
Spazio dei nomi in cui Prometheus verrà distribuito. | Stringa | tanzu-system-monitoring |
prometheus.deployment.replicas |
Numero di repliche di Prometheus. | Stringa | 1 |
prometheus.deployment.containers.args |
Argomenti del container Prometheus. È possibile configurare questo parametro per modificare il tempo di conservazione. Per informazioni sulla configurazione dei parametri di storage di Prometheus, vedere la documentazione di Prometheus. Nota Un tempo di conservazione più lungo richiede una capacità di storage maggiore rispetto a un tempo di conservazione più breve. Se si aumenta significativamente il tempo di conservazione, potrebbe essere necessario aumentare le dimensioni della richiesta di volume persistente. | Elenco | n/d |
prometheus.deployment.containers.resources |
Richieste e limiti delle risorse del container Prometheus. | Mappa | {} |
prometheus.deployment.podAnnotations |
Annotazioni dei pod delle distribuzioni di Prometheus. | Mappa | {} |
prometheus.deployment.podLabels |
Etichette dei pod delle distribuzioni di Prometheus. | Mappa | {} |
prometheus.deployment.configMapReload.containers.args |
Argomenti del container configmap-reload. | Elenco | n/d |
prometheus.deployment.configMapReload.containers.resources |
Richieste e limiti delle risorse del container configmap-reload. | Mappa | {} |
prometheus.service.type |
Tipo di servizio per esporre Prometheus. Valori supportati: ClusterIP . |
Stringa | ClusterIP |
prometheus.service.port |
Porta del servizio Prometheus. | Intero | 80 |
prometheus.service.targetPort |
Porta di destinazione del servizio Prometheus. | Intero | 9090 |
prometheus.service.labels |
Etichette del servizio Prometheus. | Mappa | {} |
prometheus.service.annotations |
Annotazioni del servizio Prometheus. | Mappa | {} |
prometheus.pvc.annotations |
Annotazioni della classe di storage. | Mappa | {} |
prometheus.pvc.storageClassName |
Classe di storage da utilizzare per la richiesta di volume persistente. Per impostazione predefinita, questo valore è null e viene utilizzato il provisioning predefinito. | Stringa | null |
prometheus.pvc.accessMode |
Definisce la modalità di accesso per la richiesta di volume persistente. Valori supportati: ReadWriteOnce , ReadOnlyMany , ReadWriteMany . |
Stringa | ReadWriteOnce |
prometheus.pvc.storage |
Definisce le dimensioni dello storage per la richiesta di volume persistente. | Stringa | 150Gi |
prometheus.config.prometheus_yml |
Per informazioni sulla configurazione globale di Prometheus, vedere la documentazione di Prometheus. | File YAML | prometheus.yaml |
prometheus.config.alerting_rules_yml |
Per informazioni sulle regole degli avvisi di Prometheus, vedere la documentazione di Prometheus. | File YAML | alerting_rules.yaml |
prometheus.config.recording_rules_yml |
Per informazioni sulle regole di registrazione di Prometheus, vedere la documentazione di Prometheus. | File YAML | recording_rules.yaml |
prometheus.config.alerts_yml |
Qui vengono configurate ulteriori regole degli avvisi. | File YAML | alerts_yml.yaml |
prometheus.config.rules_yml |
Qui vengono configurate ulteriori regole di registrazione di Prometheus. | File YAML | rules_yml.yaml |
alertmanager.deployment.replicas |
Numero di repliche alertmanager. | Intero | 1 |
alertmanager.deployment.containers.resources |
Richieste e limiti delle risorse del container alertmanager. | Mappa | {} |
alertmanager.deployment.podAnnotations |
Annotazioni dei pod delle distribuzioni di alertmanager. | Mappa | {} |
alertmanager.deployment.podLabels |
Etichette dei pod delle distribuzioni di alertmanager. | Mappa | {} |
alertmanager.service.type |
Tipo di servizio per esporre alertmanager. Valori supportati: ClusterIP . |
Stringa | ClusterIP |
alertmanager.service.port |
Porta del servizio alertmanager. | Intero | 80 |
alertmanager.service.targetPort |
Porta di destinazione del servizio alertmanager. | Intero | 9093 |
alertmanager.service.labels |
Etichette del servizio alertmanager. | Mappa | {} |
alertmanager.service.annotations |
Annotazioni del servizio alertmanager. | Mappa | {} |
alertmanager.pvc.annotations |
Annotazioni della classe di storage. | Mappa | {} |
alertmanager.pvc.storageClassName |
Classe di storage da utilizzare per la richiesta di volume persistente. Per impostazione predefinita, questo valore è null e viene utilizzato il provisioning predefinito. | Stringa | null |
alertmanager.pvc.accessMode |
Definisce la modalità di accesso per la richiesta di volume persistente. Valori supportati: ReadWriteOnce , ReadOnlyMany , ReadWriteMany . |
Stringa | ReadWriteOnce |
alertmanager.pvc.storage |
Definisce le dimensioni dello storage per la richiesta di volume persistente. | Stringa | 2Gi |
alertmanager.config.alertmanager_yml |
Per informazioni sulla configurazione YAML globale per Alert Manager, vedere la documentazione di Prometheus. | File YAML | alertmanager_yml |
kube_state_metrics.deployment.replicas |
Numero di repliche di kube-state-metrics. | Intero | 1 |
kube_state_metrics.deployment.containers.resources |
Richieste e limiti delle risorse del container kube-state-metrics. | Mappa | {} |
kube_state_metrics.deployment.podAnnotations |
Annotazioni dei pod delle distribuzioni di kube-state-metrics. | Mappa | {} |
kube_state_metrics.deployment.podLabels |
Etichette dei pod delle distribuzioni di kube-state-metrics. | Mappa | {} |
kube_state_metrics.service.type |
Tipo di servizio per esporre kube-state-metrics. Valori supportati: ClusterIP . |
Stringa | ClusterIP |
kube_state_metrics.service.port |
Porta del servizio kube-state-metrics. | Intero | 80 |
kube_state_metrics.service.targetPort |
Porta di destinazione del servizio kube-state-metrics. | Intero | 8080 |
kube_state_metrics.service.telemetryPort |
Porta di telemetria del servizio kube-state-metrics. | Intero | 81 |
kube_state_metrics.service.telemetryTargetPort |
Porta di telemetria di destinazione del servizio kube-state-metrics. | Intero | 8081 |
kube_state_metrics.service.labels |
Etichette del servizio kube-state-metrics. | Mappa | {} |
kube_state_metrics.service.annotations |
Annotazioni del servizio kube-state-metrics. | Mappa | {} |
node_exporter.daemonset.replicas |
Numero di repliche di node-exporter. | Intero | 1 |
node_exporter.daemonset.containers.resources |
Richieste e limiti delle risorse del container node-exporter. | Mappa | {} |
node_exporter.daemonset.hostNetwork |
Rete host richiesta per questo pod. | Booleano | false |
node_exporter.daemonset.podAnnotations |
Annotazioni dei pod di distribuzione node-exporter. | Mappa | {} |
node_exporter.daemonset.podLabels |
Etichette dei pod di distribuzione node-exporter. | Mappa | {} |
node_exporter.service.type |
Tipo di servizio per esporre node-exporter. Valori supportati: ClusterIP . |
Stringa | ClusterIP |
node_exporter.service.port |
Porta del servizio node-exporter. | Intero | 9100 |
node_exporter.service.targetPort |
Porta di destinazione del servizio node-exporter. | Intero | 9100 |
node_exporter.service.labels |
Etichette del servizio node-exporter. | Mappa | {} |
node_exporter.service.annotations |
Annotazioni del servizio node-exporter. | Mappa | {} |
pushgateway.deployment.replicas |
Numero di repliche di pushgateway. | Intero | 1 |
pushgateway.deployment.containers.resources |
Richieste e limiti delle risorse del container pushgateway. | Mappa | {} |
pushgateway.deployment.podAnnotations |
Annotazioni dei pod delle distribuzioni di pushgateway. | Mappa | {} |
pushgateway.deployment.podLabels |
Etichette dei pod delle distribuzioni di pushgateway. | Mappa | {} |
pushgateway.service.type |
Tipo di servizio per esporre pushgateway. Valori supportati: ClusterIP . |
Stringa | ClusterIP |
pushgateway.service.port |
Porta del servizio pushgateway. | Intero | 9091 |
pushgateway.service.targetPort |
Porta di destinazione del servizio pushgateway. | Intero | 9091 |
pushgateway.service.labels |
Etichette del servizio pushgateway. | Mappa | {} |
pushgateway.service.annotations |
Annotazioni del servizio pushgateway. | Mappa | {} |
cadvisor.daemonset.replicas |
Numero di repliche di cadvisor. | Intero | 1 |
cadvisor.daemonset.containers.resources |
Richieste e limiti delle risorse del container cadvisor. | Mappa | {} |
cadvisor.daemonset.podAnnotations |
Annotazioni dei pod delle distribuzioni di cadvisor. | Mappa | {} |
cadvisor.daemonset.podLabels |
Etichette dei pod delle distribuzioni di cadvisor. | Mappa | {} |
ingress.enabled |
Attiva/disattiva l'ingresso per prometheus e alertmanager. | Booleano | false |
ingress.virtual_host_fqdn |
Nome host per l'accesso a Prometheus e alertmanager. | Stringa | prometheus.system.tanzu |
ingress.prometheus_prefix |
Prefisso del percorso per Prometheus. | Stringa | / |
ingress.alertmanager_prefix |
Prefisso del percorso per alertmanager. | Stringa | /alertmanager/ |
ingress.prometheusServicePort |
Porta del servizio Prometheus verso cui indirizzare il traffico tramite proxy. | Intero | 80 |
ingress.alertmanagerServicePort |
Porta del servizio alertmanager verso cui indirizzare il traffico tramite proxy. | Intero | 80 |
ingress.tlsCertificate.tls.crt |
Certificato facoltativo per l'ingresso se si desidera utilizzare il proprio certificato TLS. Per impostazione predefinita, viene generato un certificato autofirmato. Nota tls.crt è una chiave e non è nidificata. |
Stringa | Generated cert |
ingress.tlsCertificate.tls.key |
Chiave privata del certificato facoltativa per l'ingresso se si desidera utilizzare il proprio certificato TLS. Nota tls.key è una chiave e non è nidificata. |
Stringa | Generated cert key |
ingress.tlsCertificate.ca.crt |
Certificato CA facoltativo. Nota ca.crt è una chiave e non è nidificata. |
Stringa | CA certificate |
Per apportare modifiche alla configurazione del pacchetto Prometheus dopo la distribuzione, aggiornare il pacchetto Prometheus distribuito:
Aggiornare la configurazione di Prometheus nel file prometheus-data-values.yaml
.
Aggiornare il pacchetto installato:
tanzu package installed update prometheus \
--version 2.43.0+vmware.1-tkg.4 \
--values-file prometheus-data-values.yaml \
--namespace my-packages
Output previsto:
| Updating package 'prometheus'
- Getting package install for 'prometheus'
| Updating secret 'prometheus-my-packages-values'
| Updating package install for 'prometheus'
Updated package install 'prometheus' in namespace 'my-packages'
Il pacchetto Prometheus viene riconciliato utilizzando il nuovo valore o i nuovi valori aggiunti. L'applicazione delle modifiche da parte di kapp-controller
può richiedere fino a cinque minuti.
Per informazioni sull'aggiornamento di, vedere Aggiornamento di un pacchetto.
Per rimuovere il pacchetto Prometheus nel cluster, eseguire:
tanzu package installed delete prometheus --namespace my-packages
Per informazioni sull'eliminazione, vedere Eliminazione di un pacchetto.
Per configurare le notifiche per Alert Manager, modificare la sezione alertmanager.config.alertmanager_yml
nel file prometheus-data-values.yml
.
Per informazioni sulla configurazione delle notifiche, ad esempio Slack o Email, vedere Configurazione nella documentazione di Prometheus.
Per impostazione predefinita, l'ingresso non è abilitato in Prometheus. Questo perché l'accesso al dashboard di Prometheus non è autenticato. Per accedere al dashboard di Prometheus:
Distribuire Contour nel cluster.
Per informazioni sulla distribuzione di Contour, vedere Installazione di Contour per il controllo dell'ingresso.
Copiare la sezione ingress.enabled
seguente in prometheus-data-values.yaml
.
ingress:
enabled: false
virtual_host_fqdn: "prometheus.system.tanzu"
prometheus_prefix: "/"
alertmanager_prefix: "/alertmanager/"
prometheusServicePort: 80
alertmanagerServicePort: 80
#! [Optional] The certificate for the ingress if you want to use your own TLS certificate.
#! We will issue the certificate by cert-manager when it's empty.
tlsCertificate:
#! [Required] the certificate
tls.crt:
#! [Required] the private key
tls.key:
#! [Optional] the CA certificate
ca.crt:
Aggiornare ingress.enabled
da false
a true
.
Creare un record DNS per mappare prometheus.system.tanzu
all'indirizzo del bilanciamento del carico di Envoy.
Per ottenere l'indirizzo del bilanciamento del carico di Envoy, vedere Installazione di Contour per il controllo dell'ingresso.
Accedere al dashboard di Prometheus passando a https://prometheus.system.tanzu
in un browser.
Il pacchetto Prometheus è ora in esecuzione e sta recuperando i dati del cluster. Per visualizzare i dati nei dashboard di Grafana, vedere Distribuzione di Grafana nei cluster del carico di lavoro.