应用容器化改造难点之:如何选择对外发布服务的方式,Nodeport、Ingress和LoadBalance如何选择?

参与26

7同行回答

lligaolligao网络工程师中国民生银行
也可以直接与负载均衡厂商(如F5)进行集成,不需要另外开发。既能满足容器对灵活性的要求,也能保留F5的传统优势。F5的解决方案包含2个组件,VE(Virtual Edition)和CC(Container Connector)。VE是F5LTM的软件化产品,可以安装在虚拟机上,其功能与硬件设备完全一致。CC是F5的一个开源组件...显示全部

也可以直接与负载均衡厂商(如F5)进行集成,不需要另外开发。既能满足容器对灵活性的要求,也能保留F5的传统优势。
F5的解决方案包含2个组件,VE(Virtual Edition)和CC(Container Connector)。VE是F5LTM的软件化产品,可以安装在虚拟机上,其功能与硬件设备完全一致。CC是F5的一个开源组件,它以容器的形式部署在Kubernetes集群中,通过读取Kubernetes API获取集群内的服务资源并将其转化为VE上的配置。管理员可以为每一个租户部署一组CC,每组CC独立控制VE上的一个对象配置隔离区域(partition),该partition下的资源完全由该组CC独立控制。兼顾了稳定性、灵活性与安全性。该方案中,负载均衡策略的定义提供多种方式,可以使用Ingress,也可以使用ConfigMap。
采用CC+VE技术,利用CC与Kubernetes通过API进行联动,完全适应容器平台对灵活性的要求;另外,配置上采用ConfigMap定义负载均衡策略,架构上采用VE直接对集群中的POD进行负载分发,减少网络层次,提升负载均衡性能;同时,通过将Kubernetes的Namespace与VE的partition一一对应,实现不同容器租户服务资源的隔离。

收起
银行 · 2019-06-18
浏览3388
dean25dean25课题专家组软件架构设计师民生银行
从我们实际使用情况看,三种方式适用于不同场景。Nodeport适用于需要将服务端口注册到服务注册中心,不需要负载均衡的应用,典型的如使用了Spring Cloud服务治理架构的应用,应用和应用之间通过注册到服务中心的IP+端口通信。Ingress适合于对外的微服务较多,需要收敛到统一对外服...显示全部

从我们实际使用情况看,三种方式适用于不同场景。Nodeport适用于需要将服务端口注册到服务注册中心,不需要负载均衡的应用,典型的如使用了Spring Cloud服务治理架构的应用,应用和应用之间通过注册到服务中心的IP+端口通信。Ingress适合于对外的微服务较多,需要收敛到统一对外服务入口的应用,比如有20个微服务,都通过NodePort或者Loadbalance对外服务并不现实,通过Ingress对外提供统一服务入口就变得很有必要了。LoadBalance适用于除上述两种类型应用的其它场景。

收起
银行 · 2019-06-20
浏览3189

问题来自

相关问题

相关资料

问题状态

  • 发布时间:2019-06-17
  • 关注会员:8 人
  • 问题浏览:8150
  • 最近回答:2019-07-20
  • X社区推广