• Nacos 注册中心集群搭建


    本文使用直连 ip 模式,不通过 Nginx 转发

    1.项目配置中按如下编写yml文件即可:

    spring:
      # 配置 Nacos 注册中心
      cloud:
        nacos:
          discovery:
            enabled: true # 如果不想使用 Nacos 进行服务注册和发现,设置为 false 即可
            server-addr: 192.168.10.101:8848,192.168.10.102:8848,192.168.10.103:8848 # Nacos 服务器地址

    2.在 Nacos 的解压目录 nacos/conf 目录下,复制配置文件 cluster.conf.example 并重命名为 cluster.conf,每行配置成 ip:port

    cp cluster.conf.example cluster.conf
    #example
    172.28.40.133:8847
    172.28.40.133:8848
    172.28.40.133:8849

      注意,这里我用单节点不同的ip来搭建集群,所以要写内网ip+端口

    3.初始化 MySQL 数据库

    集群搭建的时候我们需要将 Nacos 对接 Mysql 进行数据存储。如果要搭建高可用的集群环境,至少要满足以下条件:

    • JDK 1.8+;
    • Maven 3.2.x+;
    • MySQL 5.6.5+(生产使用建议至少主备模式,或者采用高可用数据库);
    • 3个或3个以上Nacos节点才能构成集群。

    创建数据库 nacos_config

    SQL源文件地址在 nacos-server 解压目录 conf 下,找到 nacos-mysql.sql 文件,运行该文件,结果如下:

    修改 nacos/conf/application.properties 文件的以下内容

     最终修改结果如下:

    #*************** Config Module Related Configurations ***************#
    ### If user MySQL as datasource:
    # 指定数据源为 MySQL
    spring.datasource.platform=mysql
    
    ### Count of DB:
    # 数据库实例数量
    db.num=1
    
    # 数据库连接信息,如果是 MySQL 8.0+ 版本需要添加 serverTimezone=Asia/Shanghai
    ### Connect URL of DB:
    db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&serverTimezone=Asia/Shanghai
    db.user=root
    db.password=1234

    如果使用的是 MySQL 8.0+ 版本,那么启动 Nacos 时会报错。在 Nacos 安装目录下新建 plugins/mysql 文件夹,并放入 8.0+ 版本的 mysql-connector-java-8.0.xx.jar,重启 Nacos 即可,启动时会提示更换了 MySQL 的 driver-class 类。

     5.复制nacos目录

    cp -r /usr/local/java/nacos_8848 /usr/local/java/nacos_8847
    cp -r /usr/local/java/nacos_8848 /usr/local/java/nacos_8849

    修改nacos的配置文件application.properties 配置端口号8848分别为8847和8849

    在 三台Nacos 的解压目录 nacos/bin 目录下启动。

    启动命令

    sh startup.sh
    sh shutdown.sh

    访问以下链接,默认用户名/密码是 nacos/nacos :

    • http://47.116.142.177:8847/nacos/
    • http://47.116.142.177:8848/nacos/
    • http://47.116.142.177:8849/nacos/

     可以看到8847没启动

    进入8847查看命令:

    tail -f /usr/local/nacos/logs/start.out

     要修改nacos-server的启动脚本jvm参数 (内存参数设置的过小启动不了这么多服务),就是startup.sh文件

    #===========================================================================================
    # JVM Configuration
    #===========================================================================================
    if [[ "${MODE}" == "standalone" ]]; then
        JAVA_OPT="${JAVA_OPT} -Xms512m -Xmx512m -Xmn256m"
        JAVA_OPT="${JAVA_OPT} -Dnacos.standalone=true"
    else
        # JVM Configuration 将内存配置小一点 -Xms2g -Xmx2g -Xmn1g 改成 -Xms512m -Xmx512m -Xmn128m
        JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
        JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${BASE_DIR}/logs/java_heapdump.hprof"
        JAVA_OPT="${JAVA_OPT} -XX:-UseLargePages"
    
    fi

    修改后关闭nacos,重启服务,重新连接即可

     

     启动服务,看下注册成功了没

     

     

  • 相关阅读:
    基于学习的方法决定在哪些分支节点上运行heuristic算法
    深度学习结合树搜索求解集装箱预翻箱问题
    elementui el-tree 树节点颜色修改
    循环更新swingui并想动态看到效果,请使用invokeAndWait
    SwingWorker.publish 方法注释写的很清楚, 尤其是标红处
    GridBagConstraintsHelper 源码
    WeKeyWord微信关键字自动回复工具(一)初版
    WeFilesReciver微信文件接收助手(二)新增搜索
    模仿Cheat Engine内存搜索——(Sunday算法)
    WCarer微信客服工具(一)初版
  • 原文地址:https://www.cnblogs.com/lusaisai/p/14329971.html
Copyright © 2020-2023  润新知