一、什么是Nacos?
Nacos(Naming Configuration Sevice)是阿里开源的一个注册中心和配置中心
二、nacos安装和启动
1、下载
https://github.com/alibaba/nacos/releases/tag
选择相应版本下载
2、Linux安装
先将文件上传到指定目录下
cd /usr/upload
tar -zxvf nacos-server-1.4.1.tar.gz -C /usr/local
3、启动和关闭
启动: cd /usr/local/nacos/bin
./startup.sh -m standalone 以单机状态启动
关闭: cd /usr/local/nacos/bin
./shutdown.sh
三、nacos注册中心(存服务的ip和port) 入门案例
1、服务提供者:
nacos_provider
1.pom.xml
spring-boot-starter-web、spring-cloud-starter-alibaba-nacos-discovery、
springcloud_common(存放pojo类)
2.application.yml
server:
port: 8090
spring:
cloud:
nacos:
discovery:
server-addr: 192.168.21.130:8848 #Nacos的ip地址和端口号
application:
name: nacos-provider #注册到Nacos的服务名称
3、启动类注解
@SpringBootApplication
@EnableDiscoveryClient
2、服务消费者:
nacos_consumer
1.pom.xml
spring-boot-starter-web、spring-cloud-starter-alibaba-nacos-discovery、
springcloud_common(存放pojo类)
2.application.yml
server:
port: 80
spring:
cloud:
nacos:
discovery:
server-addr: 192.168.21.130:8848
application:
name: nacos-consumer
3、启动类注解
@SpringBootApplication
@EnableDiscoveryClient
四、nacos配置中心(存放配置文件)
1、创建工程:nacos_config
1.pom.xml
spring-boot-starter-web、nacos-config、nacos-discovery
2.配置文件bootstrap.yml
spring:
cloud:
nacos:
config:
server-addr: 192.168.204.129:8848 #nacos地址
file-extension: yaml #后缀名,只支持 properties 和 yaml 类型
prefix: nacos-config #文件名,如果没有配置则默认为 ${spring.appliction.name}
3.启动类注解
@SpringBootApplication @EnableDiscoveryClient
4.controller注解
@RestController
@RefreshScope //重新获得对象
2、在nacos中创建配置文件
1.“配置管理”-->“配置列表”---->“+”
2.新增配置文件 Data ID:prefix.file-extension 前缀.扩展名
配置格式:yaml
配置内容:
server:
port: 80
spring:
cloud:
nacos:
discovery:
server-addr: 192.168.204.129:8848
application:
name: nacos-config
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/health?characterEncoding=UTF-8
username: root
password: 1111
type: com.alibaba.druid.pool.DruidDataSource
3、配置隔离
namespace ------------------- 环境:dev、test
group ------------------- 项目名:xx医疗系统、yy物流系统
Dat Id ------------------- 工程名:配置文件名
五、持久化
1.切换数据库
修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql,版本要求:5.6.5+)
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.31.19:3306/nacos?characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=1111
2.建库建表
创建nacos数据库并导入sql
1.创建nacos库
2.找到conf/nacos-mysql.sql并执行
3、测试
重启nacos,上传配置文件,测试是否把配置文件持久化到mysql