Implantação do agente em um cluster externo Kubernetes ou Red Hat OpenShift

Além de poder ser executada no IBM Cloud, a estrutura centralizada de segurança e conformidade oferecida pelo IBM Cloud® Security and Compliance Center Workload Protection também pode ser executada em outras nuvens e no ambiente local, utilizando os gráficos do Helm para instalar o agente Workload Protection em clusters do Kubernetes ou do Red Hat OpenShift.

Antes de Iniciar

  • Instale a versão mais recente da CLI do Helm em seu computador. Helm É necessária a versão 3.6 ou posterior.

    Helm é um gerenciador de pacote do Kubernetes que usa gráficos do Helm para definir, instalar e fazer upgrade de apps do Kubernetes complexos em seu cluster. Os gráficos do Helm empacotam as especificações para gerar arquivos YAML para recursos do Kubernetes que constroem seu aplicativo. Esses recursos do Kubernetes são aplicados automaticamente no seu cluster e atribuídos a uma versão pelo Helm. Também é possível usar o Helm para especificar e empacotar seu próprio app e permitir que o Helm gere os arquivos YAML para seus recursos do Kubernetes.

  • Verifique se você possui o acesso e as permissões necessárias para implantar o agente do Workload Protection no cluster. Em um cluster do Kubernetes, é necessário ter permissão para executar comandos do kubectl no cluster. Em um cluster do Red Hat OpenShift, é necessário ter permissão para executar comandos do oc. Consulte a documentação do seu cluster para saber mais sobre como obter o nível adequado de permissões e configurar sua máquina local para enviar comandos ao cluster.

  • Verifique se o namespace ibm-observe está disponível no seu cluster. O agente está implantado neste namespace.

    Para criar o namespace, execute kubectl create namespace ibm-observe``.

  • Verifique se o tráfego de saída do seu cluster para os endpoints d Workload Protection está permitido nas portas 443 e 6443.

Implantação de um agente

Depois de ter uma versão adequada do Helm e permissão para executar comandos no cluster, você pode usar o Helm para instalar, atualizar e excluir o agente do Workload Protection em Kubernetes ou Red Hat OpenShift.

  1. Adicione o Sysdig como repositório para os gráficos do Helm em seu computador local.

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

    Se você receber o seguinte erro:

  2. Atualize as referências do repositório.

    helm repo update
    
  3. Liste os gráficos do Helm que estão disponíveis atualmente no repositório do Sysdig.

    helm search repo sysdig
    
  4. Verifique se o gráfico “ sysdig/sysdig-deploy ” ( Helm ) está listado.

  5. Instale o agente do Workload Protection. Você pode fazer a instalação criando um arquivo de valores YAML Helm, no qual os valores estejam listados, e, em seguida, executando um comando que faça referência a esse arquivo.

    Para realizar a instalação usando um arquivo de valores do tipo “ Helm ”, crie primeiro um arquivo chamado “ agent-values-monitor-secure.yaml ”. O arquivo a seguir, YAML, é um modelo que você pode usar para configurar o agente Workload Protection. Você pode personalizar o arquivo removendo ou comentando com # as seções que não são necessárias para o seu 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
    

    Em que:

    CLUSTER_NAME
    O nome do cluster no qual você está implantando o agente.
    SERVICE_ACCESS_KEY
    A chave de acesso da instância do Workload Protection.
    INGESTION_ENDPOINT
    O endpoint de ingestão da instância. Por exemplo, ingest.us-east.security-compliance-secure.cloud.ibm.com.
    API_ENDPOINT
    O endpoint da API da instância. Por exemplo, us-east.security-compliance-secure.cloud.ibm.com.
  6. Em seguida, execute o comando de instalação que faz referência ao arquivo de valores Helm criado:

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

Atualização de um agente

Para atualizar o agente para a versão mais recente disponível, siga estas etapas:

  1. Atualize o repositório Helm.

    helm repo update
    
  2. Faça upgrade do agente.

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

removendo um agente

Para excluir o agente usando o Helm, desinstale o gráfico.

  1. Liste os gráficos que estão instalados.

    helm list -n ibm-observe
    

    A saída lista os 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 o gráfico

    helm delete sysdig-agent -n ibm-observe
    

    Em Helm, “ sysdig-agent ” é o nome da versão.