分布式协调系统中新增节点的入网方法、装置和系统的制作方法_2

文档序号:9891198阅读:来源:国知局
述节点信息集合发生更新,将更新后的所 述节点信息集合中的对应关系添加到所述新入网节点的配置文件中。
[0047] 结合第四方面、或第四方面的第一种实现方式,在第四方面的第二种实现方式中, 所述发送模块,具体用于:
[0048] 在固定端口向所述分布式协调系统的主节点发送入网请求报文;所述端口与所述 主节点接收所述入网请求报文的端口一致。 W例第五方面,本发明实施例提供一种分布式协调系统,包括:
[0050] 如第Ξ方面中任一项所述的主节点、至少两个从节点和如第四方面中任一项所述 的新入网节点。
[0051] 本发明实施例分布式协调系统中新增节点的入网方法、装置和系统,通过所述分 布式协调系统的主节点接收新入网节点发送的入网请求报文,所述入网请求报文包括所述 新入网节点的IP地址;根据所述入网请求报文为所述新入网节点分配第一节点标识,并在 所述主节点的配置文件中增加第一对应关系,所述第一对应关系包括所述第一节点标识和 所述新入网节点的IP地址;并在节点信息集合中增加所述第一对应关系,得到更新后的节 点信息集合,W使得所述分布式协调系统的从节点在所述从节点的配置文件中增加所述第 一对应关系;将所述第一节点标识W及更新后的节点信息集合发送给所述新入网节点,W 使得所述新入网节点根据所述第一节点标识W及所述更新的节点信息集合生成所述新入 网节点的配置文件,从而加入所述分布式协调系统,实现了分布式协调系统ZooKeeper集 群网络部署中新入网节点的自动配置,不需要人工干预,即可实现新入网节点的自动入网, 相比传统的人工配置,效率高,并且不易出错。
【附图说明】
[0052] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可W 根据运些附图获得其他的附图。
[0053] 图1为本发明实施例提供的分布式协调系统中新增节点的入网方法流程图一;
[0054] 图2为本发明实施例提供的分布式协调系统中新增节点的入网方法的实现原理 图;
[0055] 图3为本发明实施例提供的分布式协调系统中新增节点的入网方法流程图二;
[0056] 图4为本发明实施例提供的分布式协调系统中的主节点结构示意图;
[0057] 图5为本发明实施例提供的分布式协调系统中的新入网节点结构示意图;
[0058] 图6为本发明实施例提供的分布式协调系统中的主节点另一结构示意图;
[0059] 图7为本发明实施例提供的分布式协调系统中的新入网节点另一结构示意图;
[0060] 图8为本发明实施例提供的分布式协调系统的结构示意图。
【具体实施方式】
[0061] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0062] 图1为本发明实施例提供的分布式协调系统中新增节点的入网方法流程图一。所 述方法可W包括:
[0063] 步骤101、分布式协调系统的主节点接收新入网节点发送的入网请求报文,所述入 网请求报文包括所述新入网节点的网际协议IP地址。
[0064] 本发明实施例中的分布式协调系统指的是ZooKeeper集群网络。ZooKeeper 集群网络中的节点具有两个关键的角色:主节点(也称为Leader)和从节点(也称为 化llower)。在整个ZooKeeper集群网络运行过程中,只有一个Leader,其他的都是从节点, ZooKe巧er采用选举算法选出一个Leader。Leader通常为ZooKeeper集群中节点序号最小 的节点。如果ZooKeeper集群网络在运行过程中Leader出了问题,系统会采用该选举算法 重新选出一个Leader。ZooKwper集群网络具体如何选举Leader,可参考通常实现方式,在 此不做详述。 阳0化]本发明实施例的所述主节点为该ZooKeeper集群网络的主节点化eader)。
[0066] 步骤102、所述主节点根据所述入网请求报文为所述新入网节点分配第一节点标 识,并在所述主节点的配置文件中增加第一对应关系,所述第一对应关系包括所述第一节 点标识和所述新入网节点的IP地址。
[0067] 步骤103、所述主节点在节点信息集合中增加所述第一对应关系,得到更新后的节 点信息集合,W使得所述分布式协调系统的从节点在所述从节点的配置文件中增加所述第 一对应关系。
[0068] 可选地,所述分布式协调系统的主节点接收新入网节点发送的入网请求报文之 前,还包括:
[0069] 所述主节点预先存储所述节点信息集合;所述节点信息集合包括所述主节点的节 点标识和所述主节点的IP地址的对应关系,W及所述从节点的节点标识和所述从节点的 IP地址的对应关系。
[0070] ZooKeeper集群网络中所有的节点作为一个整体为分布式应用提供服务,集群网 络中每个节点之间都互相连接,所W,在配置ZooKeeper集群网络的时候,每个节点都包含 ZooKwper集群网络中其它各个节点的节点标识与IP地址的对应关系。如:
[0071] hostl (192. 168. 0. 179)对应 server. 1 ;
[0072] host2 (192. 168. 0. 178)对应 server. 2 ;
[0073] host3 (192. 168. 0. 177)对应 server. 3。
[0074] 在ZooKeeper集群网络部署的每个节点上,都保存有配置文件(zoo. cfg),如果 ZooKeeper集群网络中有新入网节点,则需要修改每个节点的配置文件。
[00巧]假设节点1上原始的配置文件(zoo. cfg)中的内容如下:
[0076] tickTime = 2000
[0077] dataDir = /var/lib/ZooKeeper
[0078] clientfod = 2181 [00巧]initLimit = 5
[0080] syncLimit = 2
[0081] server. 1 = hostl:portl:port2
[0082] server. 2 = host2:portl:port2
[0083] server. 3 = host3:portl:port2
[0084] 其中: 阳085] tickTime :表示ZooKeeper集群网络中节点间或客户端与节点间维持屯、跳的时间 间隔,单位毫秒。
[0086] dataDir :表示ZooKeeper集群网络中保存数据和日志的目录。
[0087] clien巧ort :表示客户端连接ZooKeeper集群网络中节点的端口。
[0088] initLimit :表示配置ZooKeeper集群网络接受客户端初始化连接时最长屯、跳时 间间隔数,超过表明客户端连接失败;"5 "表示5个tickTime,总的时间长度就是5*2000 = 10秒。
[0089] syncLimit :标识Leader与化llower之间发送消息,请求和应答时间长度,最长不 能超过多少个tickTime的时间长度,总的时间长度就是2*2000 = 4秒。
[0090] 上述客户端是指在ZooKeeper集群网络的节点上或其他设备上创建的应用程序, ZooKeeper集群网络的每个节点运行服务器端应用程序,一个节点至少对应一个客户端,为 客户端提供服务。
[0091] 具体来说,本实施例中ZooKeeper集群网络中主节点,开启一个进程,等待接收 新入网节点发送的入网请求报文,例如可W在5050端口等待接收该入网请求报文;新入 网节点通过广播方式发送该入网请求报文,新入网节点发送该入网请求报文的端口与主 节点的接收端口一致,如同样在5050端口;该入网请求报文可W为用户数据包协议扣ser Datagram Protocol,简称UDF〇广播报文,报文格式如下:
[0092]
[0093] 其中,IP头部的目的地址为255. 255. 255. 255的广播地址,UDP的源端口和目的端 口定义为固定的5050端口;数据域为:"ZooKeeper request :ΙΡΓ',其中,IP1为新入网节 点的IP地址。
[0094] 主节点接收到新入网节点发送的入网请求报文后,取出所述入网请求报文
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1