概述
一个更易于构建云原生应用的动态服务发现(所有的微服务都注册到nacos中,微服务通过nacos服务中心进行服务发现)、配置管理(主要将公共的服务配置(如连接redis、mysql)在一个配置文件中,可进行共享)和服务管理(提供一个可视化界面 动态管理服务、配置等功能) 平台
主要目的:
管理所有微服务、解决微服务之间调用关系错综复杂,难以维护的关系
使用方式
1.安装服务端
第1步: 安装nacos
下载地址: https://github.com/alibaba/nacos/releases
下载zip格式的安装包,然后进行解压缩操作
第2步: 启动nacos
#切换目录
cd nacos/bin #命令启动
startup.cmd -m standalone
第3步: 访问nacos
打开浏览器输入http://localhost:8848/nacos,即可访问服务, 默认密码是nacos/nacos
2.配置客户端:
1) 在需要注册到nacos中的pom.xml中添加nacos的依赖
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
2) 在springBoot启动类上添加@EnableDiscoveryClient注解
@SpringBootApplication @EnableDiscoveryClient
3)在application.yml中添加nacos服务的地址
启动服务控制面板中是否有微服务
Nacos的关键特性
服务发现和服务健康监测
Nacos 支持基于 DNS 和基于 RPC 的服务发现
Nacos 提供对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求。
动态配置服务
动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。
动态配置消除了配置变更时重新部署应用和服务的需要,让配置管理变得更加高效和敏捷。
配置中心化管理让实现无状态服务变得更简单,让服务按需弹性扩展变得更容易
动态 DNS 服务
动态 DNS 服务支持权重路由,让您更容易地实现中间层负载均衡、更灵活的路由策略、流量控制以及数据中心内网的简单DNS解析服务。动态DNS服务还能让您更容易地实现以 DNS 协议为基础的服务发现,以帮助您消除耦合到厂商私有服务发现 API 上的风险。
服务及其元数据管理
Nacos 能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA 以及最首要的 metrics 统计数据。