一文了解什么是Nacos?
什么是Nacos
1. Nacos 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 2. Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。 3. Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以服务为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。 4. Nacos 支持几乎所有主流类型的服务的发现、配置和管理。
产品功能
• 服务发现和服务健康监测 • Nacos 支持基于 DNS 和基于 RPC 的服务发现。服务提供者使用 原生SDK、OpenAPI、或一个独立的Agent注册 Service 后,服务消费者可以使用DNS TODO 或HTTP&API查找和发现服务。 • Nacos 提供对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求。Nacos 支持传输层 (PING 或 TCP)和应用层 (如 HTTP、MySQL、用户自定义)的健康检查。 对于复杂的云环境和网络拓扑环境中(如 VPC、边缘网络等)服务的健康检查,Nacos 提供了 agent 上报模式和服务端主动检测2种健康检查模式。Nacos 还提供了统一的健康检查仪表盘,帮助您根据健康状态管理服务的可用性及流量。 • 动态配置服务 • 动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。 • 动态配置消除了配置变更时重新部署应用和服务的需要,让配置管理变得更加高效和敏捷。 • 配置中心化管理让实现无状态服务变得更简单,让服务按需弹性扩展变得更容易。 • Nacos 提供了一个简洁易用的UI帮助您管理所有的服务和应用的配置。Nacos 还提供包括配置版本跟踪、金丝雀发布、一键回滚配置以及客户端配置更新状态跟踪在内的一系列开箱即用的配置管理特性,帮助您更安全地在生产环境中管理配置变更和降低配置变更带来的风险。 • 动态 DNS 服务 • 动态 DNS 服务支持权重路由,让您更容易地实现中间层负载均衡、更灵活的路由策略、流量控制以及数据中心内网的简单DNS解析服务。动态DNS服务还能让您更容易地实现以 DNS 协议为基础的服务发现,以帮助您消除耦合到厂商私有服务发现 API 上的风险。 • Nacos 提供了一些简单的 DNS APIs TODO 帮助您管理服务的关联域名和可用的 IP列表 • 服务及其元数据管理 • Nacos 能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA 以及最首要的 metrics 统计数据。
Nacos部署架构
Nacos2.X版本新增了gRPC的通信方式,因此需要增加2个端口。新增端口是在配置的主端口(server.port,默认8848)基础上,进行一定偏移量自动生成,具体端口内容及偏移量请参考如下:
使用VIP/nginx请求时,需要配置成TCP转发,不能配置http2转发,否则连接会被nginx断开。
对外暴露端口时,只需要暴露主端口(默认8848)和gRPC端口(默认9848),其他端口为服务端之间的通信端口,请勿暴露其他端口,同时建议所有端口均不暴露在公网下。
单机模式 单机模式又称 单机模式主要适合于工程师于本地搭建或于测试环境中搭建Nacos环境,主要用于开发调试及测试使用;也能够兼顾部分对稳定性和可用性要求不高的业务场景。 集群模式 集群模式通过自研一致性协议Distro以及Raft协议,将多个Nacos节点构建成了高可用的Nacos集群。数据将在集群中各个节点进行同步,保证数据的一致性。集群模式具有高可用、高扩展、高并发等优点,确保在故障发生时不影响业务的运行。集群模式默认采用外置数据库进行存储,但也可以通过内置数据库进行存储。 该模式主要适合于生产环境,也是社区最为推荐的部署模式。 多集群模式(TODO) Nacos支持NameServer路由请求模式,通过它您可以设计一个有用的映射规则来控制请求转发到相应的集群,在映射规则中您可以按命名空间或租户等分片请求,主要用于多数据中心场景。Nacos支持三种部署模式
单例模式
, 拥有所有Nacos的功能及特性,具有极易部署、快速启动等优点。但无法与其他节点组成集群,无法在节点或网络故障时提供高可用能力。单机模式同样可以使用内置Derby数据库(默认)和外置数据库进行存储。
本文为要教会原创,欢迎转载分享。转载时请务必在文章页面明显位置提供本文链接并注明出处。感谢您对知识的尊重和对本文的肯定!本文链接网址:https://yaojiaohui.net/gongjuruanjian/1596.html
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。