Verwaltung des „ Workload Protection “-Agenten in einem „ Kubernetes “-Cluster mithilfe eines „ Helm “-Charts
Sie können ein Helm Diagramm verwenden, um einen Workload Protection Agent auf einem Kubernetes Cluster zu installieren, zu aktualisieren und zu löschen.
Sie können die Konsole auch verwenden, um einen bestehenden Cluster unter Red Hat OpenShift oder Kubernetes mit Ihrer Instanz unter Workload Protection zu verbinden. Wechseln Sie in der „ IBM Cloud “-Konsole zu „Containers > Clusters“, um auf den vorhandenen Cluster zuzugreifen. Klicken Sie anschließend im Widget „ Workload Protection “ auf „Verbinden“, um Ihren Cluster mit Workload Protection zu verbinden.
Vorbereitende Schritte
-
Installieren Sie die CLI „ IBM Cloud “, das Plug-in „ Kubernetes Service “ und das Plug-in „ IBM Cloud Container Registry “. Weitere Informationen finden Sie unter „ Installation der CLI “.
-
Installieren Sie die neueste Version der „ Helm “-CLI auf Ihrem lokalen Rechner. Helm Es ist Version 3.6 oder höher erforderlich.
Helm ist ein Paketmanager für „ Kubernetes “, der „ Helm “-Charts nutzt, um komplexe „ Kubernetes “-Anwendungen in Ihrem Cluster zu definieren, zu installieren und zu aktualisieren. Helm-Charts verpacken die Spezifikationen zum Generieren von YAML-Dateien für Kubernetes-Ressourcen, die Ihre App erstellen. Diese Ressourcen unter Kubernetes werden automatisch in Ihrem Cluster bereitgestellt und von Helm einer Version zugewiesen. Sie können Helm auch verwenden, um Ihre eigene App zu spezifizieren und zu packen und von Helm die YAML-Dateien für Ihre Kubernetes-Ressourcen generieren zu lassen.
-
Stellen Sie sicher, dass Sie über die erforderlichen Zugriffsrechte und Berechtigungen verfügen, um den „ Workload Protection “-Agenten auf dem Cluster bereitzustellen.
-
Stellen Sie sicher, dass der Namespace „
ibm-observe“ in Ihrem Cluster verfügbar ist. Der Agent wird in diesem Namespace bereitgestellt.Um den Namespace zu erstellen, führen Sie den Befehl „
kubectl create namespace ibm-observe“ aus. -
Stellen Sie sicher, dass ausgehender Datenverkehr von Ihrem Cluster zu den Endpunkten von „ Workload Protection “ auf den Ports
443und6443zugelassen ist. Wenn Sie die Agenten über einen Virtual Private Endpoint (VPE) verbinden, müssen beide Ports für den ausgehenden Datenverkehr aus dem Cluster freigegeben sein.
Einen Agenten bereitstellen
Führen Sie die folgenden Schritte aus, um einen Agenten mithilfe von „ Helm “ bereitzustellen.
Sysdig- Helm-Repository einrichten
Fügen Sie das Workload Protection-Helm-Repository zu Ihrer Helm-Instanz hinzu.
-
Legen Sie den Clusterkontext fest.
ibmcloud ks cluster config --cluster <CLUSTER_NAME> -
Fügen Sie das Repository „ Helm “ hinzu.
helm repo add sysdig https://charts.sysdig.com -
Aktualisieren Sie das Repository, um die neuesten Versionen aller „ Helm “-Diagramme abzurufen.
helm repo update -
Listen Sie die „ Helm “-Diagramme auf, die derzeit für das Sysdig-Repository verfügbar sind.
helm search repo sysdig -
Vergewissern Sie sich, dass die Tabelle „
sysdig/sysdig-deploy“ ( Helm ) aufgeführt ist.
Erstellen Sie die Datei „ YAML “ mit den Werten
Definieren Sie eine „ YAML “-Datei und fügen Sie die Werte ein, um den „ Workload Protection “-Agenten und die Secure-Komponenten bereitzustellen, die Sie einsetzen möchten. Benennen Sie die Datei beispielsweise „ agent-values-monitor-secure.yaml “.
Die folgende Datei „ YAML “ ist eine Vorlage, die Sie zur Konfiguration des „ Workload Protection “-Agenten und der Secure-Komponenten verwenden können. Sie können die Datei anpassen, indem Sie die Abschnitte, die für Ihren Agenten
nicht erforderlich sind, entfernen oder mit „ # “ auskommentieren.
agent:
ebpf:
enabled: true
kind: universal_ebpf
collectorSettings:
collectorHost: INGESTION_ENDPOINT
sysdig:
settings:
host_scanner:
enabled: true
kspm_analyzer:
enabled: true
sysdig_api_endpoint: API_ENDPOINT
extraVolumes:
volumes:
- name: root-vol
hostPath:
path: /
- name: tmp-vol
hostPath:
path: /tmp
mounts:
- mountPath: /host
name: root-vol
readOnly: true
- mountPath: /host/tmp
name: tmp-vol
global:
imageRegistry: icr.io/ext
clusterConfig:
name: CLUSTER_NAME
sysdig:
accessKey: SERVICE_ACCESS_KEY
apiHost: API_ENDPOINT
nodeAnalyzer:
enabled: false
clusterShield:
enabled: true
cluster_shield:
sysdig_endpoint:
region: custom
collector: ingest.private.us-east.security-compliance-secure.cloud.ibm.com:6443
log_level: info
features:
admission_control:
enabled: true
container_vulnerability_management:
enabled: true
dry_run: false
container_vulnerability_management:
enabled: true
audit:
enabled: true
posture:
enabled: true
Dabei gilt:
CLUSTER_NAME- Der Name des Clusters, in dem Sie den Agenten bereitstellen.
SERVICE_ACCESS_KEY- Der Zugriffsschlüssel für die „ Workload Protection “-Instanz.
INGESTION_ENDPOINT- Der Erfassungs-Endpunkt der Instanz. Beispiel:
ingest.us-east.security-compliance-secure.cloud.ibm.com. API_ENDPOINT- Der API-Endpunkt der Instanz. Beispiel:
us-east.security-compliance-secure.cloud.ibm.com.
Installieren Sie die „ Helm “-Tabelle
Um den Agenten, die Secure-Komponenten oder beides bereitzustellen, installieren Sie das „ sysdig/sysdig-deploy “-Chart. Sie können das Diagramm mithilfe einer Variablen YAML sdatei installieren, wie Sie sie im vorherigen
Schritt konfiguriert haben, oder Sie können die Variablen direkt konfigurieren.
Führen Sie den folgenden Befehl aus, um den Agenten mithilfe des Charts „ Helm “ und der Variablendatei „ YAML “ zu installieren:
helm install -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
Das folgende Beispiel zeigt eine Musterdatei mit Werten für „ Helm “ für die Region „ us-east “:
agent:
ebpf:
enabled: true
kind: universal_ebpf
collectorSettings:
collectorHost: ingest.private.us-east.security-compliance-secure.cloud.ibm.com
sysdig:
settings:
host_scanner:
enabled: true
kspm_analyzer:
enabled: true
sysdig_api_endpoint: private.us-east.security-compliance-secure.cloud.ibm.com
extraVolumes:
volumes:
- name: root-vol
hostPath:
path: /
- name: tmp-vol
hostPath:
path: /tmp
mounts:
- mountPath: /host
name: root-vol
readOnly: true
- mountPath: /host/tmp
name: tmp-vol
global:
imageRegistry: icr.io/ext
clusterConfig:
name: my-cluster
sysdig:
accessKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
apiHost: private.us-east.security-compliance-secure.cloud.ibm.com
nodeAnalyzer:
enabled: false
clusterShield:
enabled: true
cluster_shield:
sysdig_endpoint:
region: custom
api_url: https://private.us-east.security-compliance-secure.cloud.ibm.com
log_level: info
features:
admission_control:
enabled: true
container_vulnerability_management:
enabled: true
dry_run: false
container_vulnerability_management:
enabled: true
audit:
enabled: true
posture:
enabled: true
Einen Agenten aktualisieren
Führen Sie die folgenden Schritte aus, wenn Sie die Agentenversion mithilfe von Helmaktualisieren wollen:
-
Aktualisieren Sie das Repository „ Helm “.
helm repo update -
Führen Sie ein Upgrade des Agenten durch.
helm upgrade -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
Mit diesen Schritten aktualisieren Sie Ihre Agenten auf die neueste verfügbare Version.
Agenten entfernen
Sie können den Agenten auch über die Konsole aus Ihrem Cluster entfernen. Wechseln Sie in der „ IBM Cloud “-Konsole zu „Containers > Clusters“, um auf den vorhandenen Cluster zuzugreifen. Öffnen Sie anschließend das Menü „Optionen“ im Widget „ Workload Protection “ und wählen Sie „Trennen“ aus.
Um den Agenten über „ Helm “ zu löschen, deinstallieren Sie das Diagramm.
-
Liste der installierten Diagramme anzeigen.
helm list -n ibm-observeDie Ausgabe listet die installierten Diagramme auf:
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 -
Deinstallieren Sie das Diagramm.
helm delete sysdig-agent -n ibm-observeIn „ Helm “ lautet der Name der Veröffentlichung „
sysdig-agent“.