天天看点

Nacos:简单易用的配置管理和服务发现注册中心

作者:漫谈互联网技术

1、简介

nacos是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。我们可以将nacos作为配置中心和注册中心使用。本篇我们主要讲下nacos的安装以及nacos配置管理功能的使用。

2、安装

2.1、下载nacos

访问下面地址,下载自己想要的版本:

https://github.com/alibaba/nacos/releases           

本次我们以nacos-2.1.1版本为例,可访问下列地址直接下载:

https://github.com/alibaba/nacos/releases/download/2.1.1/nacos-server-2.1.1.zip           

将下载后的nacos-server-2.1.1.zip包解压到合适的目录,比如D:\develop\nacos-2.1.1

进入D:\develop\nacos-2.1.1目录,可以看到解压后的结构如下:

bin    --nacos启动、停止相关的命令所在的目录
conf   --nacos启动所需配置文件、数据库脚本所在的目录
target   --nacos-server.jar所在的目录
LICENSE  --使用的开源协议
NOTICE  --一些声明           

2.2、执行数据库脚本

找到conf/nacos-mysql.sql文件,创建nacos数据库,并在该库下执行nacos-mysql.sql脚本,完成nacos服务数据库的初始化。

2.3、修改配置文件

2.3.1、修改application.properties

编辑conf/application.properties文件,放开文件第35、38、41、42和43行的注释,并修改db.url.0、db.user.0和db.password.0配置项的值为上一步中的nacos数据库的连接信息

### If use MySQL as datasource:
spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=123456           

2.3.1、修改cluster.conf

如果需要以集群模式启动nacos,就执行本部分操作,否则可以跳过。进入nacos的conf目录,将cluster.conf.sample复制一份,并重命名为cluster.conf。编辑cluster.conf文件,每行以ip:port的形式配置每个nacos服务的ip和端口信息。(请配置3个或3个以上节点)

# ip:port
192.168.0.100:8848
192.168.0.101:8848
192.168.0.102:8848           

2.4、启动nacos

2.4.1、单机部署

如果我们在本地测试使用,可以只部署单结点的nacos服务,以单机模式启动nacos

(1)Linux平台

进入nacos的bin目录执行下述命令启动nacos

sh startup.sh -m standalone           

如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:

bash startup.sh -m standalone           

(2)Windows平台

进入nacos的bin目录执行下述命令启动nacos

startup.cmd -m standalone           

2.4.2、集群部署

在生产环境,为了保证nacos服务的高可用,我们需要部署nacos集群。至少三个以上的nacos结点才能组成一个集群。同事需要参考2.3.2节完成集群配置文件的修改。

(1)Linux平台

针对每个nacos服务,进入bin目录执行下述命令以集群模式启动nacos

sh startup.sh           

(2)Windows平台

针对每个nacos服务,进入bin目录执行下述命令以集群模式启动nacos

startup.cmd           

2.5、关闭nacos

(1)Linux平台

执行下述命令关闭nacos

sh shutdown.sh           

(2)Windows平台

执行下述命令关闭nacos

shutdown.cmd           

或者直接双击shutdown.cmd关闭

3、使用nacos

3.1、登录nacos服务

如果是本机部署,可以访问下列地址

http://127.0.0.1:8848/nacos           

输入默认的用户名和密码 nacos/nacos,即可登录系统。

如果不是本机部署,可以将127.0.0.1替换为nacos所在服务器的ip。

3.2、新增命名空间

nacos提供命名空间的概念,来帮我们隔离不同环境的配置。我们可以创建名称为dev、test和prod的命名空间,来分别表示开发环境、测试环境和生产环境的配置。nacos默认为我们提供了名为“public”的默认空间,我们先放置不用。

点击左侧"命名空间",新建命名空间如下:

Nacos:简单易用的配置管理和服务发现注册中心

nacos-namespace

3.3、新增配置

点击左侧配置管理下面的“配置列表“,右侧页面的上方就展示了我们已经添加的命名空间,比如public、dev和test。我们先点击某个命名空间,比如dev,然后再点击查询列表最右侧的“+”号,表示我们要在dev命名空间下面添加配置。

Nacos:简单易用的配置管理和服务发现注册中心

image-20230508084907078

Nacos:简单易用的配置管理和服务发现注册中心

nacos-newconfig

其中新建配置页面的表单项说明如下:

表单项 说明
Data ID 配置 ID,建议采用类似 package.class(如com.xk.nacos.springboot)的命名规则保证全局唯一性,class 部分建议是配置的业务含义。全部字符小写。只允许英文字符和 4 种特殊字符("."、":"、"-"、"_"),不超过 256 字节。说白了,只要满足字符的填写要求,名字可以随便起。后面我们将它和spring cloud集成的时候,我们会发现ID的格式就不是这种纯包名的格式。
Group 配置所属的分组,默认是DEFAULT_GROUP。建议填写产品名:模块名(Nacos:Test)保证唯一性,只允许英文字符和4种特殊字符("."、":"、"-"、"_"),不超过128字节。
配置格式 选择配置内容所使用的格式。Nacos支持 YAML、Properties、TEXT、JSON、XML、HTML 等常见配置格式在线编辑、语法高亮、格式校验。
配置内容 根据我们选择的配置格式,在此输入我们业务系统需要的配置项,一般会把一些隐私信息维护在这里,比如数据库连接信息

结束语

觉得有收获的朋友,麻烦点击下“关注”,或者进行分享、收藏,多谢支持~

继续阅读