Fazer upgrade do Kf no Google Cloud

Neste documento, explicamos como atualizar uma instalação do Kf e as dependências dela.

Para o procedimento, sua instalação do Kf precisa usar a versão mais recente do operador Kf:

  • Confirme se sua versão atual do Kf pode fazer upgrade para o Kf v2.11.28.
  • Faça upgrade para o Kf v2.11.28.
  • Faça upgrade das dependências (se necessário).

Antes de começar

Você precisará dos seguintes itens:

  • Um cluster com o Kf instalado.
  • Acesso a uma máquina com gcloud, kf e kubectl instalados.

Preparação para o upgrade

Conectar-se ao cluster de destino

gcloud container clusters get-credentials CLUSTER_NAME \
 --zone CLUSTER_ZONE \
 --project CLUSTER_PROJECT_ID

Verificar se a CLI do Kf e o servidor têm a mesma versão

Execute o comando kf debug e verifique se a CLI do Kf e o servidor Kf têm a mesma versão.

  • A versão da CLI aparece em Kf Client.
  • A versão do servidor Kf aparece em kf["app.kubernetes.io/version"].
$ kf debug
...
Version:
  Kf Client:                        v2.11.27
  Server version:                   v1.31.1-gke.2105000
  kf["app.kubernetes.io/version"]:  v2.11.27
...

Se o cliente e o servidor Kf não tiverem a mesma versão, mas o servidor tiver a v2.10.x, instale a CLI do Kf v2.11.28 antes de continuar.

Se a versão do servidor Kf for anterior à v2.10.x, faça o upgrade incremental para v2.10.x antes de continuar.

Confirmar se o Kf está íntegro antes de fazer upgrade

Execute kf doctor para verificar o estado do cluster. O cluster precisa passar em todos os testes para você continuar.

$ kf doctor
...
=== RUN doctor/user
=== RUN doctor/user/ContainerRegistry
--- PASS: doctor/user
   --- PASS: doctor/user/ContainerRegistry
...

Se as mensagens de erro FAIL ou Error: environment failed checks aparecerem, siga as orientações do comando kf doctor ou confira o guia de solução de problemas para resolver. Depois execute o comando de novo até ter sucesso.

Fazer upgrade do operador

O operador Kf executa upgrades para você.

  1. Aplique o yaml do operador:

    kubectl apply -f "https://storage.googleapis.com/kf-releases/v2.11.28/operator.yaml"

Fazer upgrade das dependências do Kf

  1. Faça upgrade do Tekton:

    kubectl apply -f "https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.68.0/release.yaml"

  2. Faça upgrade para o Cloud Service Mesh v1.23.3-asm.1+config1:

    1. Siga as etapas no guia de upgrade do Cloud Service Mesh.
  1. Faça a instalação ou o upgrade do Config Connector:

    Para fazer upgrade do Kf v2.11: siga as instruções na etapa "Instalar o Config Connector" em Kf Install

    Para fazer upgrade do Kf v2.7:

    1. Baixe o arquivo .tar necessário do operador do Config Connector:

    2. Extraia o arquivo tar.

      tar zxvf release-bundle.tar.gz
    3. Instale o operador do Config Connector no cluster.

      kubectl apply -f operator-system/configconnector-operator.yaml

Fazer upgrade para a CLI do Kf v2.11.28

  1. Instale a CLI:

    Linux

    Este comando instala a CLI do Kf para todos os usuários no sistema. Siga as instruções na guia do Cloud Shell para instalá-lo só para você.

    gcloud storage cp gs://kf-releases/v2.11.28/kf-linux /tmp/kf
    chmod a+x /tmp/kf
    sudo mv /tmp/kf /usr/local/bin/kf

    Mac

    Este comando instala o kf para todos os usuários no sistema.

    gcloud storage cp gs://kf-releases/v2.11.28/kf-darwin /tmp/kf
    chmod a+x /tmp/kf
    sudo mv /tmp/kf /usr/local/bin/kf

    Cloud Shell

    O comando vai instalar o kf na sua instância do Cloud Shell se você usar bash. Talvez seja necessário mudar as instruções para outros shells.

    mkdir -p ~/bin
    gcloud storage cp gs://kf-releases/v2.11.28/kf-linux ~/bin/kf
    chmod a+x ~/bin/kf
    echo "export PATH=$HOME/bin:$PATH" >> ~/.bashrc
    source ~/.bashrc

    Windows

    Este comando faz o download de kf no diretório atual. Adicione o arquivo ao caminho se você quiser chamar de outro local que não seja o diretório atual.

    gcloud storage cp gs://kf-releases/v2.11.28/kf-windows.exe kf.exe
  2. Verifique se a CLI do Kf e o servidor Kf têm a mesma versão:

    • A versão da CLI aparece em Kf Client.
    • A versão do servidor Kf aparece em kf["app.kubernetes.io/version"].
    $ kf debug
    ...
    Version:
      Kf Client:                        v2.11.28
      Server version:                   v1.31.1-gke.2105000
      kf["app.kubernetes.io/version"]:  v2.11.28
    ...
    

Verificar se o Kf foi atualizado

  1. Execute doctor para verificar a integridade da versão recém-instalada:

    kf doctor --retries=20

    O comando executa verificações de cluster várias vezes. É normal haver algumas falhas enquanto os novos controladores são iniciados.

    Se o comando falhar com a mensagem Error: environment failed checks, siga as orientações na saída doctor para resolver o problema e repita o comando até que a operação seja bem-sucedida.

Se a verificação foi bem-sucedida, significa que o upgrade do cluster foi concluído. Se tiver algum problema, confira as orientações da página de suporte.