1. 下载源码
2. 源码目录介绍
Nacos 各个模块如下:
其包名采用以下格式:
com.公司名称.项目名称.模块名称.功能
例如客户端Client模块:
各模块功能描述如下:
| 模块名 描述 | |
|---|---|
| address | 地址服务器 |
| api | 通用API接口 |
| auth | 认证授权 |
| client | 客户端 |
| cmdb | 元数据管理 |
| common | 公共包 |
| config | 配置管理 |
| consistency | 分布式CAP(数据一致性) |
| console | 管理控制台 |
| console-ui | UI界面 |
| core | 内核模块 |
| distribution | 启动脚本、配置示例等 |
| example | 示例 |
| istio | 支持Istio MCP协议 |
| naming | 服务发现 |
| persistence | 持久化 |
| plugin | 插件 |
| plugin-default-impl | 插件默认实现 |
| prometheus | 服务监控 |
| sys | 服务器系统交互 |
| test | 测试案例 |
3. 源码启动
首先使用IDEA导入源码,配置Maven仓库、JDK。
3.1 安装插件
在consistency模块中,有两个.proto文件(其他模块也有),Protobuf是一种数据交换格式,又称PB编码,由Google开源,所以这里需要安装Protobuf插件进行编译文件,不然会提示模块缺少entity包下的类。
IDEA中搜索Protobuf安装GenProtobuf即可:
安装完成后,打包
consistency模块,正常打包完成表示插件安装成功:
3.2 启动
Nacos控制台对应的模块为console,可以看到这就是一个普通的Spring Boot工程:
我们在启动服务端的时候,会进行各种配置,这些配置也对应了console模块中的application.properties配置文件,可以根据需求配置数据库连接:
配置JVM 启动参数,设置为单机模式:
-Dnacos.standalone=true
接着先将test关闭,然后使用package打包:
打包完成如下所示:
最后点击console模块启动类直接启动,IDEA控制台如下:
访问控制台地址,输入nacos\nacos 登录: