Por que a instalação do complemento falha e exibe "The release name is already exist"?
Sintoma
Quando um complemento não é instalado, a mensagem de erro "The release name is already exist" é retornada.
Possível causa
O registro de lançamento do complemento permanece no cluster do Kubernetes. Geralmente, é porque o cluster etcd fez backup e restaurou o complemento, ou o complemento não foi instalado ou excluído.
Solução
Use o kubectl para se conectar ao cluster e limpe manualmente Segredo e Configmap correspondente à versão do complemento. A seguir usa o complemento release de autoscaler como um exemplo.
- Conecte-se ao cluster usando kubectl e execute o seguinte comando para exibir a lista de Segredos de versões de complementos:
kubectl get secret -nkube-system |grep cceaddon
O nome de Segredo de um complemento release está no formato de sh.helm.release.v1.cceaddon-{add-on name}.v*. Se houver várias versões de release, você pode excluir seus Segredos ao mesmo tempo.
- Execute o comando release secret para excluir os segredos.
Exemplo:
kubectl delete secret sh.helm.release.v1.cceaddon-autoscaler.v1 sh.helm.release.v1.cceaddon-autoscaler.v2 -nkube-system
- Se o complemento for criado quando o Helm v2 for usado, o CCE automaticamente aumentará o v2 release nos Configmaps para o v3 release nos Segredos ao visualizar os complementos e seus detalhes. O v2 release no Configmap original não é excluído. Execute o seguinte comando para exibir a lista de ConfigMap de complementos releases:
kubectl get configmap -nkube-system | grep cceaddon
O nome do ConfigMap de um complemento release está no formato cceaddon-{add-on name}.v*. Se houver várias versões de release, você pode excluir seus ConfigMaps ao mesmo tempo.
- Execute o comando release configmap para excluir o ConfigMaps.
Exemplo:
kubectl delete configmap cceaddon-autoscaler.v1 cceaddon-autoscaler.v2 -nkube-system
Deletar recursos no kube-system é uma operação de alto risco. Certifique-se de que o comando está correto antes de executá-lo para evitar que os recursos sejam excluídos por engano.
- No console do CCE, instale o complemento e, em seguida, desinstale-o. Certifique-se de que os recursos suplementares residuais estejam limpos. Após a conclusão da desinstalação, instale o complemento novamente.
Ao instalar o complemento pela primeira vez, você pode encontrá-lo anormal após a instalação devido aos recursos residuais da versão anterior do complemento, o que é normal. Nesse caso, você pode desinstalar o complemento no console para garantir que os recursos residuais sejam limpos e que o complemento possa ser executado corretamente após ser instalado novamente.