Nacos下载与安装

2年前 (2022) 程序员胖胖胖虎阿
325 0 0

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

下面就来安装Nacos并整合Nacos注册中心、配置中心

版本说明

Nacos下载与安装

下载

nacos下载地址:https://github.com/alibaba/nacos/releases

安装

  • 解压安装包
  • 打开配置文件(nacos安装目录 -> conf -> application.properties)
  • 修改数据源配置
    Nacos下载与安装
  • 在数据库中执行sql文件(nacos安装目录 -> conf -> nacos-mysql.sql)
  • 在nacos安装目录下的bin目录中运行命令,默认是集群模式启动,单机模式启动需要指定模式
startup.cmd -m standalone

通过修改nacos.core.auth.enabled为true,就可以开启nacos认证。开启后客户端必须配置username、password

集群环境搭建

  • 将安装包复制多份
  • 配置数据源、伪集群需要配置端口
  • 将cluster.conf.example复制一份重命名cluster.conf(配置文件目录:nacos安装目录 -> conf)
  • 打开配置文件cluster.conf
  • 配置每个nacos服务的IP和端口
    Nacos下载与安装
  • 配置完成后启动nacos
startup.cmd -m cluster

Springcloud整合Nacos注册中心

  • 添加Maven依赖
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
  • 添加application.yml配置
spring:
  cloud:
    nacos:
      discovery:
		service: nacos-discovery # 默认取的是应用程序名称spring.application.name,配置了service就以service的值为准
		
        # 配置Nacos服务连接地址
        server-addr: localhost:8848

        # 配置服务所在命名空间,默认为public
        namespace: public

        # 配置服务所在组,默认的就是DEFAULT_GROUP
        group: DEFAULT_GROUP # 不支持不同分组的服务之间的调用
		
		# 开启nacos认证后需要配置用户名和密码
		username: nacos # 用户名 
		password: nacos # 密码
  • 在SpringBoot启动类添加@EnableDiscoveryClient注解
/**
 - @ClassName NacosApplication 
 - @Description
 - @Author tigerkin
 - @Date 2022/3/2 15:51
 */
@SpringBootApplication
@EnableDiscoveryClient
public class NacosApplication {

    public static void main(String[] args) {
        SpringApplication.run(NacosApplication.class, args);
    }
}
  • 启动Springboot项目,服务就注册到Nacos了。

nacos注册中心官方文档:https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-discovery

服务调用

可以通过以下两种方式进行服务调用

  • RestTemplate
  • Feign

Springcloud整合Nacos配置中心

  • 添加Maven依赖
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

<!-- SpringCloud 2020.1已经去掉了Bootstrap,需要额外添加依赖 spring-cloud-starter-bootstrap -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
  • 添加bootstrap.yml配置
spring:
  application:
  	name: nacos-config # 应用程序名称
  cloud:
    nacos:
      config:
        server-addr: localhost:8848
        namespace: public
        group: DEFAULt_GROUP
        # 配置文件扩展名,默认是通过内部相关规则(应用程序名称、扩展名 )自动生成相关的 Data Id 配置。
        # 自动生成的data-id为nacos-config.yaml
        file-extension: yaml 
		
		# 开启nacos认证后需要配置用户名和密码
		username: nacos # 用户名 
		password: nacos # 密码
		
		# 扩展配置:是一个数组,可以有多个
        extension-configs:
          # nacos配置中心配置dataId时最好加上文件名后缀
          # 如果不加后缀,在扩展配置和共享配置读取配置时会出现以前两种情况:
          # 1、在下方dataId中不加后缀读取配置时会默认以properties读取,如果文件是properties则没有问题,如果不是那么配置就读取不到了。
          # 2、在下方dataId中加上后缀那么在nacos配置中心就找不到对应dataId的配置。
          # 注:最好是nacos配置中心和代码中配置的dataId是带有后缀且是一致的。避免踩坑!!!!!!!!!!!!!
          - dataId: nacos-user-server.yaml
            group: USER_GROUP
            refresh: true

        # 共享配置:是一个数组,可以有多个,配置方式与扩展配置一模一样
        # 配置优先级:shared-configs < extension-configs < 默认
        # shared-configs:
  • 配置完成项目就可以读取nacos配置中的配置了

通过注解@Value可以赋值nacos中的配置,在类上添加注解@RefreshScope,修改nacos中配置,通过注解注入的值就会实时刷新。
Nacos下载与安装

nacos配置中心官方文档:https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config

版权声明:程序员胖胖胖虎阿 发表于 2022年10月11日 上午7:48。
转载请注明:Nacos下载与安装 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...