Nota: Este post ha sido importado de mi blog de geeks.ms. Es posible que algo no se vea del todo "correctamente". En cualquier caso puedes acceder a la versión original aquí
Hoy me han preguntado eso, así que mira, aprovecho para apuntarlo aquí, por si alguien más tiene esta duda.
La situación es la siguiente: tienes minikube instalado y funcionando en Windows, pero quieres usarlo desde un kubectl ejecutándose en un terminal WSL. ¿Es posible?
La respuesta es que sí, no solo es posible, si no que es muy fácil. Los pasos que debes realizar son los siguientes.
Primero copiar el fichero de configuración de kubectl al sistema de ficheros de WSL. Este fichero es C:\Users<usuario>.kube\config. Así, pues, desde un terminal WSL teclea:
cp /mnt/c/Users/<usuario>/.kube/config ~/.kube/config
Con esto copias este fichero en tu directorio de usuario de WSL. Ten presente que esto te sobreescribirá la configuración de kubectl que tengas en WSL (estoy asumiendo que no tenías).
El fichero config es un fichero YAML que contiene la definición de los clústers así como de la información necesaria para acceder a él. P. ej. en mi caso la definición del clúster de Minikube es:
- cluster: certificate-authority: C:\Users\etoma\.minikube\ca.crt server: https://172.25.117.234:8443 name: minikube
Minikube guarda el certificado del clúster en el disco (por defecto en el fichero C:\Users<usuario>.minikube\ca.crt). Lo que debes hacer es editar este fichero en WSL para que use las rutas “a lo WSL”. Es decir, modificar “C:\Users<usuario>.minikube\ca.crt” por “/mnt/c/
Con esto solo no basta, también debes buscar en el mismo fichero, dentro de “Users” el usuariol “minikube”, ya que allí hay la referencia al certificado de cliente:
- name: minikube user: as-user-extra: {} client-certificate: C:\Users\etoma\.minikube\client.crt client-key: C:\Users\etoma\.minikube\client.key
Sustitutye esas dos rutas para que sean rutas “a lo WSL” ¡listos!. Ahora desde WSL ya puedes usar kubectl conectado contra minikube:
¡Ya os dije que era fácil! 🙂