Use o edgeadm. Em implantações cloud-edge, os nós de borda podem ficar offline quando a rede está instável. Se a autonomia do nó estiver ativada, as cargas de trabalho continuam em execução, mas não é possível gerenciá-las pelo console na nuvem. Utilize o edgeadm para alterar Pods, ConfigMaps e Secrets em nós de borda offline em situações de emergência.
Reverter uma imagem com falha após uma implantação problemática
Corrigir um ConfigMap mal configurado que cause interrupção de serviço
Rotacionar um Secret expirado ou comprometido
As alterações feitas com o edgeadm são locais no nó. Quando o nó se reconecta, o estado da nuvem substitui as mudanças locais. Para alterações permanentes, atualize o cluster a partir da nuvem.
Pré-requisitos
Verifique os seguintes itens:
Um cluster ACK Edge executando Kubernetes 1.26 ou posterior.
Nós de borda adicionados ao cluster.
Limitações
O
edgeadmdestina-se apenas a uso emergencial, quando os nós de borda estiverem offline.É possível modificar apenas três tipos de recursos: Pod, ConfigMap e Secret.
As modificações são locais no nó. Por exemplo, uma alteração no ConfigMap afeta somente aquele nó específico, e não outros que utilizem o mesmo ConfigMap.
As mudanças não são sincronizadas com a nuvem. Assim que o nó se reconectar, o estado da nuvem sobrescreverá as alterações locais. Para mudanças definitivas, atualize o cluster pela nuvem.
Baixe o edgeadm
Baixe o edgeadm no nó de borda:
export REGION="" INTERCONNECT_MODE="" CLUSTER_VERSION=""; export ARCH=$(uname -m | awk '{print ($1 == "x86_64") ? "amd64" : (($1 == "aarch64") ? "arm64" : "amd64")}') INTERNAL=$( [ "$INTERCONNECT_MODE" = "private" ] && echo "-internal" || echo "" ); wget http://aliacs-k8s-${REGION}.oss-${REGION}${INTERNAL}.aliyuncs.com/public/pkg/run/attach/${CLUSTER_VERSION}/${ARCH}/edgeadm -O edgeadm; chmod u+x edgeadm;
Substitua os seguintes parâmetros:
|
Parâmetro |
Descrição |
Exemplo |
|
|
Versão do cluster ACK Edge. Consulte Notas de versão para versões suportadas do Kubernetes. |
|
|
|
ID da região do cluster ACK Edge. Consulte Regiões suportadas. |
|
|
|
Tipo de rede para conexão do nó: basic (modo Internet) ou private (modo Express Connect). Use |
|
O comando detecta a arquitetura do nó (amd64 para x86\_64, arm64 para aarch64) e baixa o binário correspondente.
Operações comuns de O&M
Identifique os seguintes valores para os recursos de destino:
|
Variável |
Descrição |
Como obter |
|
|
Nome do pod a ser modificado |
Execute |
|
|
Namespace ao qual o pod pertence |
— |
|
|
ID do pod |
— |
|
|
Nome do ConfigMap a ser modificado |
Execute |
|
|
Nome do Secret a ser modificado |
Execute |
Edite um modelo de pod
-
Abra a especificação do pod para edição:
edgeadm -n {namespace} edit pod {pod-name} Modifique o modelo do pod, salve e saia.
-
O pod reinicia automaticamente. Verifique se as alterações tiveram efeito:
crictl inspectp {pod-id}
Edite um ConfigMap
-
Abra o ConfigMap para edição, no escopo do pod que o utiliza:
edgeadm -n {namespace} -p {pod-name} edit configmap {configmap-name} Modifique o ConfigMap, salve e saia.
-
O pod reinicia com o ConfigMap atualizado. Para outros pods no mesmo nó que usam este ConfigMap, reinicie-os manualmente:
crictl stopp {pod-id}NotaO comando
crictl stoppinterrompe o pod. O kubelet o reinicia automaticamente.
Edite um Secret
-
Abra o Secret para edição, no escopo do pod que o utiliza:
edgeadm -n {namespace} -p {pod-name} edit secret {secret-name} Modifique o Secret, salve e saia.
-
O pod reinicia com o Secret atualizado. Caso haja outros pods no mesmo nó utilizando este Secret, reinicie-os manualmente:
crictl stopp {pod-id}NotaO comando
crictl stoppinterrompe o pod. O kubelet o reinicia automaticamente.