在 springcloud 体系中我们都知道最简单地使用 RestTemplate 进行服务调用,如果是基于 springboot 和 k8s 构建的微服务呢?
1
vhui Mar 10, 2021
试试 spring-cloud-kubernetes
|
3
dushixiang Mar 10, 2021
功能有重叠,感觉 spring cloud + k8s 存粹是脱裤子放屁多此一举。
看错了,原来是 springboot + k8s,按照 k8s 那一套走即可。 |
4
goodryb Mar 10, 2021
盲猜内部调用走 service clusterip,对外提供服务走 ingress 或者统一的网关服务例如 kong
|
6
puras Mar 10, 2021
内部 ServerName:port 就行了吧
|
7
ldimple OP |
8
javapythongo Mar 11, 2021 via iPhone
@ldimple #7 继续用 fegin,不过要在注解上的 ip 属性写上 servername:port 走 k8s 自己的网络
|
9
pavelpiero Mar 11, 2021
K8S 走内部调用坑蛮多的
比如我司生产环境差不多有 6 套集群 虽然是在两个机房 但是同机房不同集群的机器没法基于服务名调用就很坑 有些跨部门的调用发生了跨集群 就只能走域名 后来为了迭代升级和避免意外的情况最终还是统一全都走域名调用了 |
10
iminto Mar 11, 2021
代码该咋样还咋样啊,只是 eureka 不需要了,springcloud gateway 里 Robin 策略也不需要了,spring-cloud config 也可以考虑替换
|
11
namelosw Mar 11, 2021
想用 Kubernetes 本身最简单的就是直接调 FQDN, 比如 foo.bar.my-namespace.svc.cluster-domain.example 这样, 如果同 cluster 同 namespace 之类的可以省略调后面的几段
|
12
THESDZ Mar 11, 2021
@pavelpiero endpoint 解决集群外部访问问题
|
14
lavvrence Mar 14, 2021
用集群内的 fqdn 域名来进行 RPC 。
|
15
ldimple OP @javapythongo 大佬,可以加微信详细说说吗,我刚入门,连简单的两个 Demo 都跑不起来,用了 feign 和 springcloud k8s
|
16
dandankele Jun 27, 2024
@pavelpiero 走域名具体是咋走的?是内网分配的域名吗?也就是说内部搭建一个跨集群的 dns 服务?还是说走的公网域名,利用公网 dns ?
|