关于k8s环境下测试用例访问client

Blade 未结 2 850
bluerose
bluerose 剑圣 2021-11-08 21:32

请问我现在是用k8s在开发环境,并且是在云上(非内网环境)。各个服务注册到nacos的ip地址为内部ip(因为k8s是动态分配worker,没办法指定注册ip)。

由此产生一个问题是,我某个服务开发环境有测试用例会调用到其他服务的client,但是这样无法访问到云上内部ip,请问我应该怎么做才能在本地执行这样的测试用例呢?谢谢

2条回答
  • 2021-11-10 01:46

    开发环境理论上是要和生产环境服务完全隔离的,开发机不能通过feign直接调用生产环境的服务,这样会非常不安全。

    我们推荐使用外部接口的形式,用HttpUtil来调用,这个接口需要做多层加密验证来确保安全。

    如果一定要开发机直接操作生产环境的服务,可以通过组局域网来实现,如果有运维大佬,可以找他们帮忙。

    如果没有可以参考这个帖子:https://sns.bladex.cn/article-14994.html

    0 讨论(0)
  • 2021-11-10 10:06

    老大,我就是在开发和测试环境里,没有在生产环境里。

    目前是这样的,我测试环境是在云k8s上,然后每次开发完成后代码合并测试版,自动执行流水线,而流水线有1个执行测试用例的的步骤,然后呢测试用例里会出现feign调用的情况。而k8s的集群是随机分配的内部ip,无法访问,导致测试用例执行失败。由此引发如何访问到k8s的服务接口问题。


    这个问题和blade没啥关系,应该是属于k8s的问题,也就是如何利用k8s部署时,注册到nacos的地址能被外网访问。

    0 讨论(0)
提交回复