1. 首页
  2. > 香港公司注册 >

集群的服务发现是什么意思(单站集群服务什么意思)

上节在K8S集群中部署了意思Nacos集群,并将Nacos的Web控制台和API以Ingress (nacos.youcomany.com)的形式暴露到了k8s集群外部,便于从外部测试和访问。 这里再次强调Nacos被设计为一个在IDC内部使用的应用组是什么件,而非面向公网环境的产品,因此需要在内部隔离网络中使用,这里为了测试将其暴露到K8S集群外部,如果是生产环境必须是什么做好网络安全策略。


常见的服务注册有三种实现方式:


  1. 服务进程内直接包含服务注册模块。即把服务注册的功能写到了服务的源代码中,由服务实例自己完成上线注册和下线注销。这种方式对客户端要求比较高,尤其是众多服务采用不同的语言开发的时候
  2. 由一个伙伴进程(SideCar)来帮助处理服务注册
  3. 由一个中间的调度者来帮助处理服务注册

1.2 服务发现

服务发现: 即服务客户端在其网络上找到其要调用服务的具体连接信息的过程。例如通过查询服务注册中心得到其所调用服务的具体 IP地址和端口。 简单的说,服务发现就是服务或者应用之间互相定位的过程。


使用服务发现后,客户端对服务的调用不再和具体的服务实例地址耦合,而是基于服的务发现机制。有以下4种常见的服务发现机制:


  1. 静态配置: 这种实现基本上不的用考虑,为了实现服务的高可用需要手动维护服务实例副本的列表,显然不适合微服务架构下众多的服务以及服务治理的自动化需求。
  2. 服务端负载均衡器: 由服务端的负载均衡器通过服务注册中心中的服务实例信息,动态生成或更新负载均衡和代理配置,一般服务注册中心会在服务上线注册、下线注销、失效剔除时推送信息给服务端负载均衡器。这种方式实际上发现是在服务端实现的服务发现。
  3. 客户端负载均衡器: 由客户端的负载均衡器通过服务注册中心中服务实例信息意思, 动态生成或更新负载均衡和代什么理配置。这种方式是在客户端即服务调用方端实现的服务发现。
  4. 客户端集成服务发集群现: 一般以SDK的形式集成到客户端进程内

2.K8S中的服务注册和发现

K8S中的一个Service资源对象对应微服务。每个Service有唯一的名字,一个ClusterIP,一个端口。 K8S中的Pod资源对象中运行的容器对应服务实例,通过Pod上的标签Label和Service上单站定义的标签选择器Label Selector将Service与Pod关联,通过Service内建的负载均衡机制,对Service的调用将转发到Pod的容器中。 K8S中的服务注册是在Pod创建时由调度者Kubernet服务e单站s完成的。K什么8S中的服务发现采用的是服务端负载均衡器,服务注册中心为Kubernetes(后端持久化存储etcd)。


3.Spring Cloud中的服务注册和发现

Spri服务ng Cloud对微服务提供了完整的解决方案和统一抽象,按照微服务的功能特性: 服务治理、负载均衡、服务间调用通信、服务配置中心、服务网关、分布式链路追踪、消息总线、消息时间驱动、分布式事务等,提供了一系列组件,被称为Spring Cloud全家桶。 全家桶中的功能组件还支持使用第三方实现的某个组件单独替换,只要第三方组件是遵循Spring Cloud Common的抽象实现的。


Spring Cloud在服务治理的组件上有以下三种选择:


Nacos是Spring Cloud Aliba发现ba提供的服务发现和配置管理的解决方案。Nacos是用Java开发的,通过Spring Cloud Alibaba可以很好的与Spring Cloud整合。 如集群果项目的所有微服务都是用Java开发的,那么使用Nacos作为服务发现可能会使一个不错的选择。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至123456@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息