zoukankan      html  css  js  c++  java
  • Nacos持久化和集群

    参考官网:https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html

    官方建议:推荐使用Linux系统。3个或3个以上Nacos节点才能构成集群。使用外置数据源(mysql)。

    集群方案如下:

       默认的nacos使用嵌入式数据库derby实现数据的存储。所以,如果启动多个默认配置的nacos节点,数据存储存在一致性的问题。为了解决这个问题,Nacos采用了集中式存储的方法来支持集群化部署,目前支持MySQL的存储。

    1. nacos切换搭配mysql数据库做持久化  

    1.创建数据库nacos_config,找到nacosconf目录下找到nacos-mysql.sql,里面是需要执行的sql脚本

    2.修改conf/application.properties中开启mysql持久化

     3.测试:

    (1)nacos新建配置文件

    (2)到mysql查看数据:

     2、集群设置(windows测试)

    1.为了便于测试,我们复制三份nacos出来,分别改变不同的端口,数据库都连接同一个上面建的库。(修改conf/application.propertoes文件)

    端口分别为8848、8849、8850

    2.conf目录下新建cluster.conf,参考cluster.conf.example

    #2020-10-29T10:27:19.046
    172.23.7.79:8848
    172.23.7.79:8849
    172.23.7.79:8850

    3. nacos默认启动是单机模式,需要修改为集群模式:修改bin/startup.cmd

     可以看到大概在55行左右使用了该变量,如下:

    if %MODE% == "standalone" (
        set "JAVA_OPT=%JAVA_OPT% -Xms512m -Xmx512m -Xmn256m"
        set "JAVA_OPT=%JAVA_OPT% -Dnacos.standalone=true"
    ) else (
        if %EMBEDDED_STORAGE% == "embedded" (
            set "JAVA_OPT=%JAVA_OPT% -DembeddedStorage=true"
            )
        set "JAVA_OPT=%JAVA_OPT% -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
        set "JAVA_OPT=%JAVA_OPT% -XX:-OmitStackTraceInFastThrow XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%BASE_DIR%logsjava_heapdump.hprof"
        set "JAVA_OPT=%JAVA_OPT% -XX:-UseLargePages"
    )

    4.启动三个进行测试

    分别访问8848、8849、8850端口测试即可

    5.访问集群

     6.查看节点元数据,如下:(可以看到是主从模式,而且8848为主节点,后面两个为从节点)

    3.nainx进行集群转发

    1.windows下面下载nginx

    2.修改nginx.conf,最后一个大括号内加入如下配置

        include vhost/*.conf;

    3.cons/vhost/下面新建nacoscluster.conf

    server {
        listen 8851;
        server_name localhost;
        
        location /{
            proxy_pass http://cluster;
        }
    }
    
    upstream cluster {
        server 127.0.0.1:8848;
        server 127.0.0.1:8849;
        server 127.0.0.1:8850;
    }

    4.启动nginx

    5.访问测试:

    【当你用心写完每一篇博客之后,你会发现它比你用代码实现功能更有成就感!】
  • 相关阅读:
    UGO小组冲刺第一天
    day04_07-三个函数的区别
    day06_08 字符串
    day06_07 字典操作02
    day06_06 字典操作01
    day06_05 字典
    day06_04 购物车讲解02
    day06_03 购物车讲解01
    day06_02 元组
    day06_01 上节回顾
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/13894135.html
Copyright © 2011-2022 走看看