Nacos 是阿里开源的注册中心 + 配置中心服务。
安装
预先配置好JAVA_HOME
下载指定版本
#下载
wget https://github.com//alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
#解压
tar -xvf nacos-server-$version.tar.gz
配置数据库
在0.7版本之前,在单机模式时nacos使用嵌入式数据库(derby)实现数据的存储,不方便观察数据存储的基本情况。
0.7版本增加了支持mysql数据源能力,所以只要使用0.7及以上版本的nacos,便可以==配置mysql数据库,方便查看和维护数据==。
若无需要,可以跳过配置。
初始化数据库:在 conf 目录下,提供了 MySQL 数据库初始化脚本 nacos-mysql.sql。在mysql中创建一个库,并使用该脚本初始化。
配置数据库连接:修改 conf/application.properties 配置文件,在尾部额外增加 MySQL 数据库配置如下:
#集群配置时,改为不同的端口号
#server.port: 8848
# 数据源为 MySQL
spring.datasource.platform=mysql
# 数据源的数量。mysql集群为多个
db.num=1
# 第 0 个数据源的配置
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos-example?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
# 第 1 个数据源的配置
#db.url.1=jdbc:mysql://127.0.0.1:3306/nacos-example?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
# 数据库的账号密码
db.user=root
db.password=
集群配置(单机配置的跳过)
复制多个nacos解压文件,将其中application.properties修改为不同的ip
创建数据库配置
创建文件cluster.conf,配置一个 Nacos 集群的所有节点(不要使用127.0.0.1配置,因为 Nacos 获取的是外部 IP)
# ip:port
192.168.1.11:18848
192.168.1.11:28848
192.168.1.11:38848
更新驱动
使用mysql8,Nacos需要安装最新jdbc驱动
# 创建插件目录
$ mkdir -p plugins/mysql
# 下载 MySQL 8.X JDBC 驱动
$ cd plugins/mysql
$ wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.19/mysql-connector-java-8.0.19.jar
启动、停止
cd nacos/bin
#单机启动,启动完成后,可以查看启动日志 logs/start.out。
sh startup.sh -m standalone
#停止服务
sh shutdown.sh
网页访问
http://127.0.0.1:8848/nacos
帐号:nacos
密码:nacos
curl操作
服务注册
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'
服务发现
curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName'
发布配置
curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=HelloWorld"
获取配置
curl -X GET "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test"