Resolva falhas de conexão e atualização em nós de borda associando as mensagens de erro às respectivas causas e soluções.
Se o problema não estiver listado, colete informações de diagnóstico e envie um ticket.
Tratar falhas de conexão de nós de borda
Se o script de conexão do nó falhar, localize a mensagem de erro correspondente na tabela abaixo.
| Mensagem de erro | Causa | Solução |
|---|---|---|
The os XXX unsupport |
Versão do sistema operacional não suportada. | Consulte Adicionar um nó de borda para verificar as versões de SO suportadas. |
Invalid nodeName |
Nome de nó inválido. | Use um nome que contenha apenas letras minúsculas, hifens (-) e pontos (.), tenha entre 1 e 253 caracteres e não comece com localhost. |
Node route overlaps with service cidr |
A rota do nó entra em conflito com o bloco CIDR do pod ou o bloco CIDR do Service. | Recrie o cluster definindo blocos CIDR para pods e Services que não entrem em conflito com o endereço do NameServer ou com a rota do nó. |
response error msg: TOKEN_EXPIRED |
Token de conexão expirado. | Gere um novo script de conexão e verifique se o relógio do sistema do nó está correto. |
A node named XXX is already exist in the cluster |
Nome de nó duplicado no cluster. | Remova o nó duplicado e execute novamente o script de conexão. |
error run phase join-node: failed to get cluster info: failed to get cluster-info configmap, Get "https://xx.xxx.xx.xx:6443/api/v1/namespaces/kube-public/configmaps/cluster-info": dial tcp xx.xxx.xx.xx:6443: i/o timeout |
O edgeadm não conseguiu alcançar o servidor de API. | O edgeadm conecta-se ao servidor de API por endereço IP. Verifique se as regras da lista de controle de acesso (ACL) na instância do Server Load Balancer (SLB) que está à frente do servidor de API bloqueiam o endereço IP do nó. |
error run phase join-node: Install edge-hub failed: Copy file /tmp/edge-hub to /usr/bin/edge-hub fail: open /usr/bin/edge-hub: text file busy | 40009 | 40009 |
Já existe um binário do edge-hub no nó. | Execute edgeadm reset e execute novamente o script de conexão. |
error run phase post-check: timed out waiting for the condition |
Falha ao iniciar componentes do sistema. | 1. Baixe a versão mais recente do edgeadm, execute edgeadm reset e execute novamente o script de conexão. 2. Verifique se o nó consegue acessar todos os endpoints públicos necessários — consulte Configurar endpoints e roteamento de IP para nós de borda. 3. Se o problema persistir, colete as informações de diagnóstico e envie um ticket. |
Tratar falhas de atualização de nós de borda
Ao atualizar um pool de nós de borda, uma atualização bem-sucedida retorna This node has been upgraded successfully. Caso contrário, identifique o erro na tabela a seguir.
| Mensagem de erro | Causa | Solução |
|---|---|---|
edgeadm version xxxx does not match cluster version |
A versão do edgeadm não corresponde à versão do cluster. | 1. Verifique se o plano de controle foi atualizado. 2. Confirme se TARGET_CLUSTER_VERSION está correto. |
node has already been upgraded to xxx |
O nó já está na versão de destino. | Se alguns componentes não foram atualizados, preserve os logs e envie um ticket. |
kubelet target version xxxx does not match cluster version xxxx |
A versão do kubelet não corresponde à versão do plano de controle. | Se kubelet-version estiver especificado, verifique se coincide com a versão do plano de controle. Caso contrário, envie um ticket. |
Parameter currentVersion cann't null |
Versão do edgeadm desatualizada. | Baixe a versão mais recente do edgeadm. Caminhos de atualização válidos: Kubernetes 1.18 → 1,20 e 1,20 → 1,22. |
|
|
Falha na atualização; rollback automático concluído com sucesso. Status do nó não afetado. | Preserve os logs e envie um ticket. |
|
|
Tanto a atualização quanto o rollback falharam. Status do nó afetado. | Preserve os logs e envie um ticket. |
Coletar informações de diagnóstico do nó
Execute este script em um nó de borda com anomalias para coletar informações de diagnóstico.
Faça login no nó de borda com problema.
-
Baixe o script de diagnóstico.
curl -o /usr/local/bin/diagnose_edge_node.sh https://aliacs-k8s-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/public/diagnose/diagnose_k8s.sh -
Torne o script executável.
chmod u+x /usr/local/bin/diagnose_edge_node.sh -
Acesse o diretório do script.
cd /usr/local/bin/ -
Execute o script de diagnóstico.
./diagnose_edge_node.shCada execução gera um arquivo único. Exemplo de saída:
+ echo 'please get diagnose_1578310147.tar.gz for diagnostics' please get diagnose_1578310147.tar.gz for diagnostics + echo 'Submit the file named diagnose_1578310147.tar.gz to request technical support.' Submit the file named diagnose_1578310147.tar.gz to request technical support. -
Verifique se o arquivo compactado existe.
ll
Anexe o arquivo .tar.gz ao enviar um ticket.