美文网首页
springcloud Alibaba入门系列之Nacos集群搭

springcloud Alibaba入门系列之Nacos集群搭

作者: 会上树的程序猿 | 来源:发表于2019-11-10 12:23 被阅读0次

    Nacos的集群是需要在数据持久化的基础上来完成的,如果您还没有做数据的持久化过程,请您移驾~:

    关于数据的持久化过程本篇说的很清楚了,如果已经完成了数据的持久化过程,接下来我们来看集群的过程

    集群搭建

    从官方的文档我们可以得知,关于Nacos的集群架构如图:

    image

    从上图我们可以得知,ip1和ip2以及ip3是我服务的节点,而vip是作为一个路由转发的过程,在我搭建的过程中,分别给它们的ip为:

    • vip:127.0.0.1:8080
    • ip1:127.0.0.1:8841
    • ip2:127.0.0.1:8842
    • ip3:127.0.0.1:8843

    接下来我们来看具体的实现过程,接着我们上节数据持久化的基础上来做,来到我们fork的项目根目录下的distribution下的target目录下会有如图的内容:

    微信截图_20191110105707.png

    原本来说会看到archive-tmp和nacos-server-1.1.4.zip(这个是window下使用)以及nacos-server-1.1.4.tar.gz(这个是我们在Linux下可以使用的),这里解压nacos-server-1.1.4.zip然后copy三份命名为如图的01和02以及03.

    • 接着进入nacos-server-1.1.4-01\nacos\conf目录下,会看到cluster.conf.example文件,copy它并重名为cluster.conf,打开它我们需要添加集群节点如下:
    127.0.0.1:8841
    127.0.0.1:8842
    127.0.0.1:8843
    
    • 接着在nacos-server-1.1.4-01\nacos\bin下我们要修改startup.sh的东西,让它通过DServer.port的启动的方式来加载我们配置的端口,需要在在该文件的JVM Configuration下添加如下代码:
    JAVA_OPT="${JAVA_OPT} -Dserver.port=8841"
    
    微信截图_20191110113356.png

    到这里我们的端口为8841的节点已经配置完毕,至于8842和8843的配置都一样,接着直接双击bin目录下的startup.cmd来分别启动我们的三个节点访问nacos管理平台如图:

    8841.png 8842.png 8843.png

    上面三个图是节点分别为8841 和8842 和8843的nacos管理台界面

    接下来我们利用Nginx的反向代理来做路由的转发分别到我们的三个节点.

    Nginx的安装和使用

    • 首先安装Nginx,请您移驾到Nginx官网,我这下载的是最新的1.17.5版本,如图:
    nginx.png

    这就算是基本上完成了,无需配置环境变量,我们来到根目录下:

    config.png

    需要进行nginx的代理配置,添加如下代码:

    upstream nacos{
    server 127.0.0.1:8841;
    server 127.0.0.1:8842;
    server 127.0.0.1:8843;
    }
    

    注意这段代码的位置为http{}里面

    server {
        listen       8080;
        server_name  localhost;
    
        #charset koi8-r;
    
        #access_log  logs/host.access.log  main;
    
        location /nacos/ {
            
            #代理路径,负载均衡
           proxy_pass http://nacos/nacos/;
        }
    

    到这里nginx的代理配置完成,我们访问,http://127.0.0.1:8080/nacos/,会看到如下图:

    login.png

    到这里说明我们的nginx的代理配置是没有问题的,输入用户名和密码即可,如图:

    节点.png

    有个疑问,我这里集群是三个节点,但是在节点列表中只能看到一个,每次刷新节点的ip都会变,却始终只有一个,这里确实不是很理解,如果有知道的猿友们可以告知一声.
    不说这个了.我们可以通过接口来获取我们的配置,这里我们使用alibaba-nacos-config-load项目来测试,首先需要改一下配置,代码如下:

    server.port=9005
    spring.application.name=alibaba-nacos-config-load
    spring.cloud.nacos.config.server-addr=127.0.0.1:8080
    spring.cloud.nacos.config.file-extension=properties
    

    这里注册的端口不在是8848了,我们需要改成我们自己的路由端口8080即可,然后启动我们的服务,在控制台的日志中得到dataId如图:

    id.png sss.png

    访问http://127.0.0.1:9005/test,页面会有如图的结果:

    999.png

    ok,到这里我们的Nacos的集群和测试完成了,那个疑问有知道的望告知....

    相关文章

      网友评论

          本文标题:springcloud Alibaba入门系列之Nacos集群搭

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