# rancher2.x-nacos **Repository Path**: tanks_oracle/rancher2.x-nacos ## Basic Information - **Project Name**: rancher2.x-nacos - **Description**: 从github上checkout nacos 1.1.4 版本基础上,做些修改和扩展 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 8 - **Forks**: 5 - **Created**: 2020-02-18 - **Last Updated**: 2025-08-06 ## Categories & Tags **Categories**: cloud **Tags**: None ## README # Nacos: Dynamic *Na*ming and *Co*nfiguration *S*ervice [![Gitter](https://badges.gitter.im/alibaba/nacos.svg)](https://gitter.im/alibaba/nacos?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![Gitter](https://travis-ci.org/alibaba/nacos.svg?branch=master)](https://travis-ci.org/alibaba/nacos) ------- ## 具体参考官网(official site: [http://nacos.io](http://nacos.io)) ##修改扩展点,用于在K8s平台特别是Rancher2.x平台下,如何做到高可用部署nacos 集群,如下图所示: ![输入图片说明](https://images.gitee.com/uploads/images/2020/0218/180711_e63ebbd5_1134674.png "屏幕截图.png") Macos代码上修改,主要包括如下流程: 1. 从外部参数中获取集群服务名(如nacos-server-node0#nacos-server-node1#nacos-server-node2#...) 2. 单节点通过定时发送报告给所有服务名(nacos-server-node0:8848、nacos-server-node1:8848...)附带本容器IP地址和hostname 3. 单节点收到请求信息,解析出对应源IP:端口信息,如10.42.2.10:8848,将收集到信息存储在ServerListManager.serviceNamesHost中 4. 单节点定时跑批处理ServerListManager.ServerClusterNameResolve将集群信息写入nacos本地cluster.conf文件 5. nacos应用会定期加载cluster.conf文件,达到动态更新集群个节点信息