Instale o Knative Serving como um componente da frota do GKE Enterprise.
Antes de começar
Primeiro, leia e verifique se você atende aos requisitos de upgrade.
Os comandos nesta página usam as variáveis de ambiente e o script de migração da etapa de preparação do upgrade.
É importante que você execute cada etapa desse processo na ordem especificada.
Visão geral
A instalação do Knative Serving como um componente da frota inclui:
- Ativação de frotas no seu projeto do Google Cloud.
- Copiar o gateway
gke-system-gateway
para o gatewayknative-ingress-gateway
. - Instalar o recurso personalizado do Knative serving no cluster.
Durante esse processo, os serviços atuais do Knative serving continuam para o tráfego de serviço sem interrupções.
Instalar o componente da frota do Knative serving
Nesta seção, o script de migração é usado para instalar o Knative serving como um componente de frota.
Execute o seguinte comando para iniciar o script de migração:
./migration-addon.sh --command install-cloud-run-v2
Se você tiver algum problema com esta etapa ou quiser alterar algo, é possível executar novamente este comando do script de migração.
No terminal, o script de migração solicita sua confirmação para executar cada ação. Insira
y
em cada prompt para continuar.As solicitações durante o processo de instalação do componente da frota do Knative serving são semelhantes a:
In the process of installing the Knative serving fleet component, the script performs the following: 1. Enabling the fleet in your Google Cloud project. 2. Copy gke-system-gateway Gateway to knative-ingress-gateway Gateway 3. Installing the Knative serving custom resource in your cluster. Continue? [Y/n] y 1. Enabling Anthos services? Continue? [Y/n] y Operation "operations/acf.p2-625914735451-10d4b6ff-68e1-4a09-97c4-79b209be5031" finished successfully. 2. Copying gke-system-gateway Gateway to knative-ingress-gateway Gateway configmap/original-knative-ingress-gateway-spec unchanged gateway.networking.istio.io/knative-ingress-gateway patched (no change) configmap/config-istio patched configmap/config-istio patched gateway.networking.istio.io "gke-system-gateway" deleted 3. Install the Knative serving custom resource in your cluster? Continue? [Y/n] y Waiting for Knative serving feature to be enabled Knative serving feature is enabled. The YAML file for the new operator appdevexperience-operator was created at /tmp/tmp.bI7H1qagGa/cloudrun.yaml customresourcedefinition.apiextensions.k8s.io/cloudruns.operator.run.cloud.google.com condition met kubeconfig entry generated for my-gke-cluster. Added the custom resource for Knative serving Waiting for Knative serving serving to be ready... Knative serving serving is not ready yet. Knative serving serving is ready. Removing the ValidatingWebhookConfiguration used to prevent deletion validatingwebhookconfiguration.admissionregistration.k8s.io "prevent-deletion-cloud-run-resources" deleted Knative serving has been installed as an Anthos fleet component
Problema conhecido para clusters particulares
Se a instalação do Knative serving estiver em um cluster particular no Google Cloud, talvez você receba um erro de tempo limite de:
Waiting for CRD cloudruns.operator.run.cloud.google.com to be created
Para contornar o erro de tempo limite, execute o seguinte comando:
cat <<EOF | kubectl apply -f - apiVersion: operator.run.cloud.google.com/v1alpha1 kind: CloudRun metadata: name: cloud-run EOF
Verificar se o componente do recurso Knative serving está ativado:
Console
Confira se o componente do Knative serving está ativado no Console do Google Cloud:
Linha de comando
Veja se o estado
appdevexperience
éACTIVE
:gcloud alpha container hub features list --project=PROJECT_ID
Substitua PROJECT_ID pelo ID do projeto do Google Cloud.
Para mais detalhes e opções, consulte a referência da lista de recursos de hub de contêiner alpha do gcloud.
A seguir
Agora que o Cloud Service Mesh e o Knative serving estão instalados, você pode começar a migrar e implantar o tráfego para os novos recursos.
Reversão
Se você precisar reverter as alterações feitas por meio das etapas acima, use o script de migração para:
- Remova do operador o controle dos recursos do Knative serving
appdevexperience-operator
: - Exclua o recurso personalizado do Knative serving e desinstale o operador
appdevexperience-operator
: - Opcional: desative o Knative serving na frota do seu projeto do Google Cloud.
Para iniciar o processo de reversão:
Execute o seguinte comando para iniciar o script de migração:
./migration-addon.sh --command rollback-install-cloud-run-v2
No terminal, o script de migração solicita sua confirmação para executar cada ação. Insira
y
em cada prompt para continuar.As solicitações durante o processo de desinstalação do componente da frota são semelhantes à seguinte:
In the step of rolling back the Knative serving fleet installation, the script performs the following: 1. Remove control of Knative serving resources from the operator `appdevexperience-operator`. 2. Delete the Knative serving custom resource and uninstall the operator `appdevexperience-operator`. 3. Revert the changes installed by the Knative serving fleet component. 4. Optional: Disable Knative serving in the GKE Enterprise fleet of your Google Cloud project. Continue? [Y/n] y 1. Removing control of Knative serving resources from the operator `appdevexperience-operator`. Creating a ValidatingWebhookConfiguration to prevent the deletion of the resources under the following namespaces: knative-serving, cloud-run-system, and gke-system waiting for OwnerReferences of Knative serving resources to be deleted OwnerReferences of Knative serving resources are deleted Waiting for Knative serving serving to be ready... Knative serving serving is ready. 2. Delete the Knative serving custom resource and uninstall the operator `appdevexperience-operator`? Continue? [Y/n] y cloudrun.operator.run.cloud.google.com "cloud-run" deleted clusteractiveoperand.operand.run.cloud.google.com/sha256-3c1c80a329 patched waiting for appdevexperience namespace to be deleted 3. Revert the changes installed by the fleet component? configmap/config-observability patched 4. Optional: Disable Knative serving in the Anthos fleet of your Google Cloud project? You can choose to skip this step and keep the feature enable within your Anthos fleet. For example, you might want to keep the Knative serving fleet component enabled because it was enabled prior to this migration. Continue (or Skip)? [Y/n] n