Red Hat OpenShift Osservabilità della virtualizzazione su IBM Cloud
Progettare l'osservabilità per la virtualizzazione " Red Hat OpenShift " su IBM Cloud configurando RHACM, LokiStack, gli avvisi di Prometheus e i log di IBM Cloud.
Red Hat OpenShift Virtualizzazione
Red Hat OpenShift La virtualizzazione integra i carichi di lavoro delle macchine virtuali nei cluster di Kubernetes, consentendo il monitoraggio, la generazione di avvisi e la registrazione centralizzati in ambienti ibridi multi-cluster.
Introduzione generale
Red Hat Advanced Cluster Management (RHACM) consente di gestire e controllare più cluster tramite un'unica istanza di OpenShift. Ciò consente funzionalità quali il clustering remoto, la distribuzione dei carichi di lavoro tra nodi e regioni, il ripristino di emergenza e altro ancora. Ogni cluster gestito comunica con il cluster hub designato. Spesso ciò significa che il cluster hub contiene i nodi del piano di controllo, mentre i cluster gestiti sono tutti composti da nodi di lavoro. Su ogni cluster gestito è installato un Klusterlet, che serve a controllare la comunicazione con il cluster hub. Il termine "cluster locale" viene utilizzato per indicare un cluster hub che è anche un cluster gestito.
RHACM viene installato tramite un operatore separato su un'istanza di Red Hat OpenShift. L'installazione di RHACM richiede una licenza e un contratto di abbonamento. Dopo l'installazione, sono disponibili diverse funzionalità multi-cluster che richiedono alcune configurazioni aggiuntive per ampliarne ulteriormente le capacità.
Per impostazione predefinita, Red Hat OpenShift offre una serie di opzioni di osservabilità. Senza operatori aggiuntivi, sono disponibili alcune funzionalità di base relative agli avvisi, al monitoraggio e alla registrazione. OpenShift fornisce una piattaforma basata su Prometheus che, inizialmente, si concentra sulle funzionalità fondamentali del cluster, ma che può essere ampliata tramite personalizzazione. Alcuni esempi di componenti creati per gestire l'osservabilità:
- Operatore di monitoraggio dei cluster (CMO)- responsabile generale delle componenti di osservabilità
- Prometheus- monitora i dati ricevuti dal CMO e crea un motore di database per le metriche
- Metrics Server - raccoglie le metriche e configura il servizio API (Application Programming Interface) per Thanos
- Thanos Querier - fornisce un'interfaccia per l'interrogazione delle metriche raccolte
- Alertmanager - riceve avvisi da Prometheus e può inviarli all'esterno
Questi vengono distribuiti automaticamente nel namespace openshift-monitoring durante la distribuzione di OpenShift. I dashboard e le relative impostazioni sono disponibili nella sezione "Observe " della
vista " Amministrazione".
La sezione "Avvisi" mostrerà gli avvisi attuali, le regole di avviso e consentirà di visualizzare o aggiungere eventuali regole di disattivazione degli avvisi. La pagina "Metriche" consente all'utente di eseguire query PromQL e di visualizzare dati e grafici relativi alle metriche. I dashboard mostreranno grafici delle metriche relativi a un elenco predefinito, selezionabile da diversi menu a tendina e per diversi periodi di tempo. I "Targets" sono l'elenco definito degli endpoint a cui il Metrics Server si rivolge per ricevere dati dai diversi componenti. La sezione "Logs" apparirà solo dopo aver installato e configurato la funzione di registrazione di OpenShift (vedere più avanti in questa guida). Per ulteriori informazioni sul progetto e sui componenti, consultare https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/monitoring/about-openshift-container-platform-monitoring#monitoring-stack-architecture
RHACM introduce ulteriori funzionalità di osservabilità incentrate sul supporto di più cluster di host. Ciò amplia notevolmente l'infrastruttura esistente di Prometheus, Thanos e Alertmanager, aggiungendo però alcuni nuovi elementi:
- Operatore di osservabilità multicluster - responsabile del monitoraggio e della raccolta delle metriche dei cluster gestiti
- Grafana- nuova dashboard personalizzabile per le metriche, che include metriche aggiuntive relative ai nodi e alle macchine virtuali
- Controller dell'add-on di osservabilità: nuovo server API che gestisce i cluster gestiti
- Thanos Compactor - consente l'archiviazione a lungo termine dei dati metrici
La funzionalità di osservabilità di RHACM deve essere abilitata dopo l'installazione dell'operatore RHACM, poiché non è abilitata per impostazione predefinita. Un punto centrale di questa guida è il presupposto che l'osservabilità di RHACM sia abilitata, in particolare per quanto riguarda le metriche e i dashboard. Per ulteriori informazioni sull'architettura di osservabilità RHACM, consultare https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.14/html-single/observability/index#observing-environments-intro
Oltre a disporre di una dashboard centralizzata per la registrazione, è necessario installare l’operatore di registrazione “ OpenShift ”. Ciò consentirà inoltre di aggiungere il supporto per l'inoltro dei log a fonti esterne, come ad esempio i log di IBM Cloud. Per ulteriori informazioni sulla struttura dei log di OpenShift, consultare la sezione “Log” della presente guida e https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/logging/logging-6-2
Installazione
Per configurare l'osservabilità RHACM
Per installare l'operatore RHACM e abilitarne le funzionalità di osservabilità, procedere come segue:
- Accedi alla tua istanza di OpenShift.
- Nella sezione "Ecosistema" del Catalogo software
- Scegli uno spazio dei nomi
- Nella ricerca, cerca "Advanced Cluster Management" per Kubernetes
- Selezionare "Installa" se non è già installato
- Una volta installato, selezionalo nella sezione “Ecosistema” alla voce “Operatori installati”
- Nella scheda " MultiClusterHub ", fare clic su "Crea" MultiClusterHub
- Assegnagli un nome appropriato e fai clic su “Crea”
- Vai alla sezione "Archiviazione" all'indirizzo StorageClasses
- Assicurati che sia impostato un StorageClass come predefinito per la distribuzione dell'infrastruttura. Ad esempio, se si utilizza ODF, assicurarsi che la classe "ocs-storagecluster-ceph-rdb-virtualization" sia impostata sul valore predefinito. Se così non fosse, clicca sui 3 puntini accanto all' StorageClass e desiderata e seleziona "Imposta come predefinita"
- Seguire i passaggi descritti all'indirizzo https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.14/html-single/observability/index#enabling-observability per abilitare i moduli di osservabilità di RHACM
Se si configura Thanos con IBM Cloud® Object Storage, il file thanos-object-storage.yaml avrà un aspetto simile al seguente:
apiVersion: v1
kind: Secret
metadata:
name: thanos-object-storage
namespace: open-cluster-management-observability
type: Opaque
stringData:
thanos.yaml: |
type: s3
config:
bucket: <bucket-name>
endpoint: s3.us-east.cloud-object-storage.appdomain.cloud
insecure: true
access_key: XXXX
secret_key: XXXX
Le credenziali del servizio devono essere chiavi HMAC create nell'istanza di IBM Cloud Object Storage. I valori di access_key e secret_key saranno quelli HMAC forniti.
Installazione e configurazione
Avvisi
Panoramica
Gli avvisi di sistema predefiniti sono gestiti da uno stack di monitoraggio integrato di OpenShift's e riguardano aspetti a livello di piattaforma:
Ambito: Monitoraggio dell'infrastruttura a cluster singolo
Spazio dei nomi: openshift-monitoring
su ciascun cluster gestito
Componenti:
- Operatore addetto al monitoraggio dei cluster
- Prometheus Operatore
- Prometheus (per le metriche del cluster)
- AlertManager (per gli avvisi relativi ai cluster)
Se gli avvisi di sistema predefiniti non sono sufficienti a coprire il tuo scenario aziendale, puoi configurare avvisi personalizzati, che possono essere gestiti dallo stack di osservabilità di RHACM e supportano scenari multi-cluster:
Ambito: monitoraggio di applicazioni multi-cluster e risorse personalizzate
Spazio dei nomi: open-cluster-management-observability sul cluster hub
Componenti:
- Query Thanos (vista delle metriche globali)
- Thanos Ruler (valutazione centralizzata degli allarmi)
- AlertManager (sistema di allerta multi-cluster)
Creazione di avvisi di sistema
Per gli avvisi di sistema (gestiti dallo spazio dei nomi openshift-monitoring ), seguire la procedura riportata di seguito per configurare gli avvisi. Il sistema di notifiche supporta l'integrazione con PagerDuty,, Slack ed
e-mail.
- Accedi alla tua istanza di OpenShift.
- Nella sezione "Amministrazione" del cluster Settings88 su Alertmanager
- Configurare uno dei ricevitori esistenti elencati nella tabella in basso oppure fare clic su “Crea ricevitore”
- Assegnare un nome appropriato
- Nella sezione "Tipo di ricevitore", selezionarne uno dal menu a tendina
- Se selezioni " PagerDuty, ", ti serviranno una chiave di instradamento e un " URL ".
- Se selezioni "Email", ti servirà un server SMTP.
- Se selezioni Slack, ti serviranno l' URL e del webhook e il nome del canale (può essere un nome utente per i messaggi diretti, senza il simbolo @).
- Per l'instradamento delle etichette, seleziona in base agli avvisi per i quali desideri inviare una notifica.
- Ad esempio,
severity = criticalinvia tutti gli avvisi critici, mentreseverity = warninginvia tutti gli avvisi di avvertimento. - È possibile lasciare questo campo vuoto affinché tutti gli avvisi generino una notifica
- Ad esempio,
È possibile fare clic sulla scheda "Regole di avviso", che mostrerà le regole di avviso predefinite esistenti relative agli avvisi di sistema. Prendiamo ad esempio le regole di allerta per il cluster di archiviazione Ceph, come illustrato di seguito: ciò significa che dovrebbe essere attivato un allarme se l'utilizzo dello spazio di archiviazione supera il 75%.
Creazione di avvisi personalizzati
Per gli avvisi personalizzati (gestiti dallo spazio dei nomi open-cluster-management-observability ):
Quando le regole di avviso predefinite non coprono uno scenario richiesto, è necessario creare regole di avviso personalizzate.
L'esempio seguente crea un avviso su Slack quando una macchina virtuale nel namespace predefinito non è in stato di esecuzione. Questo scenario non è contemplato dalle regole di avviso predefinite e richiede una regola
personalizzata in RHACM. Completa i seguenti passi:
- Verificare se esiste la metrica " Prometheus "
kubevirt_vm_info. Accedi al pod "observability-thanos-query" nel namespace "open-cluster-management-observability" ed esegui il seguente comando curl per verificare che la metrica esista:curl -s 'http://localhost:9090/api/v1/query' --data-urlencode 'query=kubevirt_vm_info'.
$ curl -s 'http://localhost:9090/api/v1/query' --data-urlencode 'query=kubevirt_vm_info'
{"status":"success","data":{"resultType":"vector","result":[{"metric":{"__name__":"kubevirt_vm_info","cluster":"local-cluster","clusterID":"110b2032-b6b9-455a-abd5-9949482b61df","container":"virt-controller","endpoint":"metrics","flavor":"small","instance":"10.129.0.198:8443","job":"kubevirt-prometheus-metrics","machine_type":"pc-q35-rhel9.6.0","name":"centos-stream9-white-mink-62","namespace":"acm-test","os":"centos-stream9","pod":"virt-controller-7744b59dd8-dk7tw","receive":"true","service":"kubevirt-prometheus-metrics","status":"running","status_group":"running","tenant_id":"2c1cf409-966c-4c2d-bd57-f24c4c5a9393","workload":"server"},"value":[1762574206.765,"1"]},{"metric":{"__name__":"kubevirt_vm_info","cluster":"local-cluster","clusterID":"110b2032-b6b9-455a-abd5-9949482b61df","container":"virt-controller","endpoint":"metrics","instance":"10.129.0.198:8443","instance_type":"u1.medium","job":"kubevirt-prometheus-metrics","machine_type":"pc-q35-rhel9.6.0","name":"rhel-10-rose-damselfly-10","namespace":"acm-test","pod":"virt-controller-7744b59dd8-dk7tw","preference":"rhel.10","receive":"true","service":"kubevirt-prometheus-metrics","status":"running","status_group":"running","tenant_id":"2c1cf409-966c-4c2d-bd57-f24c4c5a9393"},"value":[1762574206.765,"1"]}],"analysis":{}}}
- Creare un file YML di ConfigMap relativo alla regola di avviso personalizzata. Supponiamo che il nome della configmap sia " thanos-ruler-custom-rules.yaml ". Il contenuto può essere il seguente.
apiVersion: v1
kind: ConfigMap
metadata:
name: thanos-ruler-custom-rules
# need to ensure namespace is "open-cluster-management-observability"
namespace: open-cluster-management-observability
labels:
# need this label to ensure custom alert rules are automatically mounted into Thanos Ruler pods
thanos-ruler-rule: "true"
data:
# name has to be custom_rules.yaml, custom alert rules are automatically mounted into Thanos Ruler pods successfully
custom_rules.yaml: |
groups:
- name: VirtualMachineAlerts
interval: 30s
rules:
- alert: VirtualMachineNotRunning
expr: kubevirt_vm_info{status!="running"} > 0
for: 2m
annotations:
summary: "VM {{ $labels.name }} is Not in running status on {{ $labels.cluster }}"
description: "VM {{ $labels.name }} in namespace {{ $labels.namespace }} is not running."
labels:
severity: critical
alert_type: vm_not_running
L'idea di fondo è quella di sfruttare le metriche esistenti di Prometheus, ovvero "kubevirt_vm_info" e PromQL kubevirt_vm_info {status!="running"} > 0, che possono generare un avviso qualora venga rilevato che alcune macchine virtuali non si trovano nello stato "Running".
Attenzione: per garantire che le regole di avviso personalizzate vengano integrate correttamente e in modo automatico nei pod di Thanos Ruler, è necessario che siano soddisfatte le seguenti 2 condizioni:
- Assicurati che la configmap sia etichettata con: thanos-ruler-rule: "true"
- Assicurarsi che l’impostazione “key” sia impostata su “ custom_rules.yaml ”
Attenzione: il valore di b: alert_type: vm_not_running deve corrispondere al segreto che verrà creato a breve.
- Applicare la configmap eseguendo il comando "oc -n open-cluster-management-observability apply -f thanos-ruler-custom-rules.yaml ". Verifica quindi l'output " /etc/thanos/rules/thanos-ruler-custom-rules da thanos-ruler-custom-rules", che indica che la regola personalizzata è stata associata al pod "observability-thanos-rule".
% oc describe pod observability-thanos-rule-0
Supporti:
/etc/thanos/config/thanos-ruler-config from thanos-ruler-config (ro)
/etc/thanos/configmaps/alertmanager-ca-bundle from alertmanager-ca-bundle (rw)
/etc/thanos/rules/thanos-ruler-custom-rules from thanos-ruler-custom-rules (rw)
/etc/thanos/rules/thanos-ruler-default-rules from thanos-ruler-default-rules (rw)
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-c55nd (ro)
/var/thanos/rule from data (rw)
- Crea un file YAML segreto denominato “ alertmanager-config.yaml ”, che contenga le impostazioni relative al destinatario, all’URL del webhook di Slack, al canale Slack, ecc.
Attenzione: assicurarsi che il valore di alert_type corrisponda a quello definito nella configmap che verrà creata in seguito.
apiVersion: v1
kind: Secret
metadata:
name: alertmanager-config
# namespace has to be open-cluster-management-observability
namespace: open-cluster-management-observability
type: Opaque
stringData:
alertmanager.yaml: |
global:
resolve_timeout: 5m
# your slack webhook url
slack_api_url: 'https://hooks.slack.com/services/\<replace_with_your_webhook\>'
route:
receiver: 'default-receiver'
group_by: ['alertname', 'cluster', 'namespace', 'name']
group_wait: 10s
group_interval: 5m
repeat_interval: 12h
# Specific sub-route for VM not running alerts
routes:
- match:
# ensure the alert_type is consistent with the one defined in configmap
alert_type: vm_not_running
receiver: 'slack-vm-not-running'
group_wait: 5s
repeat_interval: 10m
receivers:
# default receiver (no-op)
- name: 'default-receiver'
# Slack receiver for VM not running alerts
- name: 'slack-vm-not-running'
slack_configs:
# slack channel name, do NOT miss "#" before you type the channel name
- channel: '#openshift-virt-observability-alerts' # <-- adjust to your Slack channel
title: '🚨 VM NOT RUNNING ALERT'
text: |
*Alert:* {{ .CommonLabels.alertname }}
*VM Name:* {{ .CommonLabels.name }}
*Namespace:* {{ .CommonLabels.namespace }}
*Cluster:* {{ .CommonLabels.cluster }}
*Severity:* {{ .CommonLabels.severity | toUpper }}
*Status:* {{ .Status | toUpper }}
{{ range .Alerts }}
*Description:* {{ .Annotations.description }}
{{ end }}
send_resolved: true
color: '{{ if eq .Status "firing" }}danger{{ else }}good{{ end }}'
actions:
- type: button
text: 'View in Console'
url: 'https://console-openshift-console.apps.{{ .CommonLabels.cluster }}/k8s/ns/{{ .CommonLabels.namespace }}/virtualmachines/{{ .CommonLabels.name }}'
-
Per applicare il segreto, eseguire il comando: oc -n open-cluster-management-observability apply -f alertmanager-config.yaml
-
Per arrestare una macchina virtuale, eseguire il comando:
virtctl stop`` e attendere che la macchina virtuale si arresti -
Controlla il canale Slack e verifica se è stato generato un avviso corrispondente, come quello riportato di seguito
È possibile verificare l'avviso generato anche tramite la console di gestione degli avvisi. Per aprire la console di Alert Manager, è possibile eseguire il comando: oc -n open-cluster-management-observability port-forward pod/observability-alertmanager-0 9093:9093, quindi accedere a http://localhost:9093/#/alerts per verificare se l'avviso viene generato in quella pagina. Ecco un esempio che mostra come viene generato l'avviso "slack-vm-not-running".
- Avvia una macchina virtuale eseguendo il comando:
virtctl start``, quindi attendi che la macchina virtuale si avvii.
Una volta che la macchina virtuale sarà tornata operativa, controlla il canale Slack in cui verrà segnalato che l'allerta è stata risolta, come mostra l'esempio seguente.
Link di riferimento:
-
Configurazione di Alert Manager in RHACM: https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/observability/observing-environments-intro#configuring-alertmanager
-
Come creare regole personalizzate: https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/observability/observing-environments-intro#creating-custom-rules
-
Metriche Prometheus relative a Kubevirt: https://kubevirt.io/monitoring/metrics.html
Metriche e dashboard
Funzionalità di monitoraggio aggiuntive
RHACM può essere utilizzato per monitorare metriche essenziali quali l'utilizzo della CPU, della memoria, della rete e dello spazio di archiviazione per un VM, un pod, un nodo del cluster o un intero cluster. La maggior parte di queste metriche può essere monitorata grazie alle funzionalità di osservabilità di base incluse in OpenShift,, ma RHACM consente all'utente di monitorare tali metriche su più cluster gestiti.
RHACM aggiunge dashboard preconfigurate di Grafana, progettate per monitorare metriche specifiche di VM. Ad esempio, all’interno della cartella “ACM / OpenShift Virtualization”, il dashboard “Executive dashboards / Single Virtual Machine View” mostra l’utilizzo della CPU, l’utilizzo della memoria, l’utilizzo della rete (trasmissione/ricezione, pacchetti persi), l'utilizzo dello spazio di archiviazione (IOPS/traffico) e l'utilizzo del filesystem per una singola macchina virtuale VM.
Per una breve panoramica delle metriche visualizzate in ogni dashboard preconfigurata fornita tramite RHACM, nonché delle funzionalità di osservabilità di base di OpenShift, consultare la tabella seguente:
Aggiunta/Personalizzazione dei dashboard
Non è possibile aggiungere nuovi dashboard con l'istanza Grafana predefinita, ma è possibile crearne e personalizzarne di nuovi creando prima un'istanza grafana-dev. Per farlo, è sufficiente seguire le istruzioni riportate nella documentazione sull'osservabilità di RHACM relative alla configurazione dell'istanza di sviluppo di Grafana utilizzando gli script disponibili all'indirizzo https://github.com/open-cluster-management/multicluster-observability-operator.
Se non si dispone dell'accesso all'utente kube:admin (come nel caso di Red Hat OpenShift su IBM Cloud ), creare invece una dashboard tramite una serie di comandi da terminale. Nel terminale, dopo aver eseguito il comando ./setup-grafana-dev.sh
--deploy come indicato nelle istruzioni precedenti, eseguire quanto segue:
-
Imposta la variabile d'ambiente utilizzata nei comandi seguenti sul namespace "observability":
export OBS_NS=open-cluster-management-observability -
Esegui il seguente comando per creare una definizione JSON per il ConfigMap:
cat <<'EOF' > full-dashboard.json { "id": null, "uid": "60EDAD96-69C2-4047-88AC-541C29BB74BA", "title": "VM Metrics Dashboard", "tags": ["control-plane", "cluster-metrics"], "timezone": "browser", "schemaVersion": 30, "version": 1, "panels": [ { "type": "graph", "title": "Top 50 API Server Latency", "targets": [{"expr": "apiserver_request_latency_seconds_bucket"}] }, { "type": "graph", "title": "etcd Latency", "targets": [{"expr": "etcd_disk_wal_fsync_duration_seconds_bucket"}] }, { "type": "graph", "title": "Node CPU Usage", "targets": [{"expr": "node_cpu_seconds_total"}] }, { "type": "graph", "title": "Node Memory Usage", "targets": [{"expr": "node_memory_MemAvailable_bytes"}] } ] } EOF -
Crea l'oggetto
ConfigMaputilizzando la definizione YAML:cat <<EOF > full-dashboard.yaml apiVersion: v1 kind: ConfigMap metadata: name: full-dashboard namespace: $OBS_NS labels: grafana-custom-dashboard: "true" annotations: observability.open-cluster-management.io/dashboard-folder: Custom data: full-dashboard.json: |- $(sed 's/^/ /' full-dashboard.json) EOF -
Applica il nuovo ConfigMap:
oc apply -f full-dashboard.yaml
Dopo aver applicato l' ConfigMap,, dovrebbe essere stata creata una nuova dashboard " Grafana " per i clienti, che potrà essere ulteriormente modificata.
È possibile creare nuovi dashboard utilizzando le query PromQL attingendo da un’ampia selezione di metriche dei componenti KubeVirt e altre metriche Kubernetes.
Le metriche personalizzate possono essere esportate sia dalle fonti " Piattaforma " che dalle fonti " Carico di lavoro utente ", come descritto nella sezione " Configurazione avanzata dell'osservabilità ". È possibile visualizzare un elenco dei target delle metriche relative alla piattaforma o al carico di lavoro degli utenti disponibili accedendo alla sezione "Observe" all'indirizzo Pagina degli obiettivi e filtrando la "Fonte" rispettivamente per "Piattaforma" o "Utente".
Se non si ha accesso all'utente kube:admin (come nel caso di Red Hat OpenShift su IBM Cloud ), potrebbe essere necessario eseguire i seguenti comandi per creare una serie di metriche personalizzate. Di seguito sono riportati alcuni esempi di ConfigMaps che è possibile creare:
Ecco alcune metriche di base relative a Node Memory e API Server:
-
Crea un file YAML denominato " ConfigMap ":
cat <<EOF > observability-platform-metrics.yaml apiVersion: v1 kind: ConfigMap metadata: name: observability-metrics-custom-allowlist namespace: open-cluster-management-observability data: metrics_list.yaml: | names: - node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes - kubelet_runtime_operations_duration_seconds recording_rules: - record: apiserver_request_duration_seconds:histogram_quantile_90 expr: histogram_quantile(0.90,sum(rate(apiserver_request_duration_seconds_bucket{job="apiserver", verb!="WATCH"}[5m])) by (verb,le)) - record: etcd_disk_wal_fsync_duration_seconds:histogram_quantile_90 expr: histogram_quantile(0.90,sum(rate(etcd_disk_wal_fsync_duration_seconds_bucket[5m])) by (instance,le)) EOF -
Applicare il file appena creato ConfigMap:
oc apply -f observability-platform-metrics.yaml
Per alcune metriche relative al carico di lavoro degli utenti:
-
Crea un file YAML denominato " ConfigMap ":
cat <<EOF > observability-uwl-metrics.yaml apiVersion: v1 kind: ConfigMap metadata: name: observability-metrics-custom-allowlist namespace: open-cluster-management-observability data: uwl_metrics_list.yaml: | names: - node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes EOF -
Applicare il file appena creato ConfigMap:
oc apply -f observability-uwl-metrics.yaml
RightSizing Pannello di controllo delle raccomandazioni
RHACM fornisce inoltre una dashboard che mostra i consigli per ottimizzare l'allocazione della CPU e della memoria in base all'utilizzo delle risorse, qualora la funzionalità Right-Sizing sia abilitata nella risorsa personalizzata " MultiClusterObservability " sul cluster hub.
Visualizzazione delle metriche e dei dashboard
Per visualizzare le metriche di osservabilità e i dashboard inclusi nell'installazione di base di OpenShift:
- Dal pannello di sinistra della console OpenShift, selezionare "Observability".
- Seleziona "Metrics" per generare una visualizzazione grafica a partire da una query " PromQL ".
- Seleziona "Dashboard" e scegli tra una serie di dashboard preconfigurate nell'elenco a discesa "Dashboard".
Per visualizzare le metriche di osservabilità e i dashboard con RHACM installato:
- Dalla console di OpenShift, seleziona "Tutti i cluster" dal menu a tendina in alto.
- 
- Dalla pagina "Cluster", seleziona il link " Grafana " sulla destra.
-
Grafana
-
- Verrà visualizzata la pagina delle dashboard di Grafana con un elenco di dashboard preconfigurate incluse nell'installazione di RHACM.
Registrazione - Panoramica
Introduzione generale
Sono disponibili due opzioni di registrazione – “ LokiStack ” e “ IBM Cloud Logs” – poiché ciascuna risponde a esigenze diverse. LokiStack offre funzionalità personalizzabili di raccolta e conservazione dei log all’interno del cluster, mentre IBM Cloud Logs garantisce un’esperienza di registrazione dei log gestita, nativa per il cloud e di facile utilizzo. È possibile sceglierne una o utilizzarle entrambe, a seconda delle risorse, delle dimensioni e delle esigenze di visibilità. Le sezioni seguenti illustrano i requisiti di ciascuna opzione e descrivono in dettaglio le funzionalità incluse, in modo da consentirvi di decidere quale soluzione, o combinazione di soluzioni, si adatti meglio al vostro ambiente.
Cose da tenere a mente:
- IBM Cloud Logs supporta una facile integrazione quando l'istanza di Red Hat® OpenShift® Kubernetes Service è gestita.
- LokiStack La funzione di registrazione è disponibile sia per le configurazioni gestite che per quelle RYO e offre un'integrazione nativa all'interno della console nell'ambiente OpenShift.
- OpenShift RHACM è uno strumento per la gestione centralizzata di più cluster di OpenShift, mentre LokiStack funge da sistema di aggregazione dei log all’interno di un singolo cluster di OpenShift.
- Non è necessario avere installato OpenShift Advanced Cluster Management (RHACM) per utilizzare LokiStack per la registrazione dei log.
Registrazione - Prima opzione ( IBM Cloud: registrazioni - preferita)
NOTA:
- Questa configurazione di integrazione semplice e veloce è disponibile ESCLUSIVAMENTE per i cluster gestiti di Red Hat OpenShift Kubernetes Service
- La configurazione bare-metal/RYO di Red Hat OpenShift Kubernetes Service non supporta questa opzione e richiede un approccio personalizzato
Installazione e configurazione
Per configurare i log di IBM Cloud e collegarli al proprio cluster OpenShift, procedere come segue:
- Crea un'istanza di Logs c IBM Cloud
- rif.: Istanza di provisioning
- È possibile farlo tramite l'interfaccia utente e la riga di comando
- Crea un bucket di dati di archiviazione
- rif.: Configurazione del bucket
- Ciò è necessario se si desidera conservare i dati a lungo termine o effettuare ricerche. L'istanza standard di Cloud Logs prevede una conservazione dei log prioritari compresa tra un minimo di 7 giorni e un massimo di 90 giorni
- Abilitare la registrazione nel cluster Red Hat OpenShift Kubernetes Service
Rollback/eliminazione dei log - Log di IBM Cloud
Per rimuovere l'integrazione " IBM Cloud Logs" ed eliminare le risorse associate, procedere come segue:
- Elimina l'istanza di Cloud Logs
- Elimina il bucket dei dati di archiviazione
- rif.: Elimina bucket
Interfaccia utente di registrazione - Registri di IBM Cloud
Confronto con i log di Aria di VMware ( vRealize: Log Insight vs log di IBM Cloud )
| Categoria | VMware vRealize Log Insight ( ) vRLog | IBM Cloud Registri |
|---|---|---|
| Focus sulla piattaforma | VMware/vSphere ambienti | IBM Cloud –gestiti ( Red Hat OpenShift Kubernetes Service, VPC, servizi cloud) |
| Architettura | Basato su appliance, con scalabilità verticale | Pipeline di registrazione completamente gestita e nativa per il cloud |
| Raccoglitori di log | vRLI Agente, syslog | Fluent Bit / Fluentd / Endpoint di acquisizione HTTP |
| Origini supportate | ESXi, vCenter, NSX, VCF, Linux /host Windows | Red Hat OpenShift Kubernetes Service log, servizi, syslog, log delle app personalizzate tramite API/ IBM CloudHTTP |
| Archiviazione | Disco locale / NFS /VSAN | IBM Cloud Object Storage (gestito, scalabile) |
| Scalabilità | Adattare la soluzione aggiungendo dispositivi | Su scala cloud; capacità gestita automaticamente |
| Multi-tenant | Limitato | Progettato per essere multi-tenant sulla base di un sistema di gestione delle identità e delle autorizzazioni (IAM) di tipo “ IBM Cloud ” |
| Avvisi | Integrato, basato su interfaccia grafica | Funzionalità integrate di allerta e notifiche in IBM Cloud |
| Conservazione | Basato su disco locale; limitato se non scalato | Politiche di conservazione scalabili gestite nel cloud |
| Dashboard | Pacchetti di contenuti predefiniti per VMware | IBM Cloud Dashboard di osservabilità |
| Interfaccia utente / Visualizzatore dei log | vRLI Interfaccia utente web; Visualizzazione centralizzata | IBM Cloud Interfaccia utente di Logs |
| Linguaggio di query | LIQL (proprietà di VMware ) | Operatori di ricerca in stile Lucene/Elastic |
| Modello operativo | Aggiornamento/manutenzione manuale | Gestito interamente da IBM Cloud |
Registrazione - Seconda opzione ( LokiStack )
Panoramica dei componenti
Operatore: LokiOperator ( LokiStack )
versione: 6.3.1
fornitore: Red Hat
note: Inoltra i log alla combinazione supportata di Loki e proxy web con integrazione dell'autenticazione OpenShift Container Platform. LokiStack's Il proxy
utilizza l'autenticazione OpenShift Container Platform per garantire il multi-tenancy
documentazione: Dimensionamento di Loki
Operatore: Registrazione del sistema " Red Hat OpenShift " ( ClusterLogForwarder (CLF))
versione: 6.3.1
fornitore: Red Hat
note: Il CLF ( ClusterLogForwarder ) consente l'inoltro flessibile dei dati di log verso varie
destinazioni, permettendo agli utenti di selezionare i messaggi di log da più fonti, elaborarli tramite pipeline e inviarli a una o più destinazioni. Supporta input per la selezione dei log, output per l'inoltro a sistemi esterni, filtri
per la trasformazione o l'eliminazione dei messaggi di log e pipeline che collegano input, filtri e output in un flusso di lavoro completo per l'inoltro dei log.
documentazione: Configurazione di Log Forwarder
Operatore: Operatore per l'osservabilità dei cluster (COO)
versione: 1.3.0
fornitore: Red Hat
note: Il Cluster Observability Operator (COO) è un componente opzionale di OpenShift che consente agli amministratori di implementare
stack di monitoraggio personalizzati e altamente configurabili, fornendo un’osservabilità a livello di namespace più approfondita rispetto al sistema predefinito. È in grado di gestire l' Prometheus, per le metriche di alta disponibilità
e il supporto alla scrittura remota; Thanos Querier, per l'esecuzione centralizzata di query tra cluster; Alertmanager, per un sistema di avvisi flessibile; i plugin dell'interfaccia utente, per interfacce avanzate di monitoraggio, registrazione
e tracciamento; e Incident Detection, per raggruppare gli avvisi correlati in incidenti e aiutare a identificare le cause alla radice.
documento: Funzione del Direttore operativo(COO )
Architettura di registrazione centralizzata
Installazione e configurazione (versione breve con riferimenti)
Per configurare rapidamente la registrazione centralizzata all'interno del cluster utilizzando OpenShift Logging e LokiStack,, procedere come segue:
- Installare l' LokiOperator,, l' Red Hat OpenShift, il Logging Operator e il Cluster Observability Operator (COO) dal catalogo software.
- Creare e configurare un account di servizio come richiesto dalla funzione di registrazione dei log del cluster
- Crea un'istanza di LokiStack
- rif.: Crea LokiStack
- Creare l'interfaccia utente per la registrazione centralizzata
- Creare l'istanza di " ClusterLogForwarder " (CLF)
Installazione e configurazione (dettagliata, personalizzata)
Per implementare una configurazione personalizzata di registrazione di LokiStack con account di servizio e specifiche delle risorse dettagliate, procedere come segue:
- Installare l' LokiOperator,, l' Red Hat OpenShift, il Logging Operator e il Cluster Observability Operator (COO) dal catalogo software.
- Creare e configurare un account di servizio come richiesto dalla funzione di registrazione dei log del cluster
- rif.: Impostazioni dell'account di servizio
- Comandi per configurare l'account di servizio:
oc create sa loki-collector-sa -n openshift-logging
oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z loki-collector-sa -n openshift-logging
oc adm policy add-cluster-role-to-user collect-application-logs -z loki-collector-sa -n openshift-logging
oc adm policy add-cluster-role-to-user collect-audit-logs -z loki-collector-sa -n openshift-logging
oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z loki-collector-sa -n openshift-logging
- In questo modo, l'account creato disporrà delle autorizzazioni corrette per i vari tipi di log
- Crea una risorsa personalizzata " LokiStack " utilizzando un file YAML come input
- rif.: Crea LokiStack
- Il file YAML personalizzato rappresenta l'esempio migliore di un'istanza funzionante con le ottimizzazioni già implementate:
apiVersion: loki.grafana.com/v1
kind: LokiStack
metadata:
name: logging-loki
namespace: openshift-logging
spec:
managementState: Managed
size: 1x.medium
storage:
schemas:
- effectiveDate: "2024-11-11"
version: v13
secret:
name: logging-loki-secret
type: s3
storageClassName: ocs-storagecluster-ceph-rbd
tenants:
mode: openshift-logging
template:
compactor:
replicas: 1
resources:
limits:
cpu: "1"
memory: "2Gi"
requests:
cpu: "250m"
memory: "1Gi"
distributor:
replicas: 1
gateway:
replicas: 1
indexGateway:
replicas: 1
ingester:
replicas: 2
querier:
replicas: 2
queryFrontend:
replicas: 2
ruler:
replicas: 1
lokiConfig:
query_range:
align_queries_with_step: true
max_retries: 5
parallelise_shardable_queries: true
cache_results: true
results_cache:
cache_validity: 10m
background_writeback: true
frontend_worker:
frontend_address: query-frontend-http.logging-loki.svc.cluster.local:9095
grpc_client_config:
max_send_msg_size: 104857600
max_recv_msg_size: 104857600
querier:
query_ingesters_within: 12h
engine:
timeout: 5m
max_look_back_period: 672h
compactor:
retention_enabled: true
retention_delete_delay: 2h
retention_delete_worker_count: 150
working_directory: /var/loki/compactor
compaction_window: 24h
retention_stream:
default: 30d
- Una volta creato uno spazio di archiviazione PVC, è possibile aumentarlo facilmente, ma non è così semplice ridurlo. Per ridurla, è necessario ridistribuire l'istanza con una nuova serie di valori minimi.
- L'area di archiviazione può anche essere un bucket di s3.
- Anche se si utilizza Ceph/PVC locale, è necessario un segreto S3 valido.
- Creare l'interfaccia utente per la registrazione centralizzata
- rif.: Creazione dell'interfaccia utente
- File YAML personalizzato utilizzato per creare l'interfaccia utente a partire dal COO installato in precedenza:
apiVersion: observability.openshift.io/v1alpha1
kind: UIPlugin
metadata:
name: logging
spec:
type: Logging
logging:
lokiStack:
name: logging-loki
timeout: 30s
schema: otel
- Creare la risorsa personalizzata (CR) "Inoltro dei log" utilizzando il metodo YAML
- rif.: Creazione di un Log Forwarder
- Ecco un esempio di log forwarder in esecuzione per Lokistack:
apiVersion: observability.openshift.io/v1
kind: ClusterLogForwarder
metadata:
name: loki-forwarder
namespace: openshift-logging
spec:
collector:
resources:
requests:
cpu: 500m
memory: 4Gi
limits:
cpu: 6
memory: 6Gi
serviceAccount:
name: loki-collector-sa
outputs:
- name: forward-to-lokistack
type: lokiStack
lokiStack:
authentication:
token:
from: serviceAccount
target:
name: logging-loki
namespace: openshift-logging
tuning:
deliveryMode: AtLeastOnce
compression: none
maxWrite: 10Mi
minRetryDuration: 2
maxRetryDuration: 30
pipelines:
- name: default-pipeline
inputRefs:
- application
- infrastructure
- audit
outputRefs:
- forward-to-lokistack
- È necessario definire i requisiti minimi di risorse prima della distribuzione, per evitare che il collector smetta di funzionare su ogni Node
- C'è un solo daemonset di raccolta per Node
Note importanti
Taglie Loki:
rif.: documento sulle taglie di Loki
- Al momento della distribuzione, questi sono i limiti massimi generali delle risorse consentiti per ciascuna dimensione
- Una volta impostate le dimensioni dei dischi, non è possibile ridurle; è possibile solo aumentarle. È necessario eliminare la distribuzione e ridistribuire lo stack con i nuovi requisiti minimi.
- Questo elimina i log, a meno che non ne sia stato effettuato un backup esterno
- Ceph PVC non è necessario; è possibile utilizzare una configurazione di archiviazione esterna o un'altra configurazione di tipo " S3 "
Raccoglitore di dati di log
- Il forwarding richiede un elevato utilizzo di risorse hardware e la memoria dovrà essere dimensionata in modo da adeguarsi alle dimensioni dell'ambiente
Soluzioni di inoltro dei log di terze parti supportate:
- azureMonitor
- Inoltra i log al monitor " Azure ".
- CloudWatch
- Inoltra i log a AWS e CloudWatch.
- elasticsearch
- Inoltra i log a un'istanza esterna di Elasticsearch.
- googleCloudLogging
- Inoltra i log al sistema di registrazione di Google Cloud.
- http
- Inoltra i log a un endpoint generico HTTP.
- kafka
- Inoltra i log a un broker Kafka.
- otlp
- Inoltra i log utilizzando l' OpenTelemetry Protocol.
- Splunk
- Invia i log a Splunk.
- syslog
- Invia i log a un server syslog esterno.
Interfaccia utente di registrazione - LokiStack
Confronto con i log di Aria di VMware ( vRealize Log Insight vs LokiStack )
| Categoria | VMware vRealize Log Insight ( ) vRLog | OpenShift LokiStack Registrazione |
|---|---|---|
| Focus sulla piattaforma | VMware/vSphere ambienti | Kubernetes/OpenShift-native |
| Architettura | Basato su appliance, con scalabilità verticale | Microservizi distribuiti su OpenShift |
| Raccoglitori di log | vRLI Agente, syslog | Collezionisti di vettori ( DaemonSet ) |
| Origini supportate | ESXi, vCenter, NSX, VCF, Linux /host Windows | Tutti i pod, i nodi e i container di Kubernetes/OpenShift; syslog generico |
| Archiviazione | Disco locale / NFS /VSAN | Ceph, PVC, Object storage ( S3 ), ecc |
| Scalabilità | Adattare la soluzione aggiungendo dispositivi | Scalabile orizzontalmente (ingester, queryer, distributori) |
| Multi-tenant | Limitato | Isolamento degli spazi dei nomi integrato |
| Conservazione | Basato su disco locale; limitato se non scalato | Basato su object storage; conservazione a lungo termine, basso costo |
| Dashboard | Pacchetti di contenuti predefiniti per VMware | Dashboard personalizzate ( Grafana ) |
| Interfaccia utente / Visualizzatore dei log | vRLI Interfaccia utente web; Visualizzazione centralizzata | OpenShift Interfaccia utente integrata nella console per la registrazione (tramite COO); Visualizzazione centralizzata |
| Linguaggio di query | LIQL (proprietà di VMware ) | LogQL (in stile " Prometheus ") |
Annullamento/eliminazione delle registrazioni - LokiStack
Per disinstallare LokiStack e rimuovere i componenti di registrazione all'interno del cluster, procedere come segue:
- Accedi a ciascun operatore ed elimina tutte le istanze create. Questa operazione eliminerà tutti i componenti associati utilizzati per l'esecuzione dei pod dei servizi.
Eliminazione
Sebbene non sia consigliabile dopo aver aggiunto ulteriori cluster gestiti, è possibile disinstallare RHACM. La disinstallazione richiede il distacco dei cluster gestiti, l'eliminazione di alcune risorse personalizzate e, infine, l'eliminazione dell'operatore. Per ulteriori informazioni, consultare la documentazione relativa alla disinstallazione di RHACM disponibile all’indirizzo Red Hat.
L'eliminazione della registrazione di OpenShift richiede la pulizia delle risorse personalizzate, di alcuni PVC, di Loki, di Elasticsearch e la disinstallazione dell'operatore. Per ulteriori informazioni, consultare la documentazione relativa alla disinstallazione della registrazione di OpenShift.
Risoluzione dei problemi
Se si riscontra un problema con l'osservabilità durante l'installazione e la configurazione:
- Accedi alla tua istanza di OpenShift
- Nella sezione "Amministrazione" all'indirizzo CustomResourceDefinitions
- Cerca MultiClusterObservability
- Seleziona l'unica definizione che indica
- Nella scheda "Istanze", cerca "osservabilità"
- Elimina quell'istanza e tutti i pod presenti nel namespace "open-cluster-management-observability" verranno automaticamente eliminati
- Nel terminale, riesegui il comando "oc apply -f multiclusterobservability_cr.yaml " per ricreare quell'istanza, utilizzando lo stesso file YAML impiegato in origine per creare l'oggetto MultiClusterObservability
- Tutti i pod dovrebbero essere ridistribuiti
Confronto con altre soluzioni di osservabilità
Suite Aria
OpenShift è in grado di riprodurre le funzionalità della suite Aria di VMware tramite l'installazione di base e alcuni operatori aggiuntivi. Per Aria Log Insight sarà necessaria la registrazione dei log di " OpenShift ", mentre gran parte delle funzionalità di Aria Operations sarà disponibile fin dall'inizio. RHACM Observability introduce ulteriori funzionalità per renderlo più in linea con i componenti più ampi di Aria Operations.
| Funzione | VMware | OpenShift |
|---|---|---|
| Registrazione | Aria Log Insight | OpenShift Logging/LokiStack |
| Ricerche/Analisi | Filtraggio personalizzato | PrompQL |
| Avvisi operativi | Aria/ Operazioni “ VCF ” | Alertmanager |
| Avvisi di log | Aria Log Insight | LokiStack ruler/LogQL |
| Metriche | Aria/ Operazioni “ VCF ” | Base (metriche aggiuntive del cluster fornite dopo l'installazione di RHACM) |
| Dashboard | Aria/ Operazioni “ VCF ” | Base ( Grafana dopo l'installazione di RHACM Observability) |
IBM Cloud Monitoraggio/Sysdig
Riepilogo
IBM Cloud Monitor utilizza Sysdig per la raccolta delle metriche. Sysdig, a sua volta, utilizza Prometheus per raccogliere dati, quindi funge da estensione di ciò che è già fornito dall'installazione di base di OpenShift. Affinché IBM Cloud Monitor possa ricevere le metriche, è necessario che Sysdig sia installato e configurato nell'ambiente. L'installazione avviene tramite un daemonset che aggiunge una serie di pod in uno spazio dei nomi specificato. A questo punto è possibile configurare il sistema in modo che si colleghi a un'istanza di IBM Cloud Monitor.
L'istanza di Monitor dell' IBM Cloud offre una serie di funzionalità, tra cui:
- Dashboard con metriche personalizzabili
- Avvisi provenienti dal cluster “ OpenShift ” e avvisi personalizzabili
- PrompQL richieste
- Avvisi basati sui problemi attualmente riscontrati nel cluster
- Acquisizione dei dati relativi alle metriche nel tempo
Molte di queste funzionalità sono già disponibili con l’osservabilità di base di OpenShift e con l’osservabilità RHACM. Il vantaggio principale di IBM Cloud Monitoring è il supporto aggiuntivo per altre infrastrutture di IBM Cloud, come le istanze di server virtuali VPC, che lo rendono un'unica fonte di osservabilità per tutte le risorse IBM Cloud presenti in un account. Anche il dashboard delle metriche fornito è un'interfaccia utente creata con IBM anziché Grafana.
Istruzioni di installazione
Per ulteriori informazioni, consultare la procedura di installazione manuale di Sysdig all'indirizzo OpenShift e l'articolo " Aggiunta di un cluster OpenShift al monitoraggio di IBM Cloud ".
Istruzioni per l'installazione del server virtuale basato su agenti
Per installare l'agente di monitoraggio su istanze di server virtuali d Linux, accedere alla sezione " Monitoring Sources " (Fonti di monitoraggio) nei dettagli dell'istanza di monitoraggio di IBM Cloud nella console IBM Cloud, quindi fare clic sulla Linux scheda. Per ulteriori informazioni, consultare il sito Monitoraggio di un'istanza di server VPC su Ubuntu Linux.
Per installare l'agente di monitoraggio sulle istanze di server virtuali Windows, installare l'esportatore che invia le metriche a IBM Cloud Monitoring. Per ulteriori informazioni, consulta le sezioni " Integrazione di Sysdig con Windows " e " Monitoraggio di un'istanza VPC su Windows ".
Durante l'installazione dell'agente di Windows:
Scarica da qui gli endpoint di acquisizione Remote Write di Prometheus: https://cloud.ibm.com/docs/monitoring?topic=monitoring-endpoints#prometheus_remote_write_endpoints
Per ottenere il token API di Sysdig Monitor:
- Accedi alla tua istanza di monitoraggio di IBM Cloud.
- Accedi alla dashboard
- In basso a sinistra, clicca sull'icona dell'utente con le iniziali dell'utente
- Nella finestra a comparsa, seleziona “ SysDig ” API Tokens nella sezione “Gestione dei segreti”
-
Impostazione del token API di Sysdig
-
- Scorri verso il basso nella nuova pagina per trovare il token e seleziona "Copia"
OpenShift Raccomandazioni sull'osservabilità nella virtualizzazione
Scegliete gli strumenti di osservabilità più adatti alla vostra implementazione di virtualizzazione OpenShift in base all'architettura del cluster, all'ambito inter-cluster e alle considerazioni relative ai costi.
IBM Cloud Il monitoraggio è la soluzione consigliata per garantire l'osservabilità complessiva nell'ambito della virtualizzazion Red Hat OpenShift, poiché è scalabile su più cluster e risorse IBM Cloud. Se gestite un singolo cluster OpenShift o lavorate principalmente all’interno dell’ecosistema Red Hat, gli strumenti di osservabilità OpenShift e Red Hat Advanced Cluster Management soddisfano la maggior parte delle esigenze di monitoraggio.
Sia il prezzo che i costi di archiviazione richiedono un'ulteriore valutazione, poiché RHACM richiede una licenza e spazio di archiviazione locale oppure spazio di archiviazione a oggetti. Il monitoraggio di IBM Cloud viene addebitato in base all'utilizzo, quindi è possibile generare preventivi dei costi in anticipo.
Poiché entrambe le soluzioni si avvalgono di una raccolta dati basata sull' Prometheus, la scelta dipende da altri casi d'uso e dai costi. Le funzionalità relative alla virtualizzazione " OpenShift " sono equivalenti nelle due offerte.
IBM Cloud VPC
IBM Cloud VPC supporta l'integrazione con i servizi di osservabilità di IBM Cloud per garantire la visibilità sull'ambiente VPC.
IBM Cloud Monitoraggio
IBM Cloud VPC offre funzionalità di monitoraggio di base per le istanze di server virtuali nella console IBM Cloud, tra cui i dati storici relativi all'utilizzo di risorse di calcolo, rete, archiviazione e memoria. Grazie all’integrazione con IBM Cloud Monitoring sono disponibili ulteriori funzionalità di monitoraggio, come la definizione di avvisi e la creazione di dashboard personalizzate. Questa integrazione richiede l'installazione di un agente di monitoraggio su ciascuna istanza del server virtuale. Per un esempio di installazione su un'istanza di server virtuale Ubuntu, consultare la guida " Monitoraggio di un'istanza di server VPC Ubuntu Linux ". Per ulteriori indicazioni, consultare le istruzioni di installazione del server virtuale basato su agente.
Oltre ai VSI, il monitoraggio " IBM Cloud " consente di monitorare il consumo complessivo delle risorse VPC e di altri servizi VPC. Per le istruzioni su come integrare una VPC di IBM Cloud con il monitoraggio di IBM Cloud, consultare Introduzione al monitoraggio di " IBM Cloud ". Visita la pagina IBM Cloud Dashboard di monitoraggio VPC per consultare l'elenco dei dashboard disponibili e ulteriori dettagli su ciascuno di essi.
IBM Cloud Registri
IBM Cloud VPC supporta l'integrazione con i log di " IBM Cloud ". Gli eventi della piattaforma generati da un VPC di IBM Cloud possono essere instradati verso un'istanza di Logs di IBM Cloud utilizzando il routing di Logs di IBM Cloud. Per ulteriori informazioni, ad esempio sul tipo di log della piattaforma generati, consultare la sezione " Registrazione dei log per VPC ". Gli eventi di monitoraggio delle attività possono essere instradati verso un'istanza di Logs di IBM Cloud utilizzando IBM Cloud Activity Tracker Events Routing. Per ulteriori informazioni, ad esempio sul tipo di eventi generati dal sistema di monitoraggio delle attività, consultare la sezione " Eventi di monitoraggio delle attività per una VPC di IBM Cloud ".
Per configurare l'inoltro dei log ai log di IBM Cloud, vengono fornite le istruzioni per Linux e Windows. Dopo l'installazione iniziale, è possibile effettuare ulteriori impostazioni sull'agente per supportare le seguenti funzionalità:
- Raccogliere e inoltrare i messaggi Rsyslog da un server Syslog
- Raccogliere e inoltrare i log dal Registro eventi di Windows
- Analizzare e raggruppare i log su più righe in un unico record di log
- Inoltrare ulteriori metadati dei log nell'ambito dell'inoltro dei log
- Includere/escludere file specifici dai dati che vengono inoltrati