Nacos注册中心
入门
1.引入依赖
父工程:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.6.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
客户端:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
2.配置nacos地址
在客户端的application.yml中添加nacos地址:
spring:
cloud:
nacos:
server-addr: localhost:8848
3.服务分级存储模型
一个服务可以有多个实例,例如某个客户端,可以有:
- 127.0.0.1:8081
- 127.0.0.1:8082
- 127.0.0.1:8083
假如这些实例分布于全国各地的不同机房,例如:
- 127.0.0.1:8081,在上海机房
- 127.0.0.1:8082,在上海机房
- 127.0.0.1:8083,在杭州机房
Nacos就将同一机房内的实例 划分为一个集群。
也就是说,该客户端是服务,一个服务可以包含多个集群,如杭州、上海,每个集群下可以有多个实例,形成分级模型
4.配置集群
修改想配置集群的客户端中的application.yml文件,添加集群配置:
spring:
cloud:
nacos:
server-addr: localhost:8848
discovery:
cluster-name: HZ # 集群名称
5.环境隔离
只有在同一namespace中的微服务可以互相访问,默认情况下,所有service、data、group都在同一个namespace,名为public,用户可以手动添加一个namespace,并且配置到微服务中
6.给微服务配置namespace
给微服务配置namespace只能通过修改配置来实现
例:
spring:
cloud:
nacos:
server-addr: localhost:8848
discovery:
cluster-name: HZ
namespace: 492a7d5d-237b-46a1-a99a-fa8e98e4b0f9 # 命名空间,填ID