Gestión del agente « Workload Protection » en un clúster « Kubernetes » mediante un gráfico « Helm »
Puede utilizar un gráfico Helm para instalar, actualizar y eliminar un agente Workload Protection en un clúster Kubernetes.
También puedes utilizar la consola para conectar un clúster existente de Red Hat OpenShift o Kubernetes a tu instancia de Workload Protection. En la consola de IBM Cloud, ve a «Containers» > «Clusters» para acceder al clúster existente. A continuación, haz clic en «Conectar» en el widget « Workload Protection » para conectar tu clúster a Workload Protection.
Antes de empezar
-
Instala la CLI de IBM Cloud, el complemento Kubernetes Service y el complemento IBM Cloud Container Registry. Para obtener más información, consulta la sección « Instalación de la CLI ».
-
Instala la última versión de la CLI de Helm en tu ordenador. 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.
-
Comprueba que el espacio de nombres
ibm-observeesté 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
443y6443. Si conectas los agentes a través de un punto de conexión privado virtual (VPE), ambos puertos deben estar permitidos para el tráfico saliente del clúster.
Implementación de un agente
Sigue los siguientes pasos para implementar un agente mediante Helm.
Configure el repositorio Helm de Sysdig
Añada el repositorio de Helm de Workload Protection a la instancia de Helm.
-
Establezca el contexto del clúster.
ibmcloud ks cluster config --cluster <CLUSTER_NAME> -
Añade el repositorio Helm.
helm repo add sysdig https://charts.sysdig.com -
Actualiza el repositorio para obtener las últimas versiones de todos los gráficos de Helm.
helm repo update -
Enumera los gráficos de « Helm » que están disponibles actualmente en el repositorio de Sysdig.
helm search repo sysdig -
Comprueba que aparezca la tabla «
sysdig/sysdig-deploy» ( Helm ).
Crea los valores en el archivo « YAML »
Define un archivo « YAML » e incluye los valores necesarios para implementar el agente « Workload Protection » y los componentes de Secure que tengas previsto implementar. Por ejemplo, guarda el 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 » y los componentes de Secure. 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:
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
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.
Instala el gráfico « Helm »
Para implementar el agente, los componentes de Secure o ambos, instala el gráfico « sysdig/sysdig-deploy ». Puedes instalar el gráfico utilizando un archivo de variables YAML como el que has configurado en el paso
anterior, o bien puedes configurar las variables directamente.
Ejecuta el siguiente comando para instalar el agente utilizando el gráfico « Helm » y el archivo de variables « YAML »:
helm install -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
El siguiente ejemplo muestra un archivo de valores de muestra de « Helm » para la región de 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
Actualización de un agente
Para actualizar la versión del agente utilizando Helm, realice los pasos siguientes:
-
Actualiza el repositorio « Helm ».
helm repo update -
Actualice el agente.
helm upgrade -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor-secure.yaml
Estos pasos permiten actualizar tus agentes a la última versión disponible.
eliminar un agente
También puedes utilizar la consola para eliminar el agente de tu clúster. En la consola de IBM Cloud, ve a «Containers» > «Clusters» para acceder al clúster existente. A continuación, abre el menú « Opciones » del widget « Workload Protection » y selecciona « Desconectar ».
Para eliminar el agente mediante Helm, desinstala el gráfico.
-
Muestra la lista de las cartas náuticas que están instaladas.
helm list -n ibm-observeEl 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 -
Desinstale el gráfico.
helm delete sysdig-agent -n ibm-observeEn Helm, «
sysdig-agent» es el nombre de la versión.