Tip: Acceder a Minikube desde WSL

 ·  ☕ 2 min  ·  ✍️ eiximenis

    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//.minikube/ca.crt”.

    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:

    minikube en wsl

    ¡Ya os dije que era fácil! 🙂

    Si quieres, puedes invitarme a un café xD

    eiximenis
    ESCRITO POR
    eiximenis
    Compulsive Developer