Modernização do plano de controle gerenciado
Visão geral
O Google vai atualizar gradualmente as frotas atuais que usavam a implementação do plano de controle gerenciado ISTIOD para usar a implementação TRAFFIC_DIRECTOR. Por
padrão, o Google migra automaticamente suas frotas, mas você pode fazer isso
manualmente. Para verificar qual plano de controle sua frota está usando, consulte
Verificar a implementação do plano de controle.
Considere o seguinte ao preparar sua frota para modernização:
Para se preparar para a modernização, você tem duas maneiras de controlar o processo:
Migração automática orientada pelo Google (padrão): é possível personalizar a ordem em que os clusters são modernizados seguindo as instruções em Modernização orientada pelo Google.
Migração orientada pelo cliente (opcional): você pode modernizar suas frotas por conta própria, rotulando-as de acordo com as instruções em Modernização orientada pelo cliente.
A modernização impulsionada pelo Google é o padrão. Com essa opção, o Google determina quando suas frotas estão prontas para modernização. O Google programa a modernização das suas frotas e envia uma notificação antes de iniciar o processo.
A modernização de um cluster reinicia as cargas de trabalho que têm proxies. Isso não deve causar tempo de inatividade se você seguir as práticas recomendadas do Kubernetes. Além disso, o Google vai acionar a modernização durante uma janela de manutenção, se você tiver configurado uma. Depois de iniciado, ele é executado até a conclusão com mais seis dias de tempo de absorção antes de ser marcado como finalizado. Se o monitoramento detectar problemas, você poderá solicitar um rollback.
Para a modernização orientada pelo cliente, o Google notifica você quando suas frotas estão prontas para a modernização. Em seguida, escolha quando acionar a modernização, cluster por cluster. Depois de concluir, marque cada modernização de frota como concluída.
Depois que uma frota é modernizada, o Google remove todos os componentes baseados em Istiod.
A implementação do plano de controle do
TRAFFIC_DIRECTORexige que o cluster esteja registrado em uma frota com o recurso de malha ativado. Se você fez a integração usando ferramentas legadas, o Google vai registrar automaticamente seu cluster na frota do projeto usando a API Membershipgkehub.googleapis.com. Se você tiver alguma automação que cancele o registro de um cluster, remova-a antes da modernização.
Modernização orientada pelo Google
Essa opção é o padrão se você não rotular suas frotas para modernização orientada pelo cliente. O Google vai monitorar suas frotas para determinar quando elas estarão prontas para serem modernizadas com segurança. Quando todas as frotas habilitadas para malha na sua organização estiverem prontas, ela será programada para modernização.
Várias frotas
Se sua organização tiver várias frotas com o Cloud Service Mesh gerenciado,
você poderá controlar a ordem em que o Google moderniza suas frotas definindo um
rótulo de projeto mesh-modernization-order com um dos
valores: early, default, late. O Google vai concluir a modernização de cada grupo antes de começar a modernização de qualquer frota no próximo grupo.
As frotas que você escolheu para a modernização orientada pelo cliente não serão consideradas nessa ordenação.
Use o comando a seguir para definir o rótulo mesh-modernization-order de uma
frota:
gcloud alpha projects update FLEET_PROJECT_ID --update-labels="mesh-modernization-order=VALUE"
Para instruções sobre como definir rótulos de projetos usando o console ou REST, consulte o documento Como criar e gerenciar rótulos.
Se você não usar organizações do Google Cloud , as frotas serão programadas e modernizadas de forma independente, e não será possível controlar a ordem.
Malhas de vários clusters
Se uma frota tiver vários clusters usando o Cloud Service Mesh gerenciado, você poderá
controlar a ordem em que o Google moderniza os clusters definindo o rótulo
do cluster de mesh-modernization-order como um dos valores: early, default, late. O Google vai começar a modernização de cada
grupo e aguardar a conclusão das etapas automatizadas antes de
iniciar a modernização de qualquer cluster no próximo grupo. Essa ordenação só se aplica a uma frota e não afeta outras frotas da sua organização que podem estar sendo modernizadas em paralelo.
Use o comando a seguir para definir o rótulo mesh-modernization-order de um cluster:
gcloud container clusters update CLUSTER_NAME \ --location LOCATION \ --update-labels="mesh-modernization-order=VALUE"
Notificações e programação
Nesta seção, descrevemos como você vai receber notificações sobre a modernização das suas frotas e clusters.
Notificação de que a modernização será programada em breve
Primeiro, você vai receber uma notificação quando suas frotas forem selecionadas para a modernização impulsionada pelo Google nas próximas semanas.
Essa notificação é enviada antes do primeiro dia útil de um mês nos EUA. A data de início mais recente possível para a modernização do cluster é 14 dias após o primeiro dia útil de um mês nos EUA. O Google vai fazer o possível para iniciar a primeira modernização do cluster da sua organização até o final do próximo mês civil. Por exemplo, as notificações serão implementadas antes de 1º de abril de 2025, as modernizações de cluster podem começar a partir de 15 de abril de 2025, e a primeira modernização de cluster deve começar antes de 31 de maio de 2025.
Você vai receber uma notificação simultânea para cada uma das frotas na sua organização, exceto aquelas que você escolheu para a modernização orientada pelo cliente.
Essa notificação está disponível nas condições de estado do recurso no nível da frota. Use o seguinte comando da Google Cloud CLI para verificar a notificação:
gcloud alpha container fleet mesh describe --project $FLEET_PROJ
Depois que a frota for programada, você vai encontrar uma condição com
code: MODERNIZATION_WILL_BE_SCHEDULED e details semelhante a esta:
state:
servicemesh:
conditions:
- code: MODERNIZATION_WILL_BE_SCHEDULED
details: We will soon schedule clusters in this fleet to be modernized to use the TRAFFIC_DIRECTOR
control plane implementation. Please confirm your fleet and cluster preferences prior to
scheduling. Cluster modernization dates will be on or after 2025-03-17.
documentation_link: ...
severity: INFO
Notificação no nível do cluster de que a modernização está programada
Você vai receber uma notificação no nível do cluster sobre a data de início estimada da modernização do cluster pelo Google, pelo menos um dia antes do início da modernização.
Depois da notificação no nível da frota, isso oferece um tempo muito mais preciso de modernização de clusters individuais.
As notificações estão disponíveis nas condições de estado do recurso no nível do cluster. Use o seguinte comando da Google Cloud CLI para verificar a notificação:
gcloud container hub mesh describe --project=PROJECT_ID
Você vai ver resultados semelhantes a este:
membershipStates:
projects/656460026795/locations/us-central1/memberships/cluster:
servicemesh:
conditions:
- code: MODERNIZATION_SCHEDULED
details: This cluster has been scheduled for modernization on or after 2025-03-17.
documentationLink: ...
severity: INFO
Modernização ativa para migração orientada pelo Google
Esta seção descreve as etapas da modernização impulsionada pelo Google.
Modernização de frotas
O Google vai acionar a modernização ativa de cada uma das frotas da sua organização. Isso significa que, para cada frota, as seguintes etapas são executadas:
- Modernize todos os clusters com
mesh-modernization-orderdeearly. - Modernize todos os clusters com
mesh-modernization-orderdedefaultou não especificado. - Modernize todos os clusters com
mesh-modernization-orderdelate. - Aguarde até que a modernização de cada cluster seja marcada como concluída. Isso significa esperar pelo menos seis dias úteis após reiniciar o último pod em qualquer cluster dessa frota.
- Conclua a modernização dessa frota, removendo os componentes baseados em Istiod.
Modernizar um cluster
Durante a modernização ativa de um cluster, as duas implementações do plano de controle são executadas temporariamente lado a lado. De maneira segura e controlada, as seguintes tarefas são processadas:
- Ative a nova implementação do plano de controle. Se você configurou janelas de manutenção para o cluster e está usando a modernização orientada pelo Google, esta etapa vai começar durante uma janela de manutenção e continuar até ser concluída.
- Para ativar a verificação de integridade, o daemonset
snké criado no namespacekube-systemdo cluster, e uma regra de firewall por cluster é criada.- Para ativar a ingestão de grupo de endpoints de rede (NEG), a anotação
cloud.google.com/negé adicionada a todos os serviços do Kubernetes. - Novos recursos do Google Cloud , como mesh, rotas, serviços de back-end e verificações de integridade, são criados no cluster.
- Alguns dos novos recursos têm limite de cota. É possível conferir cotas e pedir mais se necessário.
- O cluster é monitorado durante o tempo de imersão antes de passar para a próxima etapa.
- Para ativar a ingestão de grupo de endpoints de rede (NEG), a anotação
- Para ativar a verificação de integridade, o daemonset
- Mude o tráfego para a nova implementação do plano de controle. Se você configurou
janelas de manutenção para o cluster e está usando a modernização
orientada pelo Google, esta etapa vai começar durante uma janela de manutenção e
continuar até ser concluída.
- Os pods gerenciados pela implantação do Kubernetes que têm proxies do Cloud Service Mesh são reiniciados para se reconectarem ao novo plano de controle.
- Os pods são reiniciados em ondas progressivamente maiores com tempo de espera após cada onda para monitoramento.
- É necessário aguardar pelo menos seis dias úteis antes que a modernização de um cluster seja marcada como concluída.
Use o seguinte comando da Google Cloud CLI para verificar o status da modernização ativa:
gcloud container fleet mesh describe --project FLEET_PROJECT_ID
Você vai encontrar uma condição como uma das seguintes no campo membershipStates por cluster:
...
membershipStates:
projects/FLEET_PROJ/locations/us-central1/memberships/MEMBERSHIP:
servicemesh:
conditions:
- code: MODERNIZATION_IN_PROGRESS
details: ...
documentationLink: ...
severity: INFO
...
# If you see this, see instructions provided in the details and documentationLink fields.
- code: MODERNIZATION_ACTION_REQUIRED
details: [details about required actions]
documentationLink: [link to documentation for required actions]
severity: WARNING
...
- code: MODERNIZATION_COMPLETED
details: ...
documentationLink: ...
severity: INFO
Modernização baseada no cliente
Você pode controlar o momento exato da modernização no nível da frota. Para fazer isso, aplique um rótulo no projeto host da frota usando o seguinte comando:
gcloud alpha projects update FLEET_PROJECT_ID \ --update-labels="mesh-modernization-mode=manual"
Se a organização Google Cloud tiver várias frotas, qualquer uma que não estiver rotulada será programada para modernização impulsionada pelo Google.
Quando sua frota estiver qualificada para modernização, você vai receber uma notificação no estado do recurso no nível da frota. Você precisa acionar a modernização em até três meses após receber esta notificação.
Consulte as práticas recomendadas de configuração obrigatórias a seguir para preparar seu cluster para a modernização. Inscreva-se no feed de notas de lançamento do Cloud Service Mesh para receber notificações.