Estoy siguiendo el tutorial de kOps para configurar un clúster en AWS. Puedo crear un clúster con
kops create cluster kops update cluster --yesSin embargo, al validar si mi clúster está configurado correctamente con
kops validate clusterMe quedo atascado con el error:
unexpected error during validation: error listing nodes: UnauthorizedEl mismo error ocurre en muchas otras operaciones de kOps.
Revisé mi versión de kOps/K8s y es 1.19:
> kops version Version 1.19.1 (git-8589b4d157a9cb05c54e320c77b0724c4dd094b2) > kubectl version Client Version: version.Info{Major:"1", Minor:"20" ... Server Version: version.Info{Major:"1", Minor:"19" ...¿Cómo puedo arreglar esto?
A partir de kOps 1.19, hay dos razones por las que de repente obtendrá este error:
Ambos problemas anteriores se solucionan ejecutando kops export kubecfg --admin .
Tenga en cuenta que se desaconseja el uso de las credenciales TLS predeterminadas. Considere cosas como usar un proveedor OIDC en su lugar.
Kubernetes v1.19 eliminó la compatibilidad con la autenticación básica, por lo que las credenciales predeterminadas de kOps no se pueden autorizar. Para solucionar esto, actualizaremos nuestro clúster para usar un balanceador de carga de red (NLB) en lugar del balanceador de carga clásico (CLB) predeterminado. Se puede acceder al NLB con mecanismos AuthZ no obsoletos.
Después de crear su clúster, pero antes de actualizar los recursos de la nube (antes de ejecutar --yes ), edite su configuración para usar un NLB:
kops edit cluster Luego actualice su clase de balanceador de carga a Network :
spec: api: loadBalancer: class: NetworkAhora actualice los recursos de la nube con
kops update cluster --yesY podrá pasar AuthZ con kOps en su clúster.
Tenga en cuenta que el uso de un NLB también tiene otras ventajas; consulte los documentos de AWS para ver una comparación .
Si tiene un clúster preexistente que desea actualizar a un NLB, hay más pasos a seguir para asegurarse de que los clientes no comiencen a fallar en AuthZ, para eliminar recursos antiguos, etc. Encontrará una mejor guía para eso en el Notas de la versión de kOps v1.19 .