欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos

  • 本文是《Spring Cloud Alibaba实战系列》的第三篇文章,本章我们一起来快速体验Naocs的动态配置服务;

关于Nacos的动态配置服务

  • 动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置,Nacos 提供了一个简洁易用的UI 帮助您管理所有的服务和应用的配置。

环境

  • 本次实战的环境和版本信息如下,您需要准备好docker和docker-compose:
  1. 操作系统:CentOS Linux release 7.6.1810
  2. Docker:1.13.1, build b2f74b2/1.13.1
  3. docker-compose:1.24.1, build 4667896
  • 环境准备好了就可以开始体验Nacos的配置服务了

体验内容简介

  1. 本次体验部署两个应用:Naocs server和名为config-demo的应用,该应用提供一个web接口,返回内容来自从Nacos获取的配置文件;
  2. 先不在Naocs上配置任何信息,调用config-demo的web接口返回的是代码中写的默认值;
  3. 在Naocs上增加一个配置项,让config-demo能读取到该配置,再调用此web接口时返回的就是Naocs的配置项的内容;
  4. 在Nacos上修改配置项的值,再次访问config-demo的web接口,看刚才修改的配置项能否在config-demo上立即生效;

极速体验

  • 执行以下命令即可完成部署,包括Nacos server、从Nacos获取配置的demo应用:
wget https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/config/docker-compose.yml && \
docker-compose up -d
  • 控制台提示如下所示,docker-compose.yml文件下载成功后顺利启动里面编排的容器:nacos和config-demo:
[root@maven 18]# wget https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/config/docker-compose.yml && \
> docker-compose up -d
--2019-08-18 23:30:08--  https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/config/docker-compose.yml
正在解析主机 raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...
正在连接 raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:343 [text/plain]
正在保存至: “docker-compose.yml”

100%[==============================================================================>] 343         --.-K/s 用时 0s      

2019-08-18 23:30:09 (64.6 MB/s) - 已保存 “docker-compose.yml” [343/343])

Creating network "18_default" with the default driver
Creating nacos ... done
Creating config-demo ... done
[root@maven 18]# docker ps
CONTAINER ID        IMAGE                                        COMMAND                  CREATED             STATUS              PORTS                    NAMES
f2b9d7358482        bolingcavalry/nacosconfigdemo:1.0-SNAPSHOT   "java -Xms1g -Xmx1..."   7 seconds ago       Up 7 seconds        0.0.0.0:8080->8080/tcp   config-demo
65487f271bc6        bolingcavalry/nacosserver:0.0.1              "/docker-entrypoin..."   8 seconds ago       Up 7 seconds        0.0.0.0:8848->8848/tcp   nacos
  • 我这里宿主机的IP是192.168.121.131,因此通过该地址访问config-demo的web接口:http://192.168.121.131:8080/test ,返回内容如下图所示, desc from code 是程序获取不到Nacos配置时返回的默认值: 在这里插入图片描述

  • 接下来登录Nacos的web页面,创建config-demo所需的配置项,地址是:http://192.168.121.131:8848/nacos ,用户名和密码都是 nacos

  • 如下图,新增一个配置项: 在这里插入图片描述

  • 接下来进入一个表单页面,要填写的每个字段内容如下所示:

字段名称 字段值
Data ID my-nacos-config.yaml
Group BOLING_CAVALRY
配置格式 YAML
  • 最后一个字段是 配置内容 ,值如下:
bolingcavalry:
  desc: desc from nacos yaml config
  • 整个表单的内如下图所示: 在这里插入图片描述

  • 点击右下角的 发布 按钮提交表单,即可创建一个新的配置: 在这里插入图片描述

  • 再次访问config-demo的web接口,返回的内容如下图,正是我们刚才在Nacos上配置的,表明应用已成功从Nacos上获取到配置: 在这里插入图片描述

  • 再修改一下配置,看看应用能否立即获取到新的配置数据,在配置列表中找到刚刚新增的配置,点击下图红框2中的"编辑"按钮: 在这里插入图片描述

  • 修改下图红框中的内容,我这里是在末尾加了个 ** v2** ,修改完毕后点击右下角的 发布 按钮,使得配置生效: 在这里插入图片描述

  • 再次访问config-demo的web接口,返回的内容已经带有 ** v2** ,如下图,表明刚才修改的配置已立即被应用获取: 在这里插入图片描述 至此,Nacos的配置中心服务体验完成,我们对该服务已经有了基本的认识了解,接下来的文章我们会一起学习config-demo的开发过程,了解使用Nacos配置服务的细节。

欢迎关注51CTO博客:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...