nacos使用

Posted yjl_2130

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nacos使用相关的知识,希望对你有一定的参考价值。

nacos使用文档

1、默认登录账号 : nacos,密码nacos

2、初始:在命名空间中新建空间

  • 开发环境 :dev
  • 测试环境 :test
  • 生产环境 :prod

3、权限控制:(此步骤 可忽略)

  • 新建用户:(若已存在,则不新建)

    • 开发环境 nacosdev
    • 测试环境 nacostest
    • 生产环境 nacosprod
  • 角色管理:

    • 所有环境统一对用户赋予ADMIN 角色
  • 权限管理:

    • ADMIN用户赋予相应资源路径,例如 开发环境 则赋予dev

4、配置管理

  • 配置列表:相应环境

    • 新增启动配置文件:
      • data-id: 项目名-环境.properties
      • group: 项目名
    • 新增logback配置文件
      • data-id: 项目名-logback-spring.xml
      • group: 项目名

研发使用

5、项目启动配置

bootstrap.properties

spring.application.name=项目名
spring.main.allow-bean-definition-overriding=true
spring.profiles.active=环境:dev/test/prod
spring.cloud.nacos.config.server-addr=$nacos.path
spring.cloud.nacos.config.namespace= nacos对应namespace例:893c7b84-1b98-43e5-a937-55f293302054
spring.cloud.nacos.config.file-extension=properties
spring.cloud.nacos.config.group=分组
spring.cloud.nacos.config.enabled=true
spring.cloud.nacos.discovery.server-addr=$nacos.path
spring.cloud.nacos.discovery.namespace=nacos对应namespace例:893c7b84-1b98-43e5-a937-55f293302054
spring.cloud.nacos.discovery.enabled=true
nacos.path=swnacos.swjoy.com(nacos地址)
nacos.xml.dataId= xml名称 例如:cps-logback-spring.xml
logging.config=https://$nacos.path/nacos/v1/cs/configs?group=$spring.cloud.nacos.config.group&tenant=$spring.cloud.nacos.config.namespace&dataId=$nacos.xml.dataId

# PS:
#配置文件名组装默认为:$spring.application.name+$spring.profiles.active+$spring.cloud.nacos.config.file-extension 例如:cps-web-test.properties
# $nacos.path 如果是域名代理需要加80端口 例 swnacos.swjoy.com:80

6 、pom文件新增

  <!--此处可能存在jar包冲突,请注意处理-->    
<properties>
        <springboot.version>2.3.4.RELEASE</springboot.version>
        <cloud.nacos.version>2.2.5.RELEASE</cloud.nacos.version>
       <!--springboot 版本为2.1.x  cloud-nacos版本请使用2.1.2--2.2.0-->
    </properties>
 <dependencies>
     	<dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>$cloud.nacos.version</version>
            <exclusions>
                <exclusion>
                    <groupId>com.alibaba.nacos</groupId>
                    <artifactId>nacos-client</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>$cloud.nacos.version</version>
      </dependency>
</dependencies>

7、启动类修改

@SpringBootApplication
@EnableDiscoveryClient
public class Application 

    public static void main(String[] args) 
        //关闭nacos默认日志
        System.setProperty("nacos.logging.default.config.enabled","false");
        SpringApplication.run(Application.class, args);
    


8、动态刷新

nacos配置动态刷新,使用@RefreshScope和@Value注解, 在注入spring容器中时 添加在对应的类上
示例:

@RefreshScope
@Configuration
public class DruidDBConfig 

	
	@Value("$spring.datasource.url")
	private String dbUrl;

	@Value("$spring.datasource.username")
	private String username;

	@Value("$spring.datasource.password")
	private String password;

	@Bean
	@RefreshScope
	public DataSource dataSource() 
		DruidDataSource datasource = new DruidDataSource();
		datasource.setUrl(dbUrl);
		datasource.setUsername(username);
		datasource.setPassword(password);
		return datasource;

9、处理客户端频繁打印日志

#提高nacos日志打印级别,减少客户端nacos日志打印
logging.level.com.alibaba.nacos=warn
#指定到具体文件
#logging.level.com.alibaba.nacos.client.naming=warn

以上是关于nacos使用的主要内容,如果未能解决你的问题,请参考以下文章

Nacos配置中心使用

nacos 使用记

SpringCloud使用Nacos服务发现实现远程调用

Nacos系列:Nacos的Java SDK使用

使用nacos配置中心后启动微服务连接不上nacos的问题

SpringCloudAlibaba之nacos服务注册中心使用