¿Es posible que mi máquina de desarrollo forme parte de la red de Minikube?
Idealmente, debería funcionar en ambos sentidos:
Parece que la primera parte es factible en GCE usando rutas de red, así que me pregunto si es factible localmente usando Minikube.
Hay un problema abierto aguas arriba ( kubernetes/minikube#38 ) para discutir ese caso de uso en particular.
kube-proxy ya agrega las reglas de IPtables necesarias para el reenvío de IP dentro de la VM de minikube (esto no es específico de minikube), por lo que todo lo que tiene que hacer es agregar una ruta estática a la red del contenedor a través de la IP de la interfaz eth1 de minikube en su local. máquina:
ip route add 10.0.0.0/24 via 192.168.42.58 (Linux) route -n add 10.0.0.0/24 192.168.42.58 (macOS) Donde 10.0.0.0/24 es el CIDR de la red del contenedor y 192.168.42.58 es la IP de su minikube VM (obtenida con el comando minikube ip ).
A continuación, puede acceder a los servicios de Kubernetes desde su entorno local utilizando su IP de clúster. Ejemplo:
❯ kubectl get svc -n kube-system kubernetes-dashboard NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes-dashboard 10.0.0.56 <nodes> 80:30000/TCP 35s Esto también le permite resolver nombres en el dominio cluster.local a través del DNS del clúster (complemento kube-dns ):
❯ nslookup kubernetes-dashboard.kube-system.svc.cluster.local 10.0.0.10 Server: 10.0.0.10 Address: 10.0.0.10#53 Name: kubernetes-dashboard.kube-system.svc.cluster.local Address: 10.0.0.56 Si también tiene un dnsmasq local ejecutándose en su máquina local, puede aprovecharlo fácilmente y reenviar todas las solicitudes de DNS para el dominio cluster.local a kube-dns :
server=/cluster.local/10.0.0.10