在局域网中的另一台主机如何访问WSL中的MiniKube生成的微服务

这篇具有很好参考价值的文章主要介绍了在局域网中的另一台主机如何访问WSL中的MiniKube生成的微服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

小结

我在WSL(Windows Subsystem for Linux)安装了Minikube中并设置好了Kubernetes环境。在Kubernetes环境中配置好微服务后,从局域网中的另一台主机无法访问WSL中的MiniKube生成的微服务,通过网络转发解决了这个问题。

问题

设置Minikube可参考How to Install Minikube on Ubuntu 22.04 / 20.04,验证在WSL(Windows Subsystem for Linux)是没有任何问题的。

这里有一个问题对后面在局域网中的另一台主机如何访问WSL中的MiniKube生成的微服务造成麻烦,因为这里DOCKER_HOST被设置成了127.0.0.1,本机访问这个回环地址是没有问题,那么在局域网中的另一台主机如何访问呢?

john@LAPTOP-XXYYZZ:~$ minikube docker-env
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://127.0.0.1:53167"
export DOCKER_CERT_PATH="/home/john/.minikube/certs"
export MINIKUBE_ACTIVE_DOCKERD="minikube"

如下路由是无法从另外一台主机访问到的:

john@LAPTOP-XXYYZZ:~$ kubectl get svc
NAME                 TYPE           CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
test-service        LoadBalancer   10.102.81.61   127.0.0.1     80:30699/TCP     19h

这里使用到了Kong和Minikube tunnel

john@LAPTOP-XXYYZZ:~$ kubectl -n kong get service
NAME                      TYPE           CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE
kong-proxy                LoadBalancer   10.109.94.249    127.0.0.1     80:30446/TCP,443:31224/TCP   25h
kong-validation-webhook   ClusterIP      10.104.169.231   <none>        443/TCP                      25h
john@LAPTOP-XXYYZZ:~$ 

使用以下指令启动minikube tunnel

john@LAPTOP-XXYYZZ:~$ minikube tunnel

不知为何,DOCKER_HOST没有设置成eth0, 以下这个eth0地址172.31.170.141可以从本地主机访问,但是每次主机重启后,有可能是因为这个地址是动态变化的。

john@LAPTOP-XXYYZZ:~$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.31.170.141  netmask 255.255.240.0  broadcast 172.31.175.255
        inet6 fe80::215:5dff:fe1b:3ec5  prefixlen 64  scopeid 0x20<link>
        ether 00:15:5d:1b:3e:c5  txqueuelen 1000  (Ethernet)
        RX packets 10497870  bytes 1870201808 (1.8 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 672122  bytes 54296608 (54.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 126517780  bytes 20016489328 (20.0 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 126517780  bytes 20016489328 (20.0 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

解决

参考Stackoverflow: Connecting to WSL2 server via local network [closed]

使用以下两条指令(注意是在Windows中):

netsh advfirewall firewall add rule name="Allowing LAN connections" dir=in action=allow protocol=TCP localport=5000
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=5000 connectaddress=localhost connectport=80

以上第一条指令在本机开通了一个端口5000,这样可以通过局域网中的另一台主机访问这个端口5000。第二条指令,端口5000的流量被转发到WSL中的服务端口80。

也就是,以上test-service这个微服务是在Kubernetes中使用端口80, 在局域网中的另一台主机访问本地主机的5000端口,这个流量就被转发到WSL中的MiniKube生成的微服务的80端口。

参考

https://kubernetes.io: Ingress Controllers
Minikube K8S FAQ
How to Install Minikube on Ubuntu 22.04 / 20.04
Stackoverflow: Connecting to WSL2 server via local network [closed]文章来源地址https://www.toymoban.com/news/detail-660273.html

到了这里,关于在局域网中的另一台主机如何访问WSL中的MiniKube生成的微服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 同一局域网下一台电脑连接另外一台Window系统电脑的虚拟机

    目录 前言 准备工作 虚拟机网络配置 测试同一局域网下一台电脑连接另外一台Window系统电脑的虚拟机 总结 我们先划分连接的电脑为电脑A,被连接的电脑为电脑B,电脑B是Window系统下安装有虚拟机的,而电脑A时带有ssh工具用于连接电脑B的虚拟机的 电脑B通过命令提示符窗口输

    2024年02月04日
    浏览(40)
  • Kali使用Netdiscover探测局域网中存活主机

    1、netdiscover介绍 Netdiscover 是一个主动/被动的ARP 侦查工具。使用Netdiscover工具可以在网络上扫描IP地址,检查在线主机或搜索为它们发送的ARP请求。 2、 主动模式:主动模式顾名思义就是主动的探测发现网络内主机,但是这种方式往往会引起网络管理员的注意。 打开Kali终端,使用

    2024年02月02日
    浏览(54)
  • 局域网内其他主机对VMWare虚拟机访问

    右键点击虚拟机-点击设置进入设置页面 此时用另一台电脑Ping此IP地址,就可以Ping通了。 将网络适配器由桥接改为NAT模式。然后按照以下图片步骤实现桥接。 此处的虚拟机IP地址是获取的当前的虚拟机IP地址。 按照教程下载Xshell并安装,打开Xshell。 新建一个会话如上图所以

    2024年02月05日
    浏览(39)
  • mac如何访问局域网中windows共享文件夹中的文件

    注意:以下回答由newbing生成 在Mac上访问局域网中Windows共享文件夹中的文件,您可以按照以下步骤操作: 在Mac上打开“Finder”,然后在菜单栏中选择“前往”“连接服务器”。 补充:可以在finder图标上右键——连接服务器 在弹出的窗口中,输入smb://,后面跟着Windows计算机的

    2024年02月11日
    浏览(27)
  • windows下查看同局域网其它主机MAC地址命令

    事情是这样的,今天去面试的时候笔试有一道题问到:Windows下使用什么命令来获知同局域网内其他主机的MAC地址。一开始看到感觉很熟悉,但是却答不上来。原来建站这么就,很多使用都要使用ping命令来测试网站的可连接性和速度等等。 但是这样的ping命令并不可以看到一台

    2024年02月05日
    浏览(51)
  • 一台电脑B用网线共享另外一台电脑A的WiFi网络,局域网其它电脑C怎么访问电脑B服务

    电脑A:联想E14笔记本 系统:WIN10 专业版 局域网IP:192.168.14.111 共享IP:192.168.137.1 电脑B:HP 288pro 台式机 Ubuntu20.04 系统:共享IP:192.168.137.180 电脑A正常连接WIFI,电脑B没有WIFI只有,有线网口,共享电脑A的无线网 (还有一种桥接网络不在本次讨论) 一台电脑B用网线共享另外一台

    2024年02月13日
    浏览(40)
  • [路由][问题]OpenWrt解决局域网设备无法通过域名访问主机的问题

    1. 问题描述 测试发现使用OpenWrt进行端口端口转发或者Upnp之后,本地局域网设备使用域名访问主机但是却无法访问。 2. 问题分析 此问题经过查询属于\\\"NAT环回问题\\\",但是OpenWrt在做端口转发时自动设置了NAT环回,,而且已经将WAN口入站数据和转发设置为“接受”但是无效。。

    2024年02月16日
    浏览(50)
  • 局域网内两台主机 IP ping 不通的问题分析

    1、问题背景 同一个局域网内的两台主机互相之间 ping 不通 IP; 或者 A 机器可以 ping 通 B 机器,但是,B 机器 ping 不通 A 机器。 2、原因分析 1)查看两台机器的IP配置的IP是否在同一网段,子网掩码、网关是否一样; 2)检查两台机器的防火墙是否开启。 PS:检查机器的防火墙

    2024年02月01日
    浏览(28)
  • windows 11系统,通过ip地址远程连接连接ubuntu 22.04系统(共同局域网下,另一台主机不需要联网)

    自己搭建了一台ubuntu系统作为深度学习的机器,但是学校的网络问题,一个账号只能同时登录3台设备。通过远程连接工具(如向日葵、todesk等)进行连接的缺点在于,两台设备都需要保持网络通畅。所以,一旦出现登录设备过多,机器自动更新或者校园网络不稳定的情况下,

    2023年04月09日
    浏览(32)
  • 局域网禁止上网软件、局域网上网控制软件、局域网如何限制上网的方法

        有时候,我们处于某种电脑使用的管理,需要禁止电脑上网,防止电脑无节制的上网行为。或者我们需要控制电脑上网行为,限制电脑随意上网的行为,从而规范电脑使用,加强网络管理。     那么,局域网如何禁止电脑上网、如何控制电脑上网行为呢?笔者以为,

    2024年02月08日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包