
Instalé el clúster de Kubernetes usando kubeadm, todo está bien en los servidores, el nodo maestro y trabajador están visibles
--apiserver-cert-extra-sans=*.*.201.87
Hago una conexión desde otra red desde una PC local, habiendo copiado previamente admin.conf a ~/.kube me sale un error
E0125 13:47:12.606617 794306 proxy_server.go:147] Error while proxying request: x509: cannot validate certificate for *.*.201.87 because it doesn't contain any IP SANs
Intentamos solicitar certificados nuevamente y no funciona.
Respuesta1
Si está usando literalmente *.*.201.87
, entonces esto es incorrecto y debe usar la dirección IP o el nombre DNS adecuado.
Si enmascaró la IP real *
en este ejemplo, verifique el certificado entregado durante el protocolo de enlace TLS:
openssl s_client -connect <host>:<port>
# save cert in cert.pem
openssl x509 -text -noout -in cert.pem
Compruebe qué entradas se enumeran en X509v3 Subject Alternative Name
.
Respuesta2
El error que publicaste
x509: cannot validate certificate for ..201.87 because it doesn't contain any IP SANs
indica que el certificado presentado por el servidor API de Kubernetes no contiene las SAN IP necesarias para coincidir con la dirección IP que está utilizando para acceder al clúster.
Intente regenerar los certificados para el servidor API de Kubernetes con las SAN IP adecuadas. Puede utilizar el kubeadm alpha phase certs all --apiserver-advertise-address=<your-IP\>
comando para lograr esto. Mira estoenlace
Asegúrese también de que elKUBECONFIGLa variable de entorno está configurada correctamente en la ubicación de suadministrador.confarchivo. Este archivo debe contener el certificado necesario y los datos clave para autenticarse con el servidor API de Kubernetes.
Respuesta3
en mi caso
export no_proxy=$no_proxy,11.62.201.87