Atualize cargas de trabalho com estado

Esta página explica como atualizar cargas de trabalho com estado existentes executadas num cluster do Kubernetes de um dispositivo isolado do Google Distributed Cloud (GDC). À medida que a sua aplicação evolui com base na utilização de recursos e nas otimizações de configuração, tem de atualizar a especificação do pod subjacente no cluster do Kubernetes para refletir essas alterações de carga de trabalho. Para mais informações sobre o planeamento de atualizações para cargas de trabalho com estado, consulte a documentação do Kubernetes sobre as estratégias de atualização.

Esta página destina-se a programadores no grupo de operadores de aplicações, que são responsáveis por atualizar as cargas de trabalho das aplicações para a respetiva organização.

Antes de começar

Para executar comandos no cluster do Kubernetes bare metal pré-configurado, certifique-se de que tem os seguintes recursos:

  1. Localize o nome do cluster do Kubernetes ou pergunte ao administrador da plataforma qual é o nome do cluster.

  2. Inicie sessão e gere o ficheiro kubeconfig para o cluster do Kubernetes, se não tiver um.

  3. Use o caminho kubeconfig do cluster Kubernetes para substituir CLUSTER_KUBECONFIG nestas instruções.

Para receber as autorizações necessárias para atualizar cargas de trabalho com estado, peça ao administrador da IAM da organização para lhe conceder a função de administrador do espaço de nomes (namespace-admin) no espaço de nomes do projeto.

Atualize um recurso StatefulSet

Para atualizar o StatefulSet, aplique um ficheiro de manifesto novo ou atualizado. Isto é útil para fazer várias alterações ao seu StatefulSet quando dimensiona ou para especificar uma nova versão da sua aplicação.

Para atualizar um objeto StatefulSet, execute:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    apply -f STATEFULSET_FILE

Substitua o seguinte:

  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa as cargas de trabalho com estado.

  • NAMESPACE: o espaço de nomes do projeto.

  • STATEFULSET_FILE: o nome do ficheiro de manifesto StatefulSetatualizado.

O comando kubectl apply aplica um ficheiro de manifesto a um recurso. Se o recurso especificado não existir, é criado pelo comando.

Inspeção da implementação de uma atualização de recursos do StatefulSet

Pode ver informações detalhadas sobre o estado de implementação da atualização e o histórico de um objeto StatefulSet. Também pode anular a implementação de um objeto StatefulSet.

Inspeccione a implementação

Para inspecionar a implementação do recurso StatefulSet, execute o seguinte comando:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    rollout status statefulset STATEFULSET_NAME
  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa as cargas de trabalho com estado.

  • NAMESPACE: o espaço de nomes do projeto.

  • STATEFULSET_NAME: o nome do objeto StatefulSet atualizado.

Obtenha o histórico de implementações

Para ver o histórico de implementações do recurso StatefulSet, execute o seguinte comando:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    rollout history statefulset STATEFULSET_NAME
  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa as cargas de trabalho com estado.

  • NAMESPACE: o espaço de nomes do projeto.

  • STATEFULSET_NAME: o nome do objeto StatefulSet atualizado.

Anule uma implementação

Para anular uma implementação, execute o seguinte comando:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    rollout undo statefulset STATEFULSET_NAME

Substitua o seguinte:

  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa as cargas de trabalho com estado.

  • NAMESPACE: o espaço de nomes do projeto.

  • STATEFULSET_NAME: o nome do objeto StatefulSet