gpt4 book ai didi

networking - 开发机器作为 Minikube 网络的一部分?

转载 作者:IT老高 更新时间:2023-10-28 21:22:18 27 4
gpt4 key购买 nike

是否可以让我的开发机器成为 Minikube 网络的一部分?

理想情况下,它应该双向工作:

  • 在我的 IDE 中开发应用程序时,我可以使用与 pod 相同的地址访问 Minikube 中的 k8s 资源。
  • 在 Minikube 中运行的 Pod 可以访问我在 IDE 中运行的应用程序,例如通过 HTTP 请求。

This听起来第一部分在 GCE 上使用网络路由是可行的,所以我想知道在本地使用 Minikube 是否可行。

最佳答案

为了讨论该特定用例,上游存在一个问题 (kubernetes/minikube#38)。

kube-proxy 已经在 minikube 虚拟机中添加了 IP 转发所需的 IPtables 规则(这不是 minikube 特有的),所以您所要做的就是添加通过本地机器上 minikube 的 eth1 接口(interface)的 IP 到容器网络的静态路由:

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)

其中 10.0.0.0/24 是容器网络 CIDR,192.168.42.58 是你的 minikube VM 的 IP(通过 minikube ip命令)。

然后,您可以使用集群 IP 从本地环境访问 Kubernetes 服务。示例:

❯ 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

kubedash

这还允许您通过集群 DNS(kube-dns 插件)解析 cluster.local 域中的名称:

❯ 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

如果您还碰巧在本地计算机上运行了本地 dnsmasq,您可以轻松利用这一点并将 cluster.local 域的所有 DNS 请求转发到kube-dns:

server=/cluster.local/10.0.0.10

关于networking - 开发机器作为 Minikube 网络的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42652781/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com