Distribuzione dell'agente in un cluster esterno Kubernetes o Red Hat OpenShift

Oltre alla possibilità di essere eseguito su IBM Cloud, il framework centralizzato per la sicurezza e la conformità fornito da IBM Cloud® Security and Compliance Center Workload Protection può essere utilizzato anche su altri cloud e in ambiente locale, utilizzando i chart disponibili su Helm per installare l'agente Workload Protection sui cluster Kubernetes o Red Hat OpenShift.

Prima di iniziare

  • Installa l'ultima versione della CLI di Helm sul tuo computer locale. Helm È richiesta la versione 3.6 o successiva.

    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 di Kubernetes vengono applicate automaticamente al tuo cluster e assegnate a una versione tramite 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 necessarie per distribuire l'agente Workload Protection sul cluster. Su un cluster Kubernetes, è necessario disporre dei permessi necessari per eseguire i comandi kubectl sul cluster. Su un cluster di Red Hat OpenShift, è necessario disporre dei permessi necessari per eseguire i comandi oc. Consulta la documentazione del tuo cluster per saperne di più su come ottenere il livello di autorizzazioni appropriato e configurare il tuo computer locale per inviare comandi al cluster.

  • Verificare che lo spazio dei nomi ibm-observe sia disponibile nel proprio cluster. L'agente è distribuito in questo spazio dei nomi.

    Per creare lo spazio dei nomi, eseguire il comando kubectl create namespace ibm-observe``.

  • Verifica che il traffico in uscita dal tuo cluster verso gli endpoint di Workload Protection sia consentito sulle porte 443 e 6443.

Installazione di un agente

Una volta che si dispone di una versione adeguata di Helm e dei permessi necessari per eseguire comandi sul cluster, è possibile utilizzare Helm per installare, aggiornare ed eliminare l'agente Workload Protection su Kubernetes o Red Hat OpenShift.

  1. Aggiungi Sysdig come repository per i grafici di Helm sul tuo computer locale.

    helm repo add sysdig https://charts.sysdig.com
    

    Se viene visualizzato il seguente errore:

  2. Aggiornare i riferimenti al repository.

    helm repo update
    
  3. Elenca i grafici " Helm " attualmente disponibili per il repository Sysdig.

    helm search repo sysdig
    
  4. Verificare che sia presente il grafico " sysdig/sysdig-deploy " ( Helm ).

  5. Installare l' Workload Protection. È possibile effettuare l'installazione creando un file di valori YAML Helm in cui sono elencati i valori, e quindi eseguendo un comando che fa riferimento a tale file.

    Per eseguire l'installazione utilizzando un file dei valori di Helm, creare innanzitutto un file denominato agent-values-monitor-secure.yaml. Il seguente file YAML è un modello che è possibile utilizzare per configurare l'agente Workload Protection. È possibile personalizzare il file rimuovendo o commentando con # le sezioni non necessarie per il proprio agente.

    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:
      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: INGESTION_ENDPOINT: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
    

    Dove:

    CLUSTER_NAME
    Il nome del cluster in cui si sta effettuando la distribuzione dell'agente.
    SERVICE_ACCESS_KEY
    La chiave di accesso all'istanza di Workload Protection.
    INGESTION_ENDPOINT
    L'endpoint di acquisizione dell'istanza. Ad esempio, ingest.us-east.security-compliance-secure.cloud.ibm.com.
    API_ENDPOINT
    L'endpoint API dell'istanza. Ad esempio, us-east.security-compliance-secure.cloud.ibm.com.
  6. A questo punto, eseguire il comando di installazione che fa riferimento al file dei valori Helm appena creato:

    helm install -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
    

Aggiornamento di un agente

Per aggiornare l'agente all'ultima versione disponibile, procedere come segue:

  1. Aggiorna il repository Helm.

    helm repo update
    
  2. Aggiornare l'agent.

    helm upgrade -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
    

Rimozione di un agente

Per eliminare l'agente utilizzando Helm, disinstallare il grafico.

  1. Elencare i grafici installati.

    helm list -n ibm-observe
    

    L'output elenca i grafici installati:

    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
    
  2. Disinstallare il grafico.

    helm delete sysdig-agent -n ibm-observe
    

    In Helm, " sysdig-agent " è il nome della versione.