1 我们现在怎么做的

基于docker容器技术,我们K8s进行容器编排和调度管理。利用ingress controller进行负载均衡,主要是nginx。

最早以前,我们自己实现的服务发现,是新增的服务去报活,发送消息,nginx接受到消息后更新配置文件,后来我们利用consul去实现服务发现。

现在ingress controller帮我们实现了负载均衡和动态服务发现。负责监听pod资源变化。

Ingress controller 通过不断地与 kube-apiserver 打交道,实时的感知后端 service、pod 的变化,当得到这些变化信息后,Ingress controller 再结合 Ingress 的配置,更新反向代理负载均衡器,达到服务发现的作用。其实这点和服务发现工具 consul consul-template 非常类似

2 Service mesh怎么做

 

  • Service mesh 其实把服务之前的通讯层剥离处理,我们只是负责处理业务逻辑
  • Hytrix类似这种lib在处理服务降级之类的任务时,如果服务语言不同,无法使用 
  • 如果服务数量巨大,servcie mesh可以通过面板统一管理,调度
  • Hytrix可以参考这个文章的具体demo https://blog.csdn.net/JinXYan/article/details/90598216
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐