k8s-周边之-Kube Forwarder

除了可以用nocalhost 映射k8s集群中的服务到本地访问以外,还有一个更好用的工具就是kube-forwarder,推荐使用kube-forwarder,nocalhost主要作用是用于远程调试的。

kube-forwarder作用:实现批量端口转发让本地能方便访问远程Kubernetes服务;

在开发过程中,你很可能在kubernetets集群中部署数据库,而且没有通过kubernetes service暴露服务(例如NodePort、Ingress) Kubectl允许端口转发将这些服务映射到localhost,以便在本地进行交互。这对于一个或两个应用程序是没问题,但当你有多个应用程序时, Kube Forwarder 变得比管理多个终端标签更容易使用。它还可以处理自动重新连接和多集群,如果你需要在开发和qa集群之间切换进行测试,这非常方便。

启动kubefwd后,在本地就能像在Kubernetes集群中一样使用service名字与端口访问对应的应用程序。

使用步骤:

导入指定集群的 kubeconfig 文件即可;

使用起来也很简单,选择需要映射的k8s集群中的某个服务,指定映射的端口,

最后启动,用localhost + 端口就可以访问了;

我的使用场景:

本地利用rancher搭建了一个k8s集群,但是要访问集群中的服务只能在集群的一个虚拟机中(我的虚拟机装的是桌面版,因此会有图形化界面,包括浏览器等)用pod的ip+端口来访问集群中的服务,但是这样是很不方便的,因此还可以有其他办法,

要么配置一个dns服务,或者路由交换机啥的,就是想办法把集群中的ip端口映射出来,可以本地访问。

要么用nocalhost来映射某一个服务,然后本地利用idea启动这个服务在访问。

要么用kube-forwarder,一个专门映射集群中服务的软件,映射到本地,可以用localhost + 端口来访问集群中的服务,需要访问哪些服务都可以做映射。

我是映射了前端的一个nginx镜像服务,和我的主服务,有了这两个就可以跑通我服务的所有功能了,其他的redis啊,kafka,mysql这些,不用的,服务本身是可以在集群内部访问到的。

当然我的集群是部署在本地的,可以这样映射访问,大部分集群都是在测试环境,也可以这样映射出来访问,但是肯能测试环境不需要,因为运维会对集群中的服务映射位域名,利用一个dns的域名解析也可以访问。

参考文章:

官网:Kube Forwarder – Easy to use Kubernetes port forwarding manager

kubefwd/README_CN.md at master · txn2/kubefwd · GitHub

基于图形化Kube Forwarder工具映射OpenShift deployment/svc/pod端口至本机 - 简书

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值