A versão anterior dos clusters conectados do GKE é conhecida como clusters anexados ao GKE (geração anterior). A migração da versão anterior de clusters anexados ao GKE para a geração atual oferece acesso a essa funcionalidade, incluindo o gerenciamento do ciclo de vida e o registro de frota. A migração é uma operação de mão única: depois de migrar para a geração atual de clusters anexados ao GKE, não é possível retornar aos clusters anexados ao GKE da geração anterior.
Política de numeração de versões
Esses documentos se referem à versão dos clusters anexados ao GKE como a versão da plataforma, para diferenciá-la da versão do Kubernetes. Os clusters anexados ao GKE usam a mesma convenção de numeração de versões que o GKE. Por exemplo, 1.21.5-gke.1. Ao anexar ou atualizar seu cluster, escolha uma versão de plataforma em que a versão secundária seja igual ou um nível abaixo da versão do Kubernetes do cluster. Por exemplo, é possível anexar um cluster que executa o Kubernetes v1.22.* com a plataforma de clusters anexados do GKE 1.21.* ou 1.22.*.
Isso permite fazer upgrade do cluster para a próxima versão secundária antes de fazer upgrade dos clusters anexados ao GKE.
Verifique se a Identidade da carga de trabalho está ativada
Os clusters atuais dos clusters anexados do GKE (geração anterior) precisam ter a Identidade da carga de trabalho ativada antes de serem migrados para a geração atual dos clusters anexados do GKE.
Para determinar se o Wi-Fi está ativado, execute o seguinte comando e verifique a saída de qualquer campo de Identidade da carga de trabalho:
gcloud container hub memberships describe MEMBERSHIP_NAME
Se a Identidade da carga de trabalho não estiver ativada, a assinatura precisará ser atualizada para ativá-la.
O comando para atualizar a associação do cluster varia um pouco, dependendo do cluster ter um emissor OIDC público ou particular. Escolha a guia que se aplica ao cluster:Emissor do OIDC particular
gcloud container hub memberships register MEMBERSHIP_NAME \
--context=KUBECONFIG_CONTEXT \
--kubeconfig=KUBECONFIG_PATH \
--enable-workload-identity \
--has-private-issuer
Substitua:
- MEMBERSHIP_NAME: o nome da assinatura do cluster
- KUBECONFIG_CONTEXT: contexto no kubeconfig para acessar o cluster AKS
- KUBECONFIG_PATH: caminho para o arquivo kubeconfig
Emissor do OIDC público
- Recupere o URL do emissor do OIDC do cluster. Instruções específicas variam de acordo com a distribuição.
A saída desse comando será o URL do emissor do OIDC. Salve esse valor para uso posterior.
- Atualize a assinatura:
gcloud container fleet memberships register MEMBERSHIP_NAME \
--context=KUBECONFIG_CONTEXT \
--kubeconfig=KUBECONFIG_PATH \
--enable-workload-identity \
--public-issuer-url=OIDC_URL
Substitua:
- MEMBERSHIP_NAME: o nome da assinatura do cluster
- KUBECONFIG_CONTEXT: contexto no kubeconfig para acessar o cluster AKS
- KUBECONFIG_PATH: caminho para o kubeconfig
- OIDC_URL: o URL do OIDC recuperado anteriormente
Migrar o cluster
Para migrar seu cluster de clusters conectados ao GKE (geração anterior) para clusters anexados ao GKE:
Extraia o contexto kubeconfig do cluster e armazene-o na variável de ambiente KUBECONFIG_CONTEXT:
KUBECONFIG_CONTEXT=$(kubectl config current-context)
Execute o comando a seguir para migrar o cluster para a geração atual de clusters anexados ao GKE. Esse comando extrai os detalhes relevantes da configuração do cluster e o registra no gerenciamento de frotas do Google. Ele instala ou faz upgrade de qualquer software necessário, como o agente do ciclo de vida, no cluster.
gcloud container attached clusters import \ --location=GOOGLE_CLOUD_REGION \ --fleet-membership=FLEET_MEMBERSHIP \ --platform-version=PLATFORM_VERSION \ --distribution=CLUSTER_DISTRIBUTION \ --context=KUBECONFIG_CONTEXT \ [--kubeconfig=KUBECONFIG_PATH]
Substitua:
- GOOGLE_CLOUD_REGION: o local do Google Cloud em que o cluster é administrado.
- FLEET_MEMBERSHIP: o identificador de associação totalmente qualificado do cluster registrado (confira abaixo)
- PLATFORM_VERSION: a versão dos clusters anexados ao GKE para a qual você quer migrar (exemplo: v1.22.0-gke.1)
- CLUSTER_DISTRIBUTION: o tipo de cluster –
eks
para o Elastic Kubernetes Service da AWS,aks
para o Azure Kubernetes Service ougeneric
para qualquer outra distribuição - KUBECONFIG_CONTEXT: o nome do contexto no
kubeconfig
para se conectar ao cluster - KUBECONFIG_PATH: o local do seu arquivo
kubeconfig
. Se não for especificado, o padrão será~/.kube/config
.
O identificador da associação é uma string que identifica exclusivamente seu cluster anexado e tem o formato
projects/PROJECT_NUMBER/locations/global/memberships/MEMBERSHIP_ID
, em quePROJECT_NUMBER é o número do projeto host da frota. Especifique o mesmo número do projeto ao qual seu cluster pertence atualmente
MEMBERSHIP_ID: precisa ser o ID da associação da frota do cluster atual. Os clusters anexados ao GKE usarão esse valor como nome do cluster.