Excluir cargas de trabalho com estado

Neste documento, explicamos como excluir cargas de trabalho com estado em execução em um cluster do Kubernetes do Google Distributed Cloud (GDC) com isolamento físico. É importante remover cargas de trabalho que não estão mais em uso para manter a integridade e o desempenho do cluster do Kubernetes.

Este documento é destinado a desenvolvedores do grupo de operadores de aplicativos responsáveis por gerenciar cargas de trabalho de aplicativos na organização. Para mais informações, consulte Públicos-alvo da documentação do GDC com isolamento físico.

Antes de começar

Para concluir as tarefas neste documento, você precisa dos seguintes recursos e papéis:

  • Para executar comandos em um cluster do Kubernetes, verifique se você tem os seguintes recursos:

    • Localize o nome do cluster do Kubernetes ou pergunte a um membro do grupo de administradores da plataforma.

    • Faça login e gere o arquivo kubeconfig para o cluster do Kubernetes se você não tiver um.

    • Use o caminho kubeconfig do cluster do Kubernetes para substituir KUBERNETES_CLUSTER_KUBECONFIG nestas instruções.

  • Para receber as permissões necessárias para excluir cargas de trabalho com estado em um cluster compartilhado, peça ao administrador do IAM da organização para conceder a você o papel de administrador do namespace (namespace-admin) no namespace do projeto.

  • Para receber as permissões necessárias para excluir cargas de trabalho com estado em um cluster padrão, peça ao administrador do IAM da organização para conceder a você a função de desenvolvedor de cluster (cluster-developer) em um cluster padrão.

Excluir um recurso StatefulSet

Exclua um recurso StatefulSet se você não precisar mais das cargas de trabalho de contêiner com estado associadas a ele.

  1. Para excluir um recurso StatefulSet, execute:

    kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \
        -n NAMESPACE \
        delete statefulset STATEFULSET_NAME
    

    Substitua:

    • KUBERNETES_CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster.

    • NAMESPACE: o namespace da carga de trabalho do contêiner. Para clusters compartilhados, esse precisa ser um namespace do projeto. Para clusters padrão, pode ser qualquer namespace.

    • STATEFULSET_NAME: o nome do objeto StatefulSet a ser excluído.

    Ao excluir um recurso StatefulSet, todos os pods dele também são excluídos. Se você preferir excluir apenas o recurso StatefulSet e não os pods dele, inclua o parâmetro --cascade=orphan.

  2. Exclua o serviço associado:

    kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \
        delete service SERVICE_NAME
    

    Substitua as seguintes variáveis:

    • KUBERNETES_CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster.

    • SERVICE_NAME: o nome do objeto Service a ser excluído.

A seguir