美文网首页
nacos配置中心单击模式改造为集群模式

nacos配置中心单击模式改造为集群模式

作者: 虫儿飞ZLEI | 来源:发表于2019-05-24 15:37 被阅读0次

    nacos作为配置中心可以将配置项目的配置提取到外部,独立管理,当nacos单机部署时,当nacos服务不正常时,项目便不可获取到正确的配置信息。如果将nacos搭建成集群环境,只要不是集群的所有机器都有挂掉,都可以正常读取配置,可以提高项目稳定性。

    1. 预备环境

    需要多台linux机器作为集群的环境
    此外,需要linux机器包含maven环境、java环境

    2. 下载解压文件

    github地址:https://github.com/alibaba/nacos

    3. 配置集群地址

    新建cluster.conf文件,或者将cluster.conf.example重明明为cluster.conf

    在此文件中添加集群地址和端口号


    image.png

    4. 配置properties文件

    新建application.properties文件或者将application.properties.example重命名为application.properties

    # spring
    fsdserver.contextPath=/nacos
    server.servlet.contextPath=/nacos
    server.port=8848
    
    nacos.cmdb.dumpTaskInterval=3600
    nacos.cmdb.eventTaskInterval=10
    nacos.cmdb.labelTaskInterval=300
    nacos.cmdb.loadDataAtStart=false
    
    ##datasource
    spring.datasource.platform=mysql
     
    db.num=1
    db.url.0=jdbc:mysql://192.168.220.46:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=root
    db.password=ahhx@123
    
    # metrics for prometheus
    #management.endpoints.web.exposure.include=*
    
    # metrics for elastic search
    management.metrics.export.elastic.enabled=false
    #management.metrics.export.elastic.host=http://localhost:9200
    
    # metrics for influx
    management.metrics.export.influx.enabled=false
    #management.metrics.export.influx.db=springboot
    #management.metrics.export.influx.uri=http://localhost:8086
    #management.metrics.export.influx.auto-create-db=true
    #management.metrics.export.influx.consistency=one
    #management.metrics.export.influx.compressed=true
    
    server.tomcat.accesslog.enabled=true
    server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
    # default current work dir
    server.tomcat.basedir=
    
    ## spring security config
    ### turn off security
    #spring.security.enabled=false
    #management.security=false
    #security.basic.enabled=false
    #nacos.security.ignore.urls=/**
    
    nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
    
    nacos.naming.distro.taskDispatchThreadCount=1
    nacos.naming.distro.taskDispatchPeriod=200
    nacos.naming.distro.batchSyncKeyCount=1000
    nacos.naming.distro.initDataRatio=0.9
    nacos.naming.distro.syncRetryDelay=5000
    nacos.naming.data.warmup=true
    nacos.naming.expireInstance=true
    

    5. 启动nacos

    执行bin目录下的startup.sh脚本


    ps:sh startup.sh则默认以集群模式启动,sh startup.sh -m standalone则是以单机模式启动

    启动成功后,单独访问每台机器的地址(ip:8848/nacos/#/login),用户名密码:nacos/nacos
    如果都能正常访问,则一切正常。


    6. 修改SpringBoot配置文件

    Spring:
      cloud:
        nacos:
          config:
            server-addr: ip:8848,ip:8848,ip:8848
            file-extension: yaml
    

    启动项目,后台可以看到nacos连接的相关日志


    并且项目可以正常读取到配置内容,则一切正常

    7. jenkins部署

    如果使用jenkins部署项目,则需要需要修改jenkins的nacos相关配置,使之可以正确读取到nacos集群的每一台机器


    相关文章

      网友评论

          本文标题:nacos配置中心单击模式改造为集群模式

          本文链接:https://www.haomeiwen.com/subject/yxvgzqtx.html