• Nacos部署及使用


    下载

    官方下载
    在这里插入图片描述

    部署

    单机

    192.168.1.10本章内容均使用此台服务器,以安装MySQL。
    将下载的文件上传到/usr/local/nacos文件下

    mkdir /usr/local/nacos   # 创建nacos文件夹,将上面下载的文件上传到此处
    cd /usr/local/nacos      # 进入文件
    tar -zxvf nacos-server-2.1.0.tar.gz   # 解压文件
    cd nacos/conf/   # 进入解压后的conf文件中
    
    • 1
    • 2
    • 3
    • 4

    进入文件后将nacos-mysql.sql文件保存下来或者复制一份,进入到MySQL中

    create database nacos_mysql;    # 创建数据库
    use nacos_mysql;    # 进入到此数据库
    source /usr/local/weekeight/nacos/nacos/conf/nacos-mysql.sql;  # 执行sql文件,路径根据自己的文件所在绝对路径
    create user 'nacos'@'%' identified by 'nacos';   # 创建用户
    grant all on nacos_mysql.* to 'nacos'@'%';   # 分配权限
    flush privileges;   # 刷新
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    Linux控制台

    cd /usr/local/nacos/nacos/conf/   # 进入到配置文件夹
    cp cluster.conf.example cluster.conf   # 将集群文件复制一下
    vim application.properties    # 配置文件
    vim cluster.conf   # 配置集群
    
    • 1
    • 2
    • 3
    • 4

    修改配置文件application.properties,属性使用vim的搜索功能找到然后解开注释或者修改参数

    server.servlet.contextPath=/nacos
    server.port=8848
    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://192.168.1.10:3306/nacos_mysql?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
    db.user.0=nacos
    db.password.0=nacos
    nacos.core.auth.enabled=false    # 关闭权限,可以打开使用
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    修改配置文件cluster.conf,将nacos的IP+端口写进去,端口为上面设置的

    192.168.1.10:8848
    
    • 1

    启动

    cd /usr/local/nacos/nacos/bin/
    ./startup.sh -m stanalone   # 启动程序
    
    • 1
    • 2

    访问192.168.1.10:8848/nacos进入界面,账号nacos\密码nacos

    使用

    在这里插入图片描述
    配置管理
      相当于配置中心可以热刷新项目的配置
    服务管理
      相当于注册中心
    权限控制
      用户的创建以及权限的控制
    命名空间
      可以创建命名空间,可以理解为一个项目一个命名空间,一个项目中一套微服务,其中有很多程序。
    集群管理
      nacos的集群管理

    命名空间中本身自带了一个,现在创建一个新的命名空间example,命名空间id同样使用example,不设置id会自动生成(uuid),id将在程序中使用
    Java中添加一下maven
    项目中使用的配置文件要使用bootstrap.yml或者bootstrap.properties,bootstrap的优先级比application高

    根据自己安装的nacos不同版本引入相对应maven,参考这里
    在这里插入图片描述

    <!-- nacos服务注册/发现-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        <version>2.2.8.RELEASE</version>
    </dependency>
    <!--nacos配置中心来做配置管理-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        <version>2.2.8.RELEASE</version>
    </dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    注册中心

    在这里插入图片描述
    指定刚刚创建的命名空间,指定nacos的IP:port,这样的话启动后就可以在服务列表看到服务,此处当然也可以添加group来进行分组,按照环境分组或者什么分组都可以
    在这里插入图片描述

    配置中心

    在这里插入图片描述

    此处需要注意的是我的spring.profiles.active=dev不在配置文件中,而是在启动参数中,主要是切换环境打包时也不用修改yml文件,在运行jar包切换即可,方便一点

    在这里插入图片描述

    同时在nacos的配置管理中创建一个Data ID为${prefix}-${spring.profile.active}.${file-extension},group可以默认的配置,这个时候程序启动是就会加载配置内容

    在这里插入图片描述
    使用@Value和@RefreshScope配合来实现热刷新,要一起使用。

    本专栏为微服务记录专栏,如有问题还望指出,共同学习!

  • 相关阅读:
    顺序表(文件版本)-----动态版本的进阶
    全网最简单解决方式1045-Access denied for user root@localhost(using password:YES)
    elementui实现表格(el-table)默认选中
    js音频指定扬声器
    python:切分多个串联但单个内部按大小排列数据列表
    猿创征文 |【Ant Design Pro】使用ant design pro做为你的开发模板(四) 联调正式后台接口与运行时全局配置
    【数字IC前端入门】01-数字IC专栏内容概述
    JAVA多线程
    -星号梯形-
    采用python 批量下载ocean color中的卫星数据
  • 原文地址:https://blog.csdn.net/qq_43431735/article/details/125537197