Essas etapas são específicas para a versão agrupada do Istio que é incluída por padrão com o "complemento do GKE" do Knative Serving.
Como a versão empacotada do Istio foi desinstalada quando você executou processo de desinstalação do "complemento GKE" (em inglês) do Knative serving, as etapas nesta página, instale o Cloud Service Mesh no seu cluster e configura seu gateway de entrada.
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
Em geral, o processo para instalar o Cloud Service Mesh ao migrar da versão agrupada do Istio é o mesmo que realizar uma instalação limpa do Cloud Service Mesh. Neste processo, a versão do Cloud Service Mesh 1.18 é instalado com o Plano de controle no cluster.
Instalar o Cloud Service Mesh versão 1.18
Use a documentação de instalação do Cloud Service Mesh para instalar o Cloud Service Mesh.
Antes de começar:
Para a migração, o gateway de entrada precisa ser instalado separadamente durante as etapas de configuração subsequentes. O script de instalação não instala o gateway de entrada por padrão.
Opcional: se você usar a autoridade de certificação do Cloud Service Mesh (Mesh CA), também precisará incluir a sinalização
--ca mesh_ca
com o script de instalação do Cloud Service Mesh.
Para instalar o Cloud Service Mesh:
Siga as etapas na documentação do Cloud Service Mesh: Instalar o Cloud Service Mesh versão 1.18
- Exemplo
Veja a seguir um exemplo do comando padrão que inclui a sinalização necessária:
./asmcli install \ --project_id ${PROJECT_ID} \ --cluster_name ${CLUSTER_NAME} \ --cluster_location ${CLUSTER_LOCATION} \ --ca mesh_ca \ --output_dir DIR_PATH \ --enable_all
Configurar a entrada do Cloud Service Mesh
Nesta seção, o script de migração é usado para
criar o gateway de entrada do Cloud Service Mesh no namespace gke-system
.
Para a migração, o namespace gke-system
é usado para que o gateway
de entrada seja colocado no mesmo namespace usado pelo "Istio"
agrupado removido recentemente. Portanto, os pods de entrada do Cloud Service Mesh podem assumir o tráfego facilmente
sem nenhuma alteração de configuração necessária no serviço de entrada. Por exemplo, não é necessário configurar um novo endereço IP externo.
Para criar o gateway de entrada no namespace
gke-system
, execute o seguinte comando para iniciar o script de migração:./migration-addon.sh --command set-up-asm-ingress
A saída do terminal durante o processo é semelhante a esta:
Setting up Cloud Service Mesh ingress. Note that the Cloud Service Mesh ingress is not serving traffic at this step. namespace/gke-system labeled deployment.apps/istio-ingressgateway created horizontalpodautoscaler.autoscaling/istio-ingressgateway created role.rbac.authorization.k8s.io/istio-ingressgateway-sds created rolebinding.rbac.authorization.k8s.io/istio-ingressgateway-sds created Cloud Service Mesh ingress is successfully installed.
Verifique se o gateway de entrada
istio-ingrerssgateway
está em execução no namespacegke-system
executando o seguinte comando:kubectl get deployment istio-ingressgateway -n gke-system
Observe que o número de pods
istio-ingressgateway
é intencionalmente0
. Depois de instalar o componente da frota de serviço do Knative serving, há uma etapa subsequente para migrar todo o tráfego para a entrada do Cloud Service Mesh.
A seguir
Instalar o componente da frota
Reversão
Se você precisar reverter as alterações feitas por meio das seguintes etapas, use o script de migração para:
- Exclua o gateway de entrada do Cloud Service Mesh.
- Desinstale o Cloud Service Mesh.
Para reverter a configuração e a instalação do Cloud Service Mesh:
Execute o comando a seguir para iniciar a reversão.
./migration-addon.sh --command rollback-set-up-asm-ingress
A saída do terminal durante o processo é semelhante a esta:
Deleting Cloud Service Mesh ingress deployment.apps "istio-ingressgateway" deleted horizontalpodautoscaler.autoscaling "istio-ingressgateway" deleted role.rbac.authorization.k8s.io "istio-ingressgateway-sds" deleted rolebinding.rbac.authorization.k8s.io "istio-ingressgateway-sds" deleted Cloud Service Mesh ingress is successfully deleted.
Para verificar se o gateway de entrada do Cloud Service Mesh foi removido, verifique se o serviço
istio-ingressgateway
não existe mais no namespacegke-system
:kubectl get deployment istio-ingressgateway -n gke-system
Para continuar revertendo todas as alterações para o estado original das instalações, reverta o "complemento do GKE" do Knative serving.