一种数据节点位置的确定方法和装置的制造方法

文档序号:9828357阅读:615来源:国知局
一种数据节点位置的确定方法和装置的制造方法
【技术领域】
[0001] 本发明涉及通信领域,尤其涉及一种数据节点位置的确定方法和装置。
【背景技术】
[0002] 如图1所示,为Hadoop (分布式计算)的组网示意图,Hadoop是一个分布式系统 基础架构,包括多个机架,各机架内包括多个数据节点,各机架内的数据节点与机架交换机 连接,且每个机架交换机均与核心交换机连接。
[0003] 对于需要在数据节点中存储的文件,将文件分成一个或者多个block (块),并在 不同的数据节点上对block提供备份功能,进而提供容错能力,提高可用性。在一个数据节 点中存储block之后,复制该block,并在该数据节点上备份一份该block。此外,在该数据 节点所在机架之外的另一个机架中选择两个数据节点,并将该block分别备份到这两个数 据节点上。基于上述备份方式,可以保证存储block的数据节点所在的整个机架发生故障 之后,block不会发生丢失。
[0004] 在上述过程中,需要获知不同的数据节点位于同一机架还是位于不同机架。基于 此,需要手工配置数据节点与机架交换机的对应关系。
[0005] 手工配置的工作量较大,而且容易出现配置错误等问题。

【发明内容】

[0006] 本发明提供一种数据节点位置的确定方法,所述方法包括以下步骤:
[0007] 管理节点获得数据节点的媒体访问控制MAC地址与IP地址之间的第一对应关系, 并获得交换设备学习到的MC表项,所述MC表项中记录了交换设备的端口与从该端口学 习到的MC地址之间的第二对应关系;所述交换设备包括核心交换设备和机架交换设备;
[0008] 所述管理节点利用所述第一对应关系以及所述第二对应关系,确定数据节点所连 接的机架交换设备。
[0009] 本发明提供一种数据节点位置的确定装置,所述数据节点位置的确定装置应用在 管理节点上,且所述数据节点位置的确定装置包括:
[0010] 获得模块,用于获得数据节点的媒体访问控制MAC地址与IP地址之间的第一对应 关系,并获得交换设备学习到的MC表项,所述MC表项中记录了交换设备的端口与从该端 口学习到的MC地址之间的第二对应关系;所述交换设备包括核心交换设备和机架交换设 备;
[0011] 确定模块,用于利用所述第一对应关系以及所述第二对应关系,确定数据节点所 连接的机架交换设备。
[0012] 基于上述技术方案,本发明实施例中,管理节点可以根据数据节点的MAC(Media Access Control,媒体访问控制)地址与IP地址的对应关系,交换设备学习到的MAC表项, 确定数据节点所连接的机架交换设备,从而自动感知数据节点的位置(即数据节点所连接 的机架交换设备),不需要手工配置数据节点与机架交换机的对应关系,减少手工配置的工 作量,避免配置错误,便于维护,并可以提高Hadoop的稳定性。
【附图说明】
[0013] 图1是Hadoop (分布式计算)的组网示意图;
[0014] 图2是本发明实施例的应用场景示意图;
[0015] 图3是本发明一种实施方式中的数据节点位置的确定方法的流程图;
[0016] 图4是本发明一种实施方式中的管理节点的硬件结构图;
[0017] 图5是本发明一种实施方式中的数据节点位置的确定装置的结构图。
【具体实施方式】
[0018] 针对现有技术中存在的问题,本发明实施例中提出一种数据节点位置的确定方 法,该方法可以应用于包括管理节点、多个数据节点、多个交换设备的系统中,如Hadoop系 统。其中,管理节点又可以称为名字节点,负责管理Hadoop系统的名称空间,并控制外部用 户的访问。交换设备可以为核心交换设备(如核心交换机或者核心路由器)或者机架交换 设备(如机架交换机)。
[0019] 以图2为本发明实施例的应用场景示意图,该Hadoop系统包括核心交换设备、机 架交换设备1、机架交换设备2、数据节点1、数据节点2、数据节点3、数据节点4、数据节点 5、数据节点6。机架交换设备与机架内的各数据节点连接,并与核心交换设备连接,机架交 换设备1通过端口 11与机架1内的数据节点1连接,通过端口 12与机架1内的数据节点2 连接,通过端口 13与机架1内的数据节点3连接,通过端口 14与核心交换设备的端口 1连 接。机架交换设备2通过端口 21与机架2内的数据节点4连接,通过端口 22与机架2内 的数据节点5连接,通过端口 23与机架2内的数据节点6连接,通过端口 24与核心交换设 备的端口 2连接。
[0020] 在此应用场景下,可以将任意的一个数据节点配置为管理节点,如将数据节点1 配置为管理节点,此时,该管理节点不仅具有本申请后续过程中的管理节点的功能,还具有 数据节点的功能。或者,在Hadoop系统中单独部署一个管理节点,该管理节点需要与各数 据节点连接,并与各交换设备连接。
[0021] 如图3所示,该数据节点位置的确定方法可以包括以下步骤:
[0022] 步骤301,管理节点获得数据节点的MAC地址与IP地址之间的第一对应关系。
[0023] 管理节点获得数据节点的MAC地址与IP地址之间的第一对应关系的过程,可以包 括但不限于如下方式:管理节点接收来自数据节点的ARP(Address Resolution Protocol, 地址解析协议)请求报文,并从ARP请求报文中解析出该数据节点的MAC地址与IP地址之 间的第一对应关系,并在ARP表项中记录该数据节点的MAC地址与IP地址之间的第一对应 关系。
[0024] 由于管理节点会对数据节点的信息进行管理,因此各数据节点在线时,可以周期 性的向管理节点发送心跳报文,以通知本数据节点仍然在线。为了能够向管理节点发送心 跳报文,数据节点先向管理节点发送ARP请求报文,该ARP请求报文的源IP地址为本数据 节点的IP地址,源MAC地址为本数据节点的MAC地址,目的IP地址为管理节点的IP地址, 目的MAC地址为广播地址。管理节点在接收到该ARP请求报文后,在ARP表项中记录数据 节点的MAC地址(即ARP请求报文的源MAC地址)与IP地址(即ARP请求报文的源IP地 址)之间的第一对应关系,并向数据节点返回APR应答报文,该APR应答报文的源IP地址 为本管理节点的IP地址,源MAC地址为本管理节点的MAC地址,目的IP地址为数据节点的 IP地址,目的MAC地址为数据节点的MAC地址。
[0025] 基于上述过程,则管理节点可以从来自数据节点1的ARP请求报文中,获得数据节 点1的MAC地址EO: 00:00:00:00:01和IP地址192. 168. L 1,并从来自数据节点2的ARP 请求报文中,获得数据节点2的MAC地址EO:00:00:00:00:02和IP地址192. 168. 1.2,并 从来自数据节点3的ARP请求报文中,获得数据节点3的MAC地址EO: 00:00:00:00:03和 IP地址192. 168. 1. 3,并从来自数据节点4的ARP请求报文中,获得数据节点4的MAC地址 EO: 00:00:00:00:04和IP地址192. 168. 1. 4,并从来自数据节点5的ARP请求报文中,获得 数据节点5的MAC地址EO: 00:00:00:0
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1