Atualize o Kf em Google Cloud

Este documento descreve como atualizar uma instalação do Kf existente e as respetivas dependências.

Como parte do procedimento de atualização, certifique-se de que a sua instalação do Kf usa a versão mais recente do operador do Kf:

  • Confirme se a sua versão atual do Kf pode ser atualizada para o Kf v2.10.0.
  • Atualize para o Kf v2.10.0.
  • Atualize as dependências (se necessário).

Antes de começar

Vai precisar de:

  • Um cluster existente com o Kf instalado.
  • Acesso a um computador com o gcloud, o kf e o kubectl instalados.

Prepare-se para a atualização

Ligue-se ao cluster de destino

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

Confirme se as versões atuais da CLI Kf e do servidor correspondem

Execute kf debug e valide se as versões da CLI Kf e do servidor Kf correspondem.

  • A versão da CLI é apresentada em Kf Client.
  • A versão do servidor Kf é apresentada 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 Kf e do servidor Kf não corresponderem, mas a versão do servidor for v2.7.x, instale a CLI Kf v2.10.0 antes de continuar.

Se o valor do servidor Kf for anterior à versão 2.7.x, tem de fazer primeiro uma atualização incremental para o Kf v2.7.x para continuar.

Confirme que o Kf está em bom estado antes de atualizar

Execute kf doctor para verificar o estado do cluster. Certifique-se de que todos os testes são aprovados antes de continuar.

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

Se vir mensagens FAIL ou Error: environment failed checks, siga as orientações na saída kf doctor ou consulte o guia de resolução de problemas para resolver o problema e tente novamente o comando até ter êxito.

Atualize o operador

O operador Kf faz as atualizações por si.

  1. Aplique o YAML do operador:

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

Atualize as dependências do Kf

  1. Atualize o Tekton:

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

  2. Atualize para o Cloud Service Mesh v1.12:

    1. Siga os passos no guia de atualização do Cloud Service Mesh.
  1. Atualize/instale o Config Connector:

    Para atualizar a partir do Kf v2.8: Siga os passos no passo "Instalar o Config Connector" em Instalação do Kf

    Para atualizar a partir do Kf v2.7:

    1. Transfira o ficheiro tar do operador do Config Connector necessário.

    2. Extraia o ficheiro TAR.

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

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

Atualize para a CLI Kf v2.10.0

  1. Instale a CLI:

    Linux

    Este comando instala a CLI do Kf para todos os utilizadores no sistema. Siga as instruções no separador do Cloud Shell para o instalar apenas para si.

    gcloud storage cp gs://kf-releases/v2.10.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 utilizadores no sistema.

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

    Cloud Shell

    Este comando instala o kf na sua instância do Cloud Shell se usar o bash. Caso contrário, pode ter de modificar as instruções para outras shells.

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

    Windows

    Esta ação transfere kf para o diretório atual. Adicione-o ao caminho se quiser chamá-lo a partir de qualquer outro local que não seja o diretório atual.

    gcloud storage cp gs://kf-releases/v2.10.0/kf-windows.exe kf.exe
  2. Valide se as versões da CLI Kf e do servidor Kf correspondem:

    • A versão da CLI é apresentada em Kf Client.
    • A versão do servidor Kf é apresentada em kf["app.kubernetes.io/version"].
    $ kf debug
    ...
    Version:
      Kf Client:                        v2.10.0
      Server version:                   v1.21.6-gke.1500
      kf["app.kubernetes.io/version"]:  v2.10.0
    ...
    

Verifique se o Kf foi atualizado com êxito

  1. Execute doctor para garantir que a versão recém-instalada está em bom estado:

    kf doctor --retries=20

    O comando executa verificações de clusters várias vezes. É normal que algumas das tentativas falhem enquanto os novos controladores estão a ser 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 tente novamente o comando até ter êxito.

Se os passos de validação forem bem-sucedidos, o cluster foi atualizado com êxito! Se tiver problemas, reveja a página de apoio técnico para obter orientações.