转载

Nacos系列(一):Nacos环境安装及Hello World示例

现在微服务架构越来越火,微服务架构中比较重要的一项就是 配置中心

Nacos是阿里巴巴的一个开源项目,它的其中一个功能就是可以作为配置中心,实现配置的动态变更、历史版本对比、配置回滚等功能。

更多的描述细节请查看官网: nacos.io/zh-cn/ 。

本篇博客主要讲解以下内容:

  1. Nacos环境安装(Windows&Linux)
  2. Spring Boot项目接入Nacos配置中心
  3. 初识Nacos控制台

1. Nacos环境安装(Windows)

下载地址: github.com/alibaba/nac… 。

下载官方推荐的稳定版本1.1.4:

Nacos系列(一):Nacos环境安装及Hello World示例

下载完成后将其解压到你需要的目录,我这里解压到了D:/Tools/nacos,解压完成后目录如下图所示:

Nacos系列(一):Nacos环境安装及Hello World示例

打开bin文件夹,双击运行startup.cmd即可启动Nacos服务端。

Nacos系列(一):Nacos环境安装及Hello World示例

启动时会看到下图所示的界面:

Nacos系列(一):Nacos环境安装及Hello World示例
Nacos系列(一):Nacos环境安装及Hello World示例

启动成功后,会发现根目录下自动创建了2个文件夹,如下图所示:

Nacos系列(一):Nacos环境安装及Hello World示例

bin文件夹下自动创建了2个文件夹和1个文件,如下图所示:

Nacos系列(一):Nacos环境安装及Hello World示例

如果需要停止Nacos服务端,有以下2种方式可以选择:

  1. 将刚刚运行时打开的cmd窗口关闭

  2. 双击运行bin文件夹下的shutdown.cmd

    Nacos系列(一):Nacos环境安装及Hello World示例

2. Nacos环境安装(Linux)

将上面下载的zip压缩包上传到Linux服务器,我这里上传到了我的阿里云服务器的 /usr/local 目录下:

Nacos系列(一):Nacos环境安装及Hello World示例

然后执行如下命令进行解压:

cd /usr/local

unzip nacos-server-1.1.4.zip
复制代码
Nacos系列(一):Nacos环境安装及Hello World示例
Nacos系列(一):Nacos环境安装及Hello World示例

然后执行如下命令启动Nacos服务端,如下所示:

cd nacos/bin

sh startup.sh -m standalone
复制代码
Nacos系列(一):Nacos环境安装及Hello World示例

如果需要停止Nacos服务端,可以执行如下命令:

sh shutdown.sh
复制代码
Nacos系列(一):Nacos环境安装及Hello World示例

3. Spring Boot项目接入Nacos配置中心

首先,需要在pom.xml文件中引入以下依赖:

<dependency>
   <groupId>com.alibaba.boot</groupId>
   <artifactId>nacos-config-spring-boot-starter</artifactId>
   <version>0.2.3</version>
</dependency>
复制代码

然后在 application.yml 中添加Nacos Server的地址:

nacos:
  config:
    server-addr: 127.0.0.1:8848
复制代码

如果你使用的是 application.properties 配置文件,按如下格式添加:

nacos.config.server-addr=127.0.0.1:8848
复制代码

然后在启动类上添加 @NacosPropertySource 注解, dataId 先使用示例的example, autoRefreshed 设置为ture,开启自动刷新:

Nacos系列(一):Nacos环境安装及Hello World示例

然后新建控制器ConfigController,并使用@NacosValue注解设置属性值,并开启自动刷新:

package com.zwwhnly.springbootaction.controller;

import com.alibaba.nacos.api.config.annotation.NacosValue;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("config")
public class ConfigController {

    @NacosValue(value = "${useLocalCache:false}", autoRefreshed = true)
    private boolean useLocalCache;

    @RequestMapping(value = "/get", method = RequestMethod.GET)
    public boolean get() {
        return useLocalCache;
    }
}
复制代码

运行项目,访问地址: http://localhost:8080/config/get,此时返回false,如下图所示:

Nacos系列(一):Nacos环境安装及Hello World示例

打开cmd窗口,执行如下命令,将useLocalCache的值设置为true:

curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=example&group=DEFAULT_GROUP&content=useLocalCache=true"
复制代码
Nacos系列(一):Nacos环境安装及Hello World示例

再次访问地址: http://localhost:8080/config/get,此时返回true,如下图所示:

Nacos系列(一):Nacos环境安装及Hello World示例

不用重启应用程序,配置就动态变更了,是不是很方便呢。

4. 初识Nacos控制台

Nacos Server启动后,可以通过地址: http://localhost:8848/nacos/index.html,访问它的控制台。

默认会跳转到以下登录页面,默认的账号和密码为:nacos nacos。

Nacos系列(一):Nacos环境安装及Hello World示例

登录成功后,可以在配置管理--配置列表界面,看到我们使用的dataId,也可以查看该dataId的配置详情:

Nacos系列(一):Nacos环境安装及Hello World示例
Nacos系列(一):Nacos环境安装及Hello World示例

如果想要访问阿里云服务器上部署的Nacos控制台,需要在ECS服务器的安全组规则里添加如下配置,不然访问不了:

Nacos系列(一):Nacos环境安装及Hello World示例
原文  https://juejin.im/post/5eb8af725188256d4d1d5e26
正文到此结束
Loading...