Gestione dell'agent Monitoring in Red Hat OpenShift utilizzando un grafico HELM
È possibile utilizzare un grafico Helm per installare, aggiornare ed eliminare un agente Monitoring su un cluster Kubernetes.
Prima di iniziare
-
Installa l'ultima versione della CLI di Helm (versione 3) sul tuo computer locale.
Helm è un gestore di pacchetti di tipo " Kubernetes " che utilizza i chart di Helm per definire, installare e aggiornare applicazioni complesse di tipo " Kubernetes " nel proprio cluster. I grafici Helm comprimono le specifiche per generare file YAML per le risorse Kubernetes che creano la tua applicazione. Queste risorse Kubernetes vengono applicate automaticamente nel tuo cluster e viene assegnata loro una versione da Helm. Puoi anche utilizzare Helm per specificare e comprimere la tua applicazione e permettere a Helm di generare i file YAML per le tue risorse Kubernetes.
-
Verifica di disporre dell'accesso e delle autorizzazioni per distribuire l'agent Monitoring nel cluster.
-
Verifica che lo spazio dei nomi
ibm-observesia disponibile nel tuo cluster. L'agente è distribuito in questo spazio dei nomi.
Distribuisci un agente
Completa la seguente procedura per distribuire un agent utilizzando Helm:
Passo 1. Configurare il repository Sysdig Helm
Aggiungi il repository Helm Monitoring alla tua istanza Helm.
Completa i seguenti passi:
-
Imposta il contesto del cluster.
obmcloud ks cluster config --cluster <CLUSTER_NAME> -
Aggiungi il repository Helm.
helm repo add sysdig https://charts.sysdig.com -
Aggiorna i repository per richiamare le versioni più recenti di tutti i grafici Helm.
helm repo update -
Elenca i grafici " Helm " attualmente disponibili nel repository Sysdig.
helm search repo sysdig -
Verifica che il Helm Helm
sysdig/sysdig-deploysia elencato.
Se viene visualizzato il seguente errore:
helm repo add sysdig https://charts.sysdig.com --debug
Error: context deadline exceeded
helm.go:84: [debug] context deadline exceeded
Eseguire il seguente comando e riprovare.
rm $HOME/Library/Preferences/helm/repositories.lock
Passo 2. Crea il file YAML dei valori
Definisci un file yaml e includi i valori per distribuire i componenti Monitoring e Workload Protection che intendi distribuire. Ad esempio, denominare il file agent-values-monitor-secure.yaml.
Il seguente yaml è un template che puoi utilizzare per configurare i componenti Monitoring e i componenti Workload Protection. È possibile personalizzare il file rimuovendo o commentando con # le sezioni che non sono richieste
per la propria distribuzione dell'agent.
global:
clusterConfig:
name: CLUSTER_NAME
sysdig:
accessKey: MONITORING_INSTANCE_ACCESS_KEY
secureAPIToken: SECURE_TOKEN
kspm:
deploy: true
agent:
image:
tag: AGENT_TAG
registry: icr.io
slim:
enabled: true
image:
repository: ext/sysdig/agent-slim
kmoduleImage:
repository: ext/sysdig/agent-kmodule
collectorSettings:
collectorHost: INGESTION_ENDPOINT # for example, ingest.eu-gb.monitoring.cloud.ibm.com
nodeAnalyzer:
nodeAnalyzer:
deploy: true
apiEndpoint: API_ENDPOINT # for example, eu-gb.monitoring.cloud.ibm.com
benchmarkRunner:
deploy: false
kspmCollector:
apiEndpoint: API_ENDPOINT # for example, eu-gb.monitoring.cloud.ibm.com
admissionController:
enabled: true
sysdig:
url: WEB_UI_ENDPOINT # for example, https://ingest.eu-gb.monitoring.cloud.ibm.com
clusterName: CLUSTER_NAME
Dove
CLUSTER_NAMEè il nome del cluster in cui si sta distribuendo l'agent.MONITORING_INSTANCE_ACCESS_KEYè la chiave di accesso dell'istanza di Monitoring.SECURE_TOKENè il token API sicuro.AGENT_TAGè la versione dell'agent che si prevede di distribuire.INGESTION_ENDPOINTè l'endpoint di inserimento dell'istanza.API_ENDPOINTè l'endpoint API dell'intance.WEB_UI_ENDPOINTè l'endpoint dell'IU web.
Esempio di file yaml di valori per distribuire l'agente
Ad esempio, consulta il seguente esempio di un file di valori che distribuisce solo l'agent Monitoring:
global:
clusterConfig:
name: mycluster-au-syd
sysdig:
accessKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
secureAPIToken: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
kspm:
deploy: true
agent:
image:
registry: icr.io
slim:
enabled: true
image:
repository: ext/sysdig/agent-slim
kmoduleImage:
repository: ext/sysdig/agent-kmodule
collectorSettings:
collectorHost: ingest.au-syd.monitoring.cloud.ibm.com
Esempio di file yaml dei valori per distribuire agent e Node Analyzer
Ad esempio, vedi il seguente esempio di un file di valori che distribuisce l'agent Monitoring e il componente Node Analyzer:
global:
clusterConfig:
name: mycluster-au-syd
sysdig:
accessKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
secureAPIToken: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
kspm:
deploy: true
agent:
image:
registry: icr.io
slim:
enabled: true
image:
repository: ext/sysdig/agent-slim
kmoduleImage:
repository: ext/sysdig/agent-kmodule
collectorSettings:
collectorHost: ingest.au-syd.monitoring.cloud.ibm.com
nodeAnalyzer:
nodeAnalyzer:
deploy: true
apiEndpoint: API_ENDPOINT # for example, eu-gb.monitoring.cloud.ibm.com
benchmarkRunner:
deploy: false
Passo 3. Installa il grafico Helm
Per distribuire l'agent, i componenti Workload Protection o entrambi, devi installare il grafico sysdig/sysdig-deploy e utilizzare il file yaml delle variabili che hai configurato nel passo precedente.
Eseguire il seguente comando per installare l'agent utilizzando il diagramma Helm:
helm install -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
Se si verifica il seguente errore: Error: INSTALLATION FAILED: Kubernetes cluster unreachable: xxxxxx failed to refresh token: oauth2: cannot fetch token: 400 Bad Request, impostare il contesto del cluster e riprovare.
Aggiorna un agente
Per aggiornare la versione dell'agent utilizzando Helm, completa la seguente procedura:
-
Aggiornare il grafico.
helm repo update -
Trova i valori del file yaml che hai utilizzato per distribuire l'agent e modificare il file
agent.image.tagcon la versione dell'agent che vuoi distribuire. -
Aggiornare l'agent.
helm upgrade -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
Rimuovi un agente
Per eliminare l'agent utilizzando Helm, è necessario disinstallare il grafico.
Completa i seguenti passi:
-
Elencare i grafici installati.
helm list -n ibm-observeL'output del comando elenca i seguenti grafici:
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION sysdig-agent ibm-observe 1 2023-03-24 15:02:58.408108 +0100 CET deployed sysdig-deploy-1.6.3 -
Disinstallare il grafico.
helm delete sysdig-agent -n ibm-observeIn termini di Helm,
sysdig-agentè il nome della release.Se si dimentica di includere lo spazio dei nomi nel comando, si ottiene il seguente errore:
Error: uninstall: Release not loaded: sysdig-agent: release: not found.