• 在 IDEA 中用 Nacos2.1.0 源码启动集群模式并调试


    单机模式

    1、源码 clone 下来之后
    2、导入 IDEA
    3、compile 编译(主要是让 proto 和 istio 能够自动生成 Java 类),如果没生成,切换个 Maven直接再来一次即可。

    在这里插入图片描述

    4、单机模式很简单,就是在 VM 配置参数:-Dnacos.standalone=true
    5、最后找到 nacos 类,的 main() 方法启动即可

    在这里插入图片描述

    集群模式

    搭建集群前需要注意一个问题:在 Nacos2.x.x 版本中新添加了 grpc 通信协议,所以会额外开辟两个端口,而且这个两个端口是有规范的。如下图示:

    在这里插入图片描述

    所以启动一个 Nacos 服务就会占用三个端口号,注意启动第二个 Nacos 服务的时候不要和这三个端口冲突了,不然启动不了。

    查看端口占用命令:

    lsof -i:端口号
    
    • 1

    杀死端口号

    kill -9 进程号(通过 lsof 可以查看到进程号 PID)
    
    • 1

    配置并启动集群

    1、准备搭建三台 Nacos 集群,先规划下使用的端口号,如下:

    第一台服务器使用 8848 端口,那么 grpc 端口就是 9848、9849 (这两个端口是默认生成的你好无感知的哦)
    第二台服务器使用 8850 端口,那么 grpc 端口就是 9850、9851 (这两个端口是默认生成的你好无感知的哦)
    第三台服务器使用 8852 端口,那么 grpc 端口就是 9852、9853 (这两个端口是默认生成的你好无感知的哦)

    2、找个地方新建三个文件夹 8848、8850、8852,相当于是工作目录,用来隔离三台 Nacos 服务节点,注意生产环境的集群名称一般是以 aplicationName+端口 命名。

    在这里插入图片描述

    3、文件夹建好了,一定一定一定要在每个文件夹下面再创建一个 conf 文件夹,以为源码中默认路径是从 conf 路径

    在这里插入图片描述

    4、conf 建立之后,在 conf 文件夹下面创建一个 cluster.conf,注意名称不要乱改,源码中读取的路径就是 conf/cluster.conf,然后再在 cluster.conf 文件中配置需要启动的 Nacos 【服务节点 IP:端口号 】

    在这里插入图片描述

    5、配置文件配置好之后,就需要在 VM 参数中指定 Nacos 使用的端口号,并且读取哪个配置文件,如下图示:

    在这里插入图片描述

    指定使用端口号:

    -Dserver.port=8852
    
    • 1

    指定让这台 Nacos 节点使用我们刚刚在上面配置好的的三个文件夹中的 8852 文件夹中的配置

    Dnacos.home=/Users/gongweiming/IdeaProjects/nacos/8852
    
    • 1

    注意这两个 VM 设置中间使用空格隔开

    其他两台也是循环上面步骤,然后分别启动即可,如下:

    在这里插入图片描述

    最后再来查看一下启动这三个 Nacos 有没有效果,进入到其中一台 Nacos 管理页面,在里面创建一个配置,然后再看另外两台 Nacos 节点是否有在第一台创建的配置。

    在这里插入图片描述在这里插入图片描述

    可以看到已经成功的在 IDEA 中以源码的方式部署了 Nacos 集群。根本不需要将什么 Nacos 复制三份,没这必要。

    最后你可以查看下本地启动三台 Nacos 服务节点总共消耗了 9 个端口号。主要是 grpc 确实是比 httpclient 快多了。

  • 相关阅读:
    Ascend C保姆级教程:我的第一份Ascend C代码
    低代码让开发变得不再复杂
    【pytorch源码分析--torch执行流程与编译原理】
    联想笔记本一直checking media
    第十五届蓝桥杯总结
    计算机毕业设计Java酒店互联网平台系统(源码+mysql数据库+系统+lw文档)
    Spring 事务失效的场景
    关于2023年的裸辞对话
    Kylin v10安装DM8数据库
    Go语言函数基础
  • 原文地址:https://blog.csdn.net/qq_35971258/article/details/127135712