Implementación del agente en un clúster externo de Kubernetes o Red Hat OpenShift

Además de poder ejecutarse en IBM Cloud, el marco centralizado de seguridad y cumplimiento normativo que ofrece IBM Cloud® Security and Compliance Center Workload Protection también puede ejecutarse en otras nubes y en entornos locales utilizando los gráficos de Helm para instalar el agente de Workload Protection en clústeres de Kubernetes o Red Hat OpenShift.

Antes de empezar

  • Instala la última versión de la CLI de Helm en tu ordenador local. Helm Se requiere la versión 3.6 o posterior.

    Helm Es un gestor de paquetes de tipo « Kubernetes » que utiliza los catálogos de Helm para definir, instalar y actualizar aplicaciones complejas de Kubernetes en tu clúster. Los diagramas de Helm empaquetan las especificaciones para generar archivos YAML para los recursos de Kubernetes que crean la app. Estos recursos de Kubernetes se aplican automáticamente en tu clúster y se asignan a una versión mediante Helm. También puede utilizar Helm para especificar y empaquetar su propia app y dejar que Helm genere los archivos YAML para los recursos de Kubernetes.

  • Comprueba que dispones del acceso y los permisos necesarios para implementar el agente de Workload Protection en el clúster. En un clúster de « Kubernetes », debes tener permiso para ejecutar comandos de « kubectl » en el clúster. En un clúster de Red Hat OpenShift, debes tener permiso para ejecutar comandos de oc. Consulta la documentación de tu clúster para obtener más información sobre cómo obtener el nivel adecuado de permisos y configurar tu equipo local para enviar comandos al clúster.

  • Comprueba que el espacio de nombres ibm-observe esté disponible en tu clúster. El agente está implementado en este espacio de nombres.

    Para crear el espacio de nombres, ejecuta el comando « kubectl create namespace ibm-observe ».

  • Comprueba que el tráfico saliente desde tu clúster hacia los puntos fin Workload Protection esté permitido en los puertos 443 y 6443.

Implementación de un agente

Una vez que dispongas de una versión adecuada de Helm y de los permisos necesarios para ejecutar comandos en el clúster, puedes utilizar Helm para instalar, actualizar y eliminar el agente de Workload Protection en Kubernetes o Red Hat OpenShift.

  1. Añade Sysdig como repositorio para los gráficos de Helm en tu ordenador local.

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

    si obtiene el siguiente error:

  2. Actualiza las referencias del repositorio.

    helm repo update
    
  3. Enumera los gráficos de « Helm » que están disponibles actualmente en el repositorio de Sysdig.

    helm search repo sysdig
    
  4. Comprueba que aparezca la tabla « sysdig/sysdig-deploy » ( Helm ).

  5. Instala el agente de Workload Protection. Puedes realizar la instalación creando un archivo de valores YAML Helm en el que se enumeren los valores y, a continuación, ejecutando un comando que haga referencia a dicho archivo.

    Para realizar la instalación utilizando un archivo de valores de Helm, crea primero un archivo con el nombre agent-values-monitor-secure.yaml. El siguiente archivo « YAML » es una plantilla que puedes utilizar para configurar el agente « Workload Protection ». Puedes personalizar el archivo eliminando o comentando con « # » las secciones que no sean necesarias para tu 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
    

    Donde:

    CLUSTER_NAME
    El nombre del clúster en el que se está implementando el agente.
    SERVICE_ACCESS_KEY
    La clave de acceso de la instancia de « Workload Protection ».
    INGESTION_ENDPOINT
    El punto final de ingestión de la instancia. Por ejemplo, ingest.us-east.security-compliance-secure.cloud.ibm.com.
    API_ENDPOINT
    El punto final de la API de la instancia. Por ejemplo, us-east.security-compliance-secure.cloud.ibm.com.
  6. A continuación, ejecuta el comando de instalación que hace referencia al archivo de valores « Helm » creado:

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

Actualización de un agente

Para actualizar el agente a la última versión disponible, sigue estos pasos:

  1. Actualiza el repositorio « Helm ».

    helm repo update
    
  2. Actualice el agente.

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

eliminar un agente

Para eliminar el agente mediante Helm, desinstala el gráfico.

  1. Muestra la lista de gráficos que están instalados.

    helm list -n ibm-observe
    

    El resultado muestra la lista de gráficos instalados:

    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. Desinstale el gráfico.

    helm delete sysdig-agent -n ibm-observe
    

    En Helm, « sysdig-agent » es el nombre de la versión.