Fazer upgrade do Kf fora do Google Cloud

Neste documento, explicamos como fazer o upgrade de uma instalação do Kf e das dependências associadas.

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

  • Confirme que a versão atual do Kf pode fazer o upgrade para o Kf v2.9.0.
  • Faça o upgrade para o Kf v2.9.0.
  • Faça o 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 hub memberships 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 do Kf aparece em kf["app.kubernetes.io/version"].
$ kf debug
...
Version:
  Kf Client:                        v2.7.3
  Server version:                   v1.21.6-gke.1500
  kf["app.kubernetes.io/version"]:  v2.7.3
...

Se os valores do cliente e do servidor do Kf não forem correspondentes, mas a versão do servidor for v2.7.x, instale a CLI do Kf v2.9.0 antes de continuar.

Se o valor do servidor do Kf for mais antigo do que v2.7.x, faça um upgrade incremental até o Kf v2.7.x antes de continuar.

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

Execute kf doctor para verificar o estado do cluster. Todos os testes devem ser aprovados antes de 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.9.0/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.32.1/release.yaml"

  2. Faça upgrade para o Cloud Service Mesh v1.12:

    1. Siga as etapas no guia de upgrade do Cloud Service Mesh.

Fazer upgrade para a CLI do Kf v2.9.0

  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.9.0/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.9.0/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 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.9.0/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.9.0/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 do Kf aparece em kf["app.kubernetes.io/version"].
    $ kf debug
    ...
    Version:
      Kf Client:                        v2.9.0
      Server version:                   v1.21.6-gke.1500
      kf["app.kubernetes.io/version"]:  v2.9.0
    ...
    

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.