要使用nacos,需要配置以下环境:
- jdk1.8以及以上版本;
- maven3.2.X 以及以上版本;
nacos的安装和登录
可以参考nacos的官方文档https://nacos.io/zh-cn/docs/quick-start.html进行下载安装nacos
两种安装方式:
- 从 Github 上下载源码方式
- 下载编译后压缩包方式
以第二种方式为例,首先进入到nacos的官方文档
点击最新稳定版,进入到github选择合适的版本进行下载,下载完成后解压即可,然后进入到bin目录,双击startup.cmd进行启动;
启动完成后可以再页面进行访问,本机地址访问http://127.0.0.1:8848/nacos,默认端口为8848;
第一次登陆会要用户名和密码,默认都为nacos;
nacos配置外部数据
当我们把配置信息发布到nacos之后,nacos会把这些信息保存到它内嵌的数据库中,但我们不便于操作这个内嵌的数据库,所以我们需要配置我们自己的数据库;
我们首先要有自己的数据库,版本最好是5.6.5以及以上,新建一个名为nacos_config的数据库;
创建好数据库之后,我们需要创建数据表,nacos给我们提供了数据表,我们只需要将其导入到新建的数据库即可,数据表的位置再nacos解压文件后的conf文件夹下的nacos-mysql.sql文件;
将数据表导入后,我们需要配置一下让nacos以后连接我们自己配置的MySQL;
打开nacos解压文件后的conf文件夹下的application.properties文件,在里面进行配置,将下面的配置即可:
spring.datasource.platform=mysql
db.num=1
db.url.0=数据库连接地址
db.user=数据库用户名
db.password=数据库密码
重启nacos,以后的信息就会存储在我们新建的数据库中;
开始配置nacos作为配置中心
服务端进行配置
每一个配置文件都可以由命名空间(namespace),分组(group),数据id(data id)进行确定;
nacos默认有一个命名空间是public
可以添加新的命名空间
添加完成后就可以再配置管理中看到
然后就可以在此命名空间下进行创建新的配置文件,点击加号开始配置;
data id的命名就是项目名称加上yaml后缀;
group就是分组命名,这个没有具体要求;
配置格式根据自己项目的配置文件格式进行选择,一般都是yaml或者properties;
配置内容就是些项目里面的配置内容,也就是application.yml文件里的内容;
填写完成后点击发布即可;
nacos服务端这边的配置便完成了;
项目里进行配置
首先要在pom文件中添加springcloud nacos的启动器
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>0.2.0.RELEASE</version>
</dependency>
在nacos服务端配置完成后,需要在项目里面进行获取配置,这样以后我们的配置就不再项目里面书写,全部迁移到配置中心;
首先在项目里面添加bootstrap.yml文件,因为bootstrap.yml的启动要比application.yml的启动顺序早,当项目开始启动时先加载bootstrap.yml文件,bootstrap.yml文件会根据配置在它里面的信息到nacos服务端获取项目的配置文件;
最后在bootstrap.yml文件中进行配置
file-extension就是配置文件的后缀;
server-adds就是nacos的配置地址以及端口号;
namespace就是nacos服务端namespace的id;
group就是分组名称;
然后启动项目就可以了;
当命名空间是public,分组是默认分组时,bootstrap.yml中可以不用配置namespace和group;