• Nacos集群搭建


    Nacos集群的思想:一个Nacos请求通过Nginx的反向代理完成负载均衡获取Nacos集群节点,通过数据库集群完成Nacos数据同步

    Nacos集群的结构:

    Nacos集群搭建

    搭建集群的基本步骤:

    • 下载Nacos
    • 搭建数据库,初始化数据库表结构
    • 配置nacos
    • 启动nacos集群
    • nginx反向代理

    下载并解压Nacos

    nacos在GitHub上有下载地址:https://github.com/alibaba/nacos/tags,可以选择任意版本下载

    初始化数据库

    Nacos默认数据存储在内嵌数据库Derby中,不属于生产可用的数据库,官方推荐的最佳实践是使用带有主从的高可用数据库集群。

    首先新建一个数据库,命名为nacos_cluster,而后导入SQL:

    配置Nacos

    进入nacos的conf目录,修改配置文件cluster.conf.example,重命名为cluster.conf

    然后添加内容

    127.0.0.1:8845
    127.0.0.1:8846
    127.0.0.1:8847

    然后修改application.properties文件,添加数据库配置

    ### If use MySQL as datasource:
    spring.datasource.platform=mysql
    
    ### Count of DB:
    db.num=1
    
    ### Connect URL of DB:
    db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_cluster?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
    db.user.0=root
    db.password.0=root

    nacos_cluster:持久化nacos的数据

    启动

    将nacos文件夹复制三份,分别命名为:nacos1、nacos2、nacos3

    然后分别修改三个文件夹中的application.properties

    nacos1:

    server.port=8845

    nacos2:

    server.port=8846

    nacos3:

    server.port=8847

    然后分别启动三个nacos节点:

    startup.cmd (默认集群模式启动)

    Nginx反向代理

    下载地址:http://nginx.org/en/download.html

    解压到任意非中文目录下

    修改conf/nginx.conf文件,配置如下:

    upstream nacos-cluster {
        server 127.0.0.1:8845;
        server 127.0.0.1:8846;
        server 127.0.0.1:8847;
    }
    
    server {
        listen       80;
        server_name  localhost;
    
        location /nacos {
            proxy_pass http://nacos-cluster;
        }
    }

    启动

    nginx.exe

    浏览器访问:http://localhost/nacos

    项目中使用Nacos集群

    bootstrap.yml 文件配置如下

    spring:
      cloud:
        nacos:
          server-addr: localhost:80 # Nacos地址

    注意:将nacos地址配置在spring.cloud.nacos的server-addr属性下,否则在启动微服务实例,就会出现以下错误:

  • 相关阅读:
    WIN10系统下静态编译Qt4.8.7
    python-使用python获取一段录音
    【探索之路】机器人篇(5)-Gazebo物理仿真环境搭建_让机器人运动起来
    【探索之路】机器人篇(4)-根据3D文件来优化自己的机器人模型
    【探索之路】机器人篇(3)-给mwRobot建立模型
    【探索之路】机器人篇(2)-ROS系统并创建工作空间和项目
    【探索之路】机器人篇(1)-ROS-mwRobot开篇
    【kinetic】操作系统探索总结(八)键盘控制
    webstorage
    mysqld: [ERROR] Found option without preceding group in config file D:TONGmysql-5.7.19-winx64my.ini at line 1!
  • 原文地址:https://www.cnblogs.com/WarBlog/p/15410601.html
Copyright © 2020-2023  润新知