V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
tempog
V2EX  ›  Java

请教开发环境 k8s 与 feign 使用之间的问题

  •  
  •   tempog · 2020-10-10 21:10:09 +08:00 · 2531 次点击
    这是一个创建于 1530 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我司主要开发小型项目,现在项目越接越多,所以部门搞了套 k8s 来做 dev 环境统一管理这些项目。
    现在有个 spring cloud 的小项目,k8s 搞了个命名空间来管理,集群内部跑是没问题的。
    但是我们基本一个人是负责一块微服务,就想要搞成只用启动自己的微服务,就可以开发 debug 的开发模式。
    所以现在是把微服务的 Service 都设置成 nodeport 的模式,把端口对外暴露,然后本地修改 feign 的 url 指定 ip 和端口去做跨服务调用。
    因为我们都不是专业的,是开发、测试兼职拍脑袋想出来的方案。想问是否有更好的解决方案?大家都是怎么处理的?

    10 条回复    2020-10-13 19:13:58 +08:00
    gaius
        1
    gaius  
       2020-10-10 23:00:10 +08:00 via Android
    生产也用 k8s 就没毛病啊
    jeffreystoke
        2
    jeffreystoke  
       2020-10-10 23:07:13 +08:00 via Android
    如果在同一内网,没有多个广播域的话可以考虑套个 L2 metallb,给不同 service 分配独立固定的 loadbalancerIP 和 port,这样内网直接访问这些虚拟 IP (由 metallb 通告 arp )或者用路由器加几条 host 指向这些 IP
    jeffreystoke
        3
    jeffreystoke  
       2020-10-10 23:12:45 +08:00 via Android
    如果有多个广播域的话,可以考虑用 metallb 的 bgp 模式,或者可以考虑我之前帖子里的方案,不过我还没做过实践

    https://www.v2ex.com/t/712649
    kennylam777
        4
    kennylam777  
       2020-10-10 23:41:58 +08:00
    MetalLB + 1,L2 方案直接佔用內網 IP 段就好
    bluehtt
        5
    bluehtt  
       2020-10-11 08:56:05 +08:00 via iPhone
    @jeffreystoke #2 请问要实现你这个方案是不是要把网络换成 calico ?虚心求教。
    我的情况和问题描述的一致,为了管理方便,自己在开发和测试部署了 k8s 然后自己维护。
    bluehtt
        6
    bluehtt  
       2020-10-11 09:00:15 +08:00
    @tempog 我直接给项目配了 ingress,因为我担心 nodeport 的端口冲突
    jeffreystoke
        7
    jeffreystoke  
       2020-10-11 11:02:29 +08:00 via Android   ❤️ 1
    @bluehtt 第二个方案是的,也可以考虑 kube-router 替代 calico,还要一台支持 BGP 的路由器。不过开发和测试环境一般 metallb L2 就够用了,不需要换网络插件,看你已经设置了 ingress,应该是已经配好了吧。
    bluehtt
        8
    bluehtt  
       2020-10-11 11:12:09 +08:00
    @jeffreystoke #7 了解,非常感谢。
    buliugu
        9
    buliugu  
       2020-10-11 15:07:09 +08:00
    讲个邪道方法,openvpn
    tempog
        10
    tempog  
    OP
       2020-10-13 19:13:58 +08:00
    @jeffreystoke
    @kennylam777
    @bluehtt
    感谢各位,我对 k8s 了解不是很深,没看太懂这方案 m(||_ _)m 。我研究几天看看具体要怎么操作。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1025 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 20:05 · PVG 04:05 · LAX 12:05 · JFK 15:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.