CN114205231A - 批量启动hadoop集群的方法、系统及可读存储介质 - Google Patents

批量启动hadoop集群的方法、系统及可读存储介质 Download PDF

Info

Publication number
CN114205231A
CN114205231A CN202111476598.8A CN202111476598A CN114205231A CN 114205231 A CN114205231 A CN 114205231A CN 202111476598 A CN202111476598 A CN 202111476598A CN 114205231 A CN114205231 A CN 114205231A
Authority
CN
China
Prior art keywords
abnormal
starting
node
hadoop
namenode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111476598.8A
Other languages
English (en)
Inventor
海克洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hubei Meihe Yisi Education Technology Co ltd
Original Assignee
Hubei Meihe Yisi Education Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hubei Meihe Yisi Education Technology Co ltd filed Critical Hubei Meihe Yisi Education Technology Co ltd
Priority to CN202111476598.8A priority Critical patent/CN114205231A/zh
Publication of CN114205231A publication Critical patent/CN114205231A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • H04L41/0661Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本发明公开了一种批量启动hadoop集群的方法、系统及介质,该方法包括:接收启动命令,并将启动命令并行发送到多个hadoop集群,对各个hadoop集群中的namenode节点进行启动;监测多个hadoop集群中的namenode节点中是否存在启动失败的异常节点,若存在则输出异常提示信息;在异常排除后,若接收到再次启动命令,则基于再次启动命令,对异常节点进行启动,直到多个hadoop集群中的namenode节点均启动成功。本发明确保各个hadoop集群中的各个namenode优先启动,节省了等待各个hadoop集群中所有节点的启动时间,有利于各个hadoop集群整体上处理效率的提高。

Description

批量启动hadoop集群的方法、系统及可读存储介质
技术领域
本发明涉及分布式系统技术领域,尤其涉及一种批量启动hadoop集群的方法、系统及可读存储介质。
背景技术
随着大数据技术的发展,传统的mysql已难以满足大量增长的数据服务需求,而逐步发展为hadoop集群的分布式处理模式。Hadoop集群包含HDFS、YARN和MAPREDUCE三大核心组件,其中,HDFS为分布式文件系统,用于解决海量数据存储问题,YARN为作业调度和集群资源管理的框架,用于解决资源任务调度问题,MAPREDUCE为分布式运算编程框架,用于解决海量数据计算问题。
对于负责海量数据存储的HDFS,包含三种节点角色,分别为:NameNode、DataNode、SecondaryNameNode。NameNode作为管理节点,管理集群的命令空间,维护集群内的所有文件和目录,datanode是集群的工作节点,其受namenode调度存储并检检索数据块,并定期向namenode发送它们所存储的块的列表。SecondaryNameNode是NameNode的辅助检查点,其在NameNode异常时,可对NameNode进行恢复。
并且,Hadoop集群的很多操作都是在namenode节点中完成,namenode的启动快慢与hadoop集群的数据处理效率息息相关。当前在多个hadoop集群中,如何批量启动各个hadoop集群中的namenode节点,以确保各个hadoop集群整体上的处理效率,是当前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种批量启动hadoop集群的方法、系统及可读存储介质,旨在解决现有技术中如何批量启动各个hadoop集群中namenode节点的技术问题。
为实现上述目的,本发明提供一种批量启动hadoop集群的方法,所述批量启动hadoop集群的方法包括:
接收启动命令,并将所述启动命令并行发送到多个hadoop集群,对各个所述hadoop集群中的namenode节点进行启动;
监测多个所述hadoop集群中的namenode节点中是否存在启动失败的异常节点,若存在异常节点,则输出异常提示信息;
在与所述异常提示信息对应的异常排除后,若接收到再次启动命令,则基于所述再次启动命令,对所述异常节点进行启动,直到多个所述hadoop集群中的namenode节点均启动成功。
可选地,所述基于所述再次启动命令,对所述异常节点进行启动的步骤包括:
查找多个所述hadoop集群的namenode节点中未返回心跳的namenode节点,并基于所述再次启动命令,对未返回心跳的所有namenode节点进行启动。
可选地,所述若存在异常节点,则输出异常提示信息的步骤之后包括:
对与启动成功的namenode节点对应的datanode节点进行启动。
可选地,所述若存在异常节点,则输出异常提示信息的步骤包括:
获取所述异常节点的状态信息,并根据所述状态信息输出异常提示信息,其中所述状态信息包括拦截状态信息、安全模式状态信息以及格式化状态信息。
可选地,所述根据所述状态信息输出异常提示信息的步骤包括:
若所述拦截状态信息携带有拦截标识,则判定与所述异常节点对应的拦截机制启动,输出将所述拦截机制关闭的异常提示信息;
若所述安全模式状态信息携带有安全标识,则判定与所述异常节点对应的安全模式启动,输出将所述安全模式关闭的异常提示信息;
若所述格式化状态信息未携带格式化标识,则判定所述异常节点未经格式化处理,输出将所述异常节点格式化的异常提示信息。
可选地,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取与所述异常节点对应的ip地址和对应的主机名,并监测所述ip地址和所述主机名之间的映射关系是否绑定成功;
若未绑定成功,则输出将所述映射关系重新绑定的异常提示信息。
可选地,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取所述异常节点中存放的第一id版本号,以及与所述异常节点对应datanode节点中存放的第二id版本号;
判断所述第一id版本号与所述第二id版本号是否一致,若不一致,则输出将所述第一id版本号和所述第二id版本号调整为一致的异常提示信息。
可选地,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取与所述异常节点对应的配置文件,并检测所述配置文件的配置是否成功;
若所述配置文件的配置未成功,则查找所述配置文件中未成功配置的信息,并输出对未成功配置的信息进行重新配置的异常提示信息。
进一步地,为实现上述目的,本发明还提供一种批量启动hadoop集群的系统,所述批量启动hadoop集群的系统包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的控制程序,所述控制程序被所述处理器执行时实现如上所述的批量启动hadoop集群的方法的步骤。
进一步地,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有控制程序,所述控制程序被处理器执行时实现如上所述的批量启动hadoop集群的方法的步骤。
本发明的批量启动hadoop集群的方法、系统及可读存储介质,一旦接收到启动命令,则将该启动命令以并行的方式发送到各个hadoop集群,用以对各个hadoop集群中的namenode节点进行启动,并且设置监测机制,监测各个hadoop集群中的namenode节点是否存在启动失败的异常节点,若存在异常节点,则输出异常提示信息,以提示对异常启动的namenode节点进行异常排查,并且在异常排除后,通过再次启动命令,对该排除异常的节点进行启动,直到各个hadoop集群中的namenode节点均启动成功。以此,确保各个hadoop集群中的各个namenode优先启动,无需等待各个hadoop集群中具有的所有节点均启动,即可控制各个hadoop集群工作,节省了等待各个hadoop集群中所有节点的启动时间,有利于各个hadoop集群整体上处理效率的提高。
附图说明
图1为本发明批量启动hadoop集群的系统实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明批量启动hadoop集群的方法第一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种批量启动hadoop集群的系统。
请参照图1,图1为本发明批量启动hadoop集群的系统实施例方案涉及的硬件运行环境的结构示意图。
如图1所示,该批量启动hadoop集群的系统可以包括处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。
本领域技术人员可以理解,图1中示出的批量启动hadoop集群的系统硬件结构并不构成对批量启动hadoop集群的系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及控制程序。其中,操作系统是管理和控制批量启动hadoop集群的系统与软件资源的程序,支持网络通信模块、用户接口模块、控制程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1004;用户接口模块用于管理和控制用户接口1003。
在图1所示的批量启动hadoop集群的系统硬件结构中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;处理器1001可以调用存储器1005中存储的控制程序,并执行以下操作:
接收启动命令,并将所述启动命令并行发送到多个hadoop集群,对各个所述hadoop集群中的namenode节点进行启动;
监测多个所述hadoop集群中的namenode节点中是否存在启动失败的异常节点,若存在异常节点,则输出异常提示信息;
在与所述异常提示信息对应的异常排除后,若接收到再次启动命令,则基于所述再次启动命令,对所述异常节点进行启动,直到多个所述hadoop集群中的namenode节点均启动成功。
进一步地,所述基于所述再次启动命令,对所述异常节点进行启动的步骤包括:
查找多个所述hadoop集群的namenode节点中未返回心跳的namenode节点,并基于所述再次启动命令,对未返回心跳的所有namenode节点进行启动。
进一步地,所述若存在异常节点,则输出异常提示信息的步骤之后;处理器1001可以调用存储器1005中存储的控制程序,并执行以下操作:
对与启动成功的namenode节点对应的datanode节点进行启动。
进一步地,所述若存在异常节点,则输出异常提示信息的步骤包括:
获取所述异常节点的状态信息,并根据所述状态信息输出异常提示信息,其中所述状态信息包括拦截状态信息、安全模式状态信息以及格式化状态信息。
进一步地,所述根据所述状态信息输出异常提示信息的步骤包括:
若所述拦截状态信息携带有拦截标识,则判定与所述异常节点对应的拦截机制启动,输出将所述拦截机制关闭的异常提示信息;
若所述安全模式状态信息携带有安全标识,则判定与所述异常节点对应的安全模式启动,输出将所述安全模式关闭的异常提示信息;
若所述格式化状态信息未携带格式化标识,则判定所述异常节点未经格式化处理,输出将所述异常节点格式化的异常提示信息。
进一步地,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取与所述异常节点对应的ip地址和对应的主机名,并监测所述ip地址和所述主机名之间的映射关系是否绑定成功;
若未绑定成功,则输出将所述映射关系重新绑定的异常提示信息。
进一步地,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取所述异常节点中存放的第一id版本号,以及与所述异常节点对应datanode节点中存放的第二id版本号;
判断所述第一id版本号与所述第二id版本号是否一致,若不一致,则输出将所述第一id版本号和所述第二id版本号调整为一致的异常提示信息。
进一步地,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取与所述异常节点对应的配置文件,并检测所述配置文件的配置是否成功;
若所述配置文件的配置未成功,则查找所述配置文件中未成功配置的信息,并输出对未成功配置的信息进行重新配置的异常提示信息。
本发明批量启动hadoop集群的系统的实施方式与下述批量启动hadoop集群的方法各实施例基本相同,在此不再赘述。
本发明提供一种批量启动hadoop集群的方法,参照图2,图2为本发明批量启动hadoop集群的方法第一实施例的流程示意图。
本发明实施例提供了批量启动hadoop集群的方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。具体地,本实施例批量启动hadoop集群的方法包括:
步骤S10,接收启动命令,并将所述启动命令并行发送到多个hadoop集群,对各个所述hadoop集群中的namenode节点进行启动;
本实施例批量启动hadoop集群的方法应用于对多个hadoop集群批量启动进行控制的系统的控制中心,hadoop集群至少设置有三台机器,一台作为namenode节点,又称主节点,另两台作为datanode节点,又称从节点。三台机器可以是实际存在的物理机,也可以是虚拟机;无论是物理机还是虚拟机,控制中心可搭载向各个hadoop集群传输数据的设备上,也可搭载在各个hadoop集群共同通信连接的专用启动设备上。例如,对于一个班级的教师与学生之间,各个学生具有各自的hadoop集群,教师具有向各个学生传输数据的设备,控制中心则搭载在该设备上。也可将各个学生各自hadoop集群中的namenode连接到专用启动设备,控制中心搭载在该专用启动设备,控制各个hadoop集群的启动。
进一步地,若具有启动各个hadoop集群,向各个hadoop集群传输数据的需求,则先向控制中心触发启动命令。该启动命令可以由虚拟按键触发,也可以由物理按键触发,对此不作限制。控制中心对该启动命令进行接收,并将其以并行的方式发送到各个hadoop集群。并且,并行方式发送的启动命令可以是完全相同的启动命令,也可以是拆分的不相同命令。例如,对于启动命令F1,若以相同的方式发送,则将F1直接并行转发到各个hadoop集群;若以不同方式发送,则可将F1拆分为F1-1、F1-2、F1-3,···发送到各个hadoop集群。各个hadoop集群在接收到启动命令后,则对各自的namenode节点进行启动。
步骤S20,监测多个所述hadoop集群中的namenode节点中是否存在启动失败的异常节点,若存在异常节点,则输出异常提示信息;
更进一步地,各个hadoop集群在以启动命令对各自的namenode进行启动后,向控制中心返回启动是否成功的反馈信息,该反馈信息优选以间隔某一时间的心跳的形式存在。即,若hadoop集群每间隔一定时间,则向控制中心返回心跳,则判定该hadoop集群的namenode节点启动成功,反之若未返回心跳,或者返回心跳的间隔时间不规律,则判定hadoop集群的namenode节点启动失败。并且,为了表示返回的心跳来源于namenode节点,可在心跳中添加节点标识,控制中心若接收到心跳,先由其中的节点标识判断该心跳是否来源于namenode节点,若来源于namenode节点,则继续监测返回时间是否规律,若规律则判定namenode启动成功,反之,若节点标识非来源于namenode节点,则判定nomenode未启动成功。
进一步地,在所有hadoop集群均返回反馈信息后,控制中心可依据各个反馈信息,确定各个hadoop集群的namenode节点中是否存在启动失败的异常节点。即是否存在未返回心跳、返回心跳不规律的namenode节点,或者返回的心跳非来源于namenode节点。若存在任意一项,则判定各个namenode节点中存在启动识别的异常节点。进而针对异常节点输出异常提示信息,以提示及时对启动失败节点的异常进行排除,确保各个hadoop集群中的namenode节点优先启动。
更进一步地,对于各个hadoop集群中启动成功的nomenode节点,则可对其中的datanode节点进行启动。即在判定存在异常节点输出异常提示信息后,查找与启动成功的namenode节点所对应的datanode节点,该datanode节点与启动成功的namenode属于同一个hadoop集群,进而控制查找到的datanode进行启动,以在确保每一hadoop集群均先启动其中的namenode进行管理维护后,再启动datanode进行工作,避免等所有hadoop集群的namenode节点启动,提高每一hadoop集群的工作效率。
步骤S30,在与所述异常提示信息对应的异常排除后,若接收到再次启动命令,则基于所述再次启动命令,对所述异常节点进行启动,直到多个所述hadoop集群中的namenode节点均启动成功。
进一步地,在输出异常提示信息后,管理人员可依据该异常提示信息对启动失败的namenode节点进行异常排查,并在排查出异常并处理后,触发再次启动命令。并且,该再次启动命令既可以由管理人员人工触发,即,通过虚拟按键或物理按键触发;也可以由控制中心自动触发,即控制中心在监测到异常排除后,自动触发再次启动命令。
更进一步地,控制中心在接收到或者监测到再次启动命令后,则依据该再次启动命令,对异常节点进行启动。其中,异常节点标识记录于存储单元,控制中心通过访问存储单元,确定需要再次启动的namenode节点,进而将再次启动命令以并行的方式发送到各个需要再次启动的namenode,对各个需要再次启动启动的namenode节点进行再次启动。若各个异常节点中还存在再次启动异常的节点,则针对该节点再次输出异常提示信息,并在其异常排除后通过启动命令进行第三次。如此循环,直到各个hadoop集群中的namenode节点均启动成功。
需要说明的是,对于排除异常后异常节点的再次启动,除了将异常节点标识于存储单元外,还可以通过实时监测的心跳确定需要再次启动的异常节点进行启动。具体地,所述基于所述再次启动命令,对所述异常节点进行启动的步骤包括:
步骤a,查找多个所述hadoop集群的namenode节点中未返回心跳的namenode节点,并基于所述再次启动命令,对未返回心跳的所有namenode节点进行启动。
进一步地,对各个hadoop集群中已返回正常心跳的namenode节点进行查找,进而将其他剩余的namenode节点标识为未返回心跳的namenode节点,并将再次启动命令发送到该类标识的未返回心跳的namenode节点,用以对未返回心跳的多有namenode节点进行启动,使得各个hadoop集群中的namenode节点均优先于各自hadoop集群中的datanode节点启动。
本发明的批量启动hadoop集群的方法,一旦接收到启动命令,则将该启动命令以并行的方式发送到各个hadoop集群,用以对各个hadoop集群中的namenode节点进行启动,并且设置监测机制,监测各个hadoop集群中的namenode节点是否存在启动失败的异常节点,若存在异常节点,则输出异常提示信息,以提示对异常启动的namenode节点进行异常排查,并且在异常排除后,通过再次启动命令,对该排除异常的节点进行启动,直到各个hadoop集群中的namenode节点均启动成功。以此,确保各个hadoop集群中的各个namenode优先启动,无需等待各个hadoop集群中具有的所有节点均启动,即可控制各个hadoop集群工作,节省了等待各个hadoop集群中所有节点的启动时间,有利于各个hadoop集群整体上处理效率的提高。
进一步地,基于本发明批量启动hadoop集群的方法的第一实施例,提出本发明批量启动hadoop集群的方法第二实施例。
所述批量启动hadoop集群的方法第二实施例与所述批量启动hadoop集群的方法第一实施例的区别在于,所述若存在异常节点,则输出异常提示信息的步骤包括:
步骤S21,获取所述异常节点的状态信息,并根据所述状态信息输出异常提示信息,其中所述状态信息包括拦截状态信息、安全模式状态信息以及格式化状态信息。
本实施例对namenode节点启动失败的异常原因进行识别,并依据识别的内容输出异常提示信息,以便于管理人员依据异常提示信息中包含的识别内容快速排查启动失败的namenode节点的异常。具体地,对异常节点的状态信息进行获取,该状态信息至少包括拦截状态信息、安全模式状态信息和格式化状态信息,用以体现异常节点的拦截状态、安全模式装着他和格式化状态上的异常性。不同的状态信息对应的异常提示信息不同,在获得到各个异常节点各自的状态信息后,即可依据状态信息输出异常提示信息,以通过异常提示信息反映对应的异常状态,进而便于快速查找到异常进行排除。具体地,根据状态信息输出异常提示信息的步骤包括:
步骤S211,若所述拦截状态信息携带有拦截标识,则判定与所述异常节点对应的拦截机制启动,输出将所述拦截机制关闭的异常提示信息;
步骤S212,若所述安全模式状态信息携带有安全标识,则判定与所述异常节点对应的安全模式启动,输出将所述安全模式关闭的异常提示信息;
步骤S213,若所述格式化状态信息未携带格式化标识,则判定所述异常节点未经格式化处理,输出将所述异常节点格式化的异常提示信息。
进一步地,识别拦截状态信息中是否携带有拦截标识,若携带有拦截标识,则说明异常节点所在hadoop集群的各个节点中,包括namenode节点和datanode节点,存在防护墙未关闭成功的节点。此时,判定与异常节点对应的拦截机制启动,该对应的拦截机制为异常节点所在hadoop集群中未成功关闭防火墙节点的拦截机制。进而识别拦截标识携带的节点号,并将节点号生成为异常提示信息输出,以提醒将具有该节点号的节点的拦截机制关闭。
更进一步地,识别安全模式状态信息中是否携带有安全标识,若携带有安全标识,则说明作为异常节点的namenode节点处于安全模式。namenode在刚开始启动的时候会进入到安全模式,倒计时30s后退出,在安全模式下不能进行增、删、改操作,只能进行查看操作。并且,如果hadoop集群中datanode节点丢失的block块达到一定比例,系统也一直处于安全模式,即只读状态。此时,判定与异常节点对应的安全模式启动,并输出将安全模式关闭的异常提示信息,以提示将异常节点由安全模式切换到普通模式。并且,该切换可通过执行hadoop dfsadmin-safemode leave命令强制异常节点离开安全模式;故可将命令生成为异常提示信息,以便于依据异常提示信息中的该命令快速切换掉安全模式。
进一步地,还对状态信息中的格式化状态信息是否携带格式化标识进行识别,若携带有格式化标识,则说明namenode节点已经过格式化处理;若未携带格式化标识,则说明namenode节点未经格式化处理。此时,输出将异常节点格式化处理的异常提示信息,以提示对因未进行格式化处理的namenode节点而导致异常的异常节点进行格式化处理。格式化处理时先删除hadoop.tmp.dir所对应的目录(即logs和tmp),然后对namenode重新进行格式化。
需要说明的是,拦截状态信息中是否携带拦截标识、安全模式状态信息是否携带安全标识,以及格式化状态信息是否携带格式化标识,可以并行识别,也可以逐一识别,但不可遗漏,以对异常节点的各项状态信息均进行查验,全面排除引起异常的原因,确保异常节点的恢复。
更进一步地,除了拦截、安全模式和格式化的状态可引起namenode节点异常之外,namenode节点的ip地址和主机名的绑定关系,也可导致其异常。具体地,所述若存在异常节点,则输出异常提示信息的步骤包括:
步骤S22,读取与所述异常节点对应的ip地址和对应的主机名,并监测所述ip地址和所述主机名之间的映射关系是否绑定成功;
步骤S23,若未绑定成功,则输出将所述映射关系重新绑定的异常提示信息。
进一步地,对异常节点分配的ip地址和主机名分别进行读取,并查找存储的映射关系中是否存在由该ip地址和主机名形成的映射关系,以ip地址作为查找关键词,查找存储的映射关系中是否存在包含该ip地址的映射关系,若存在该映射关系,则继续识别该映射关系中的主机名是否为异常节点对应的主机名,若为异常节点对应的主机名,则判定ip地址和主机名之间的映射关系绑定成功;反之,若映射关系中不存在包含该ip地址的映射关系,或者虽存在该映射关系,但映射关系中的主机面非异常节点对应的主机名,则判定ip地址和主机面之间的映射关系未绑定成功。需要说明的是,也可将主机名作为关键词对存储的映射关系进行查询,对此不作限定。
更进一步地,在映射关系未绑定成功时,则将ip地址和主机名生成为异常提示信息输出,以提示及时绑定ip地址和主机名之间的映射关系,对异常节点进行恢复。
进一步地,namenode节点的异常性还与其所在hadoop集群中datanode节点的id版本号相关。具体地,所述若存在异常节点,则输出异常提示信息的步骤包括:
步骤S24,读取所述异常节点中存放的第一id版本号,以及与所述异常节点对应datanode节点中存放的第二id版本号;
步骤S25,判断所述第一id版本号与所述第二id版本号是否一致,若不一致,则输出将所述第一id版本号和所述第二id版本号调整为一致的异常提示信息。
更进一步地,读取异常节点中存放的id版本号作为第一id版本号,以及读取异常节点所在hadoop集群中datanode节点的id版本号作为第二id版本号。进而在第一id版本号和第二id版本号之间对比,判断两者是否一致,若一致则说明hadoop集群中namenode节点和datanode节点之间的id版本号一致,处于正常状态。反之,若两者不一致,则说明两者之间的id版本号因不一致而存在异常,从而将第一id版本号和第二id版本号生成为异常提示信息输出,以提示将第一id版本号和第二id版本号调整为一致。
可理解地,第一id版本号和第二id版本号,可以是针对其中某一项的调整,也可以是针对两项的同时调整。但无论是其中一项的调整还是两项的同时调整,均需要确保其唯一性。例如,可先判断第一id版本号是否存在重复的id版本号,以及第二id版本号是否存在重复的id版本号。若仅第一id版本号存在重复性,则输出将第一id版本号调整为第二id版本号的异常提示信息。同样地,若仅第二id版本号存在重复性,则输出将第二id版本号调整为第一id版本号的异常提示信息。若第一id版本号和第二id版本号均存在重复性,则输出针对第一id版本号和第二id版本号重新设定新的id版本号的异常提示信息。若第一id版本号和第二id版本号均不存在重复性,则输出将第一id版本号和第二id版本号任一项调整为另一项的异常提示信息。以此,确保第一id版本号和第二id版本号之间的唯一且一致性。
进一步地,本实施例中nomenode节点的异常性还namenode节点的配置文件相关。具体地,所述若存在异常节点,则输出异常提示信息的步骤包括:
步骤S26,读取与所述异常节点对应的配置文件,并检测所述配置文件的配置是否成功;
步骤S27,若所述配置文件的配置未成功,则查找所述配置文件中未成功配置的信息,并输出对未成功配置的信息进行重新配置的异常提示信息。
更进一步地,先对异常节点的配置文件进行读取,包括但不限于hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml和slaves,进而检查各个配置文件是否配置成功。具体地,可预先设置需配置的文件列表,通过列表检查读取的配置文件中是否缺少某一文件。同时,可在列表中列明各个配置文件需要配置的参考内容,将各个配置文件实际配置的内容与对应的参考内容对比,判断实际配置的内容是否相对于参考内容缺少任一项项内容。
进一步地,若经检测缺少某一配置文件和/或某一配置文件中缺少任一项内容,则判定配置文件配置未成功,并且查找缺少的配置文件和/或所有缺少的配置内容,进而将查找到的信息作为未成功配置的信息生成异常提示信息输出,以提示对该类未成功配置的信息进行重新配置。即提示新增缺少的配置文件和/或配置文件中缺少的所有配置内容,以确保namenode节点配置文件的正确性。
本实施例对可引起namenode节点异常的拦截状态、安全模式、格式化状态、ip地址与主机名的绑定关系、id版本号的对应性,以及配置文件等各项信息进行检测,并根据检测结果生成对应的异常提示信息输出,在确保检测全面性的同时,有利于快速查找到异常点进行排除,进而有利于异常namenode节点的快速恢复。
本发明实施例还提出一种可读存储介质。所述可读存储介质上存储有控制程序,所述控制程序被所述处理器执行时实现如上所述批量启动hadoop集群的方法的步骤。
本发明可读存储介质可以为计算机可读存储介质,其具体实施方式与上述批量启动hadoop集群的方法各实施例基本相同,在此不再赘述。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。

Claims (10)

1.一种批量启动hadoop集群的方法,其特征在于,所述批量启动hadoop集群的方法包括:
接收启动命令,并将所述启动命令并行发送到多个hadoop集群,对各个所述hadoop集群中的namenode节点进行启动;
监测多个所述hadoop集群中的namenode节点中是否存在启动失败的异常节点,若存在异常节点,则输出异常提示信息;
在与所述异常提示信息对应的异常排除后,若接收到再次启动命令,则基于所述再次启动命令,对所述异常节点进行启动,直到多个所述hadoop集群中的namenode节点均启动成功。
2.如权利要求1所述的批量启动hadoop集群的方法,其特征在于,所述基于所述再次启动命令,对所述异常节点进行启动的步骤包括:
查找多个所述hadoop集群的namenode节点中未返回心跳的namenode节点,并基于所述再次启动命令,对未返回心跳的所有namenode节点进行启动。
3.如权利要求1所述的批量启动hadoop集群的方法,其特征在于,所述若存在异常节点,则输出异常提示信息的步骤之后包括:
对与启动成功的namenode节点对应的datanode节点进行启动。
4.如权利要求1所述的批量启动hadoop集群的方法,其特征在于,所述若存在异常节点,则输出异常提示信息的步骤包括:
获取所述异常节点的状态信息,并根据所述状态信息输出异常提示信息,其中所述状态信息包括拦截状态信息、安全模式状态信息以及格式化状态信息。
5.如权利要求4所述的批量启动hadoop集群的方法,其特征在于,所述根据所述状态信息输出异常提示信息的步骤包括:
若所述拦截状态信息携带有拦截标识,则判定与所述异常节点对应的拦截机制启动,输出将所述拦截机制关闭的异常提示信息;
若所述安全模式状态信息携带有安全标识,则判定与所述异常节点对应的安全模式启动,输出将所述安全模式关闭的异常提示信息;
若所述格式化状态信息未携带格式化标识,则判定所述异常节点未经格式化处理,输出将所述异常节点格式化的异常提示信息。
6.如权利要求1-5任一项所述的批量启动hadoop集群的方法,其特征在于,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取与所述异常节点对应的ip地址和对应的主机名,并监测所述ip地址和所述主机名之间的映射关系是否绑定成功;
若未绑定成功,则输出将所述映射关系重新绑定的异常提示信息。
7.如权利要求1-5任一项所述的批量启动hadoop集群的方法,其特征在于,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取所述异常节点中存放的第一id版本号,以及与所述异常节点对应datanode节点中存放的第二id版本号;
判断所述第一id版本号与所述第二id版本号是否一致,若不一致,则输出将所述第一id版本号和所述第二id版本号调整为一致的异常提示信息。
8.如权利要求1-5任一项所述的批量启动hadoop集群的方法,其特征在于,所述若存在异常节点,则输出异常提示信息的步骤包括:
读取与所述异常节点对应的配置文件,并检测所述配置文件的配置是否成功;
若所述配置文件的配置未成功,则查找所述配置文件中未成功配置的信息,并输出对未成功配置的信息进行重新配置的异常提示信息。
9.一种批量启动hadoop集群的系统,其特征在于,所述批量启动hadoop集群的系统包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的控制程序,所述控制程序被所述处理器执行时实现如权利要求1-8中任一项所述的批量启动hadoop集群的方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有控制程序,所述控制程序被处理器执行时实现如权利要求1-8中任一项所述的批量启动hadoop集群的方法的步骤。
CN202111476598.8A 2021-12-06 2021-12-06 批量启动hadoop集群的方法、系统及可读存储介质 Pending CN114205231A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111476598.8A CN114205231A (zh) 2021-12-06 2021-12-06 批量启动hadoop集群的方法、系统及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111476598.8A CN114205231A (zh) 2021-12-06 2021-12-06 批量启动hadoop集群的方法、系统及可读存储介质

Publications (1)

Publication Number Publication Date
CN114205231A true CN114205231A (zh) 2022-03-18

Family

ID=80650562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111476598.8A Pending CN114205231A (zh) 2021-12-06 2021-12-06 批量启动hadoop集群的方法、系统及可读存储介质

Country Status (1)

Country Link
CN (1) CN114205231A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173302A1 (en) * 2010-01-13 2011-07-14 Vmware, Inc. Cluster Configuration
US20140040575A1 (en) * 2012-08-01 2014-02-06 Netapp, Inc. Mobile hadoop clusters
CN103986789A (zh) * 2014-06-05 2014-08-13 浪潮电子信息产业股份有限公司 一种实现基于nfs的hadoop ha集群中nfs节点双机冗余的方法
CN105337765A (zh) * 2015-10-10 2016-02-17 上海新炬网络信息技术有限公司 一种分布式hadoop集群故障自动诊断修复系统
CN105703940A (zh) * 2015-12-10 2016-06-22 中国电力科学研究院 一种面向多级调度分布式并行计算的监控系统及监控方法
US20170116084A1 (en) * 2015-10-26 2017-04-27 Beijing Baidu Netcom Science And Technology, Ltd. Method and System for Monitoring Virtual Machine Cluster
CN106911524A (zh) * 2017-04-27 2017-06-30 紫光华山信息技术有限公司 一种ha实现方法及装置
CN109697193A (zh) * 2017-10-24 2019-04-30 中兴通讯股份有限公司 一种确定异常节点的方法、节点及计算机可读存储介质
CN111800468A (zh) * 2020-06-05 2020-10-20 腾讯科技(深圳)有限公司 一种基于云的多集群管理方法、装置、介质及电子设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173302A1 (en) * 2010-01-13 2011-07-14 Vmware, Inc. Cluster Configuration
US20140040575A1 (en) * 2012-08-01 2014-02-06 Netapp, Inc. Mobile hadoop clusters
CN103986789A (zh) * 2014-06-05 2014-08-13 浪潮电子信息产业股份有限公司 一种实现基于nfs的hadoop ha集群中nfs节点双机冗余的方法
CN105337765A (zh) * 2015-10-10 2016-02-17 上海新炬网络信息技术有限公司 一种分布式hadoop集群故障自动诊断修复系统
US20170116084A1 (en) * 2015-10-26 2017-04-27 Beijing Baidu Netcom Science And Technology, Ltd. Method and System for Monitoring Virtual Machine Cluster
CN105703940A (zh) * 2015-12-10 2016-06-22 中国电力科学研究院 一种面向多级调度分布式并行计算的监控系统及监控方法
CN106911524A (zh) * 2017-04-27 2017-06-30 紫光华山信息技术有限公司 一种ha实现方法及装置
CN109697193A (zh) * 2017-10-24 2019-04-30 中兴通讯股份有限公司 一种确定异常节点的方法、节点及计算机可读存储介质
CN111800468A (zh) * 2020-06-05 2020-10-20 腾讯科技(深圳)有限公司 一种基于云的多集群管理方法、装置、介质及电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WEIXIN_39686230: "hadoop中namenode无法启动的原因有哪些", 《CSDN》, pages 1 *

Similar Documents

Publication Publication Date Title
KR102493449B1 (ko) 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체
US11157373B2 (en) Prioritized transfer of failure event log data
US7574627B2 (en) Memory dump method, memory dump program and computer system
US20150100829A1 (en) Method and system for selecting and executing test scripts
US20150100832A1 (en) Method and system for selecting and executing test scripts
EP3591485B1 (en) Method and device for monitoring for equipment failure
US9311170B2 (en) System, method and program tool to reset an application
CN112506915B (zh) 一种应用数据的管理系统以及处理方法、装置和服务器
US20150100830A1 (en) Method and system for selecting and executing test scripts
US20150100831A1 (en) Method and system for selecting and executing test scripts
CN110895488B (zh) 任务调度方法及装置
CN113312153B (zh) 一种集群部署方法、装置、电子设备及存储介质
CN113014445B (zh) 用于服务器的运维方法、装置、平台及电子设备
CN111190823A (zh) Ui自动化测试方法、电子装置及计算机可读存储介质
CN110063042A (zh) 一种数据库故障的响应方法及其终端
CN107783844A (zh) 一种计算机程序运行异常检测方法、装置和介质
JP2012003651A (ja) 仮想化環境監視装置とその監視方法およびプログラム
CN106708727B (zh) 一种分布式病毒特征样本验证方法及系统
CN113157411B (zh) 一种基于Celery的可靠可配置任务系统及装置
KR102194974B1 (ko) 프로세스 검증 기능이 구비된 전력 계통 감시 및 제어 시스템
US20110320409A1 (en) Guaranteed in-flight sql insert operation support during an rac database failover
CN112261114A (zh) 一种数据备份系统及方法
US9354962B1 (en) Memory dump file collection and analysis using analysis server and cloud knowledge base
CN114205231A (zh) 批量启动hadoop集群的方法、系统及可读存储介质
CN116244186A (zh) 一种操作系统测试管理方法、装置与计算设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination