CN104601366B - 一种控制、服务节点配置服务的方法及装置 - Google Patents
一种控制、服务节点配置服务的方法及装置 Download PDFInfo
- Publication number
- CN104601366B CN104601366B CN201410735999.4A CN201410735999A CN104601366B CN 104601366 B CN104601366 B CN 104601366B CN 201410735999 A CN201410735999 A CN 201410735999A CN 104601366 B CN104601366 B CN 104601366B
- Authority
- CN
- China
- Prior art keywords
- service
- node
- configuration
- profiles
- abstract
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种控制、服务节点配置服务的方法及装置,包括控制节点比较包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要,在不一致时,发送服务配置文件至服务节点进行配置;检查到有待配置的服务节点时,比较服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要,在不一致时,发送服务配置文件至服务节点进行配置;在服务节点服务启动时,比较从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要,不一致时,远程拉取控制节点存储的服务配置文件进行配置。采用本发明提供的技术方案,能够保证服务节点与控制节点的配置一致,进而保证服务节点间配置的一致。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种控制、服务节点配置服务的方法及装置。
背景技术
集群系统是由多个互相独立的服务器组成的作为一个整体的系统,通过集群系统可以将物理上分散的服务以一种统一的方式提供给用户使用,通过这种方式可以有效的提升性能,在单个服务器出现故障的时候,集群不会中断服务,同时可以有效的提供扩展性。
集群系统中使用的服务器通常可以分为控制节点和服务节点,控制节点负责生成服务配置文件,并对服务节点进行管理;服务节点是提供具体服务的节点,服务节点接收控制节点发送的服务配置文件,并根据服务配置文件完成服务配置。将控制节点上包含新配置内容的服务配置文件在服务节点上完成配置,服务节点将按照新配置的内容运行,否则还是按照原有的配置内容运行。
在集群系统中要保障所有服务器的行为一致,要求所有集群服务的配置一致,在对集群系统的服务进行配置时,要保障所有服务器上的服务配置有效同步。
现有的集群配置同步方法有很多种,通常是控制节点将服务配置文件下发至服务节点进行服务配置,在服务配置文件下发的过程中,可能存在一些情况,比如:某些服务节点处于宕机和/或无法连接的状态、某些服务节点在下发过程中新加入集群、某些服务节点在配置期间同步失败、某些服务节点没有正确获取配置等等;这些服务节点在启动服务时,将仍然按照原有的服务配置文件进行运行,从而导致集群中的服务节点的配置不一致。
现有技术的不足在于:现有的集群配置同步的方法不能保证集群中的服务节点的实际配置与控制节点的配置是一样的,即各个服务节点的配置是不一致的。
发明内容
本发明实施例中提供了一种控制、服务节点配置服务的方法及装置,用以解决各服务节点配置与控制节点的配置不一致而导致的集群配置不同步的问题。
本发明实施例中提供了一种控制节点配置服务的方法,包括步骤:
确定包含新配置内容的服务配置文件摘要;
在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,发送控制节点存储的包含新配置内容的服务配置文件至服务节点,所述服务节点根据所述服务配置文件进行服务配置。
本发明实施例中提供了一种控制节点配置服务的装置,包括:
摘要确定模块,用于确定包含新配置内容的服务配置文件摘要;
第一配置模块,用于在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,发送控制节点存储的包含新配置内容的服务配置文件至服务节点,所述服务节点根据所述服务配置文件进行服务配置。
有益效果是:
本发明实施例提供的技术方案中,通过控制节点比较包含新配置内容的服务配置文件摘要与其上存储的当前服务节点使用的服务配置文件摘要,在两者不一致时,发送服务配置文件至服务节点,服务节点根据服务配置文件进行配置。利用比较包含新配置内容的服务配置文件摘要与当前摘要,发现有不同时直接发送服务配置文件至服务节点,使服务节点的服务配置与控制节点的服务配置相统一,进而能够保证集群系统中的多个服务节点的配置一致。
本发明实施例中还提供了一种控制节点配置服务的方法,包括步骤:
检测到有服务节点待配置时,获取所述服务节点当前服务的服务配置文件摘要;
在服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要不一致时,将控制节点存储的服务配置文件发送至待配置的服务节点,所述待配置的服务节点根据所述服务配置文件进行服务配置。
本发明实施例中提供了一种控制节点配置服务的装置,包括:
第一获取模块,用于检测到有服务节点待配置时,获取所述服务节点当前服务的服务配置文件摘要;
发送模块,用于在服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要不一致时,将控制节点存储的服务配置文件发送至待配置的服务节点,所述待配置的服务节点根据所述服务配置文件进行服务配置。
有益效果是:
本发明实施例提供的技术方案中,通过控制节点检测待配置的服务节点,检测到有服务节点待配置时,比较从服务节点获取的当前服务的服务配置文件摘要与控制节点的服务配置文件摘要,在两者不一致时,发送服务配置文件至服务节点,服务节点根据服务配置文件进行配置。利用控制节点检测,使待配置服务节点都能够被配置,即使服务节点之前处于无法连接的状态,在连接之后,被控制节点检测到待配置仍能够被配置,从而能够保证集群系统中的多个服务节点的配置一致。
本发明实施例中又提供了一种服务节点配置服务的方法,包括步骤:
在服务启动时,获取控制节点存储的服务配置文件摘要,所述服务配置文件摘要是根据控制节点存储的用于配置服务节点服务的服务配置文件生成的;
在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要不一致时,远程拉取控制节点存储的服务配置文件,所述服务配置文件包含服务节点中待配置的配置内容;
根据所述服务配置文件对服务节点的服务进行配置。
本发明实施例中提供了一种服务节点配置服务的装置,包括:
第二获取模块,用于在服务启动时,获取控制节点存储的服务配置文件摘要,所述服务配置文件摘要是根据控制节点存储的用于配置服务节点服务的服务配置文件生成的;
拉取模块,用于在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要不一致时,远程拉取控制节点存储的服务配置文件,所述服务配置文件包含服务节点中待配置的配置内容;
第二配置模块,用于根据所述服务配置文件对服务节点的服务进行配置。
有益效果是:
本发明实施例提供的技术方案中,通过在服务启动的时候,服务节点比较从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要,在两者不一致时,远程拉取服务配置文件进行配置。利用服务节点在服务启动时主动比较服务配置文件摘要和拉取服务配置文件,对服务节点的服务进行配置,即使服务节点之前处于宕机状态,再开机后启动服务时,仍能够获取服务配置文件进行配置,从而能够保证服务节点的服务配置与控制节点的配置是一致的,进而保证集群系统中的多个服务节点的配置一致。
附图说明
下面将参照附图描述本发明的具体实施例,其中:
图1为本发明实施例中控制节点配置服务的第一方法实施的流程示意图;
图2为本发明实施例中控制节点进行服务配置的工作流程示意图;
图3为本发明实施例中集群服务配置同步的简易流程示意图;
图4为本发明实施例中全局配置文件的生成流程示意图;
图5为本发明实施例中控制节点配置服务的装置的结构示意图;
图6为本发明实施例中控制节点配置服务的第二方法实施的流程示意图;
图7为本发明实施例中定时配置服务节点服务的工作流程示意图;
图8为本发明实施例中控制节点配置服务的装置的结构示意图;
图9为本发明实施例中服务节点配置服务的方法实施的流程示意图;
图10为本发明实施例中服务节点得到服务配置文件后的工作流程示意图;
图11为本发明实施例中服务节点在服务启动时的工作流程示意图;
图12为本发明实施例中服务节点配置服务的装置的结构示意图。
具体实施方式
为了使本发明实施例中的技术方案及优点更加清楚明白,以下结合附图对本发明的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本发明的一部分实施例,而不是所有实施例的穷举。
针对现有技术的不足,本发明实施例中提供了一种控制、服务节点配置服务的方法及装置,来实现各服务节点配置与控制节点的配置一致,即集群配置同步。下面进行说明。
图1为本发明实施例中控制节点配置服务的第一方法实施的流程示意图,如图所示,可以包括步骤:
步骤101、确定包含新配置内容的服务配置文件摘要;
步骤102、在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,发送控制节点存储的包含新配置内容的服务配置文件至服务节点,所述服务节点根据所述服务配置文件进行服务配置。
本发明实施例提供的技术方案中,通过控制节点比较包含新配置内容的服务配置文件摘要与其上存储的当前服务节点使用的服务配置文件摘要,在两者不一致时,发送服务配置文件至服务节点,服务节点根据服务配置文件进行配置。利用比较包含新配置内容的服务配置文件摘要与当前摘要,发现有不同时直接发送服务配置文件至服务节点,使服务节点的服务配置与控制节点的服务配置相统一,进而能够保证集群系统中的多个服务节点的配置一致。
实施中,在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,可以进一步包括:
将控制节点存储的当前服务节点使用的服务配置文件摘要替换为包含新配置内容的服务配置文件摘要。
具体实施中,将包含新配置内容的服务配置文件摘要替换原有服务配置文件摘要,可以保证下一次比较的正确性。
实施中,在发送控制节点存储的包含新配置内容的服务配置文件至服务节点时,可以包括步骤:
确定服务节点列表中是否有待配置的服务节点,所述服务节点列表包含多个待配置的服务节点;
在有服务节点待配置时,将包含新配置内容的服务配置文件发送至所述待配置服务节点;
远程调用服务节点启动配置操作。
实施中,在服务节点根据所述服务配置文件进行服务配置成功后,可以进一步包括:
将所述配置成功的服务节点从服务节点列表中删除。
具体实施中,将配置成功的服务节点从服务节点列表中删除,使服务节点列表中保存的均是未被配置或配置失败的服务节点,有利于对服务节点进行管理。
实施中,可以进一步包括:
生成包含新配置的全局配置文件,所述全局配置文件用于存储集群中全部服务节点和全部控制节点的服务配置;
确定全局配置文件中新配置的配置内容;
根据确定的新配置的配置内容和服务节点服务对应的格式生成用于配置服务节点服务的服务配置文件;
根据服务配置文件生成服务配置文件摘要。
具体实施中,服务使用的配置文件可以从全局配置文件生成,由于每一种服务的配置文件格式不可能完全相同,所以生成服务配置文件时,可以先从全局配置文件读取配置内容,然后根据不同的服务生成不同的服务配置文件,进而生成服务配置文件摘要。
服务配置文件摘要可以是使用MD5(Message-Digest Algorithm 5,信息摘要算法5)得来的,也可以是使用SHA(Secure Hash Algorithm安全散列算法)算法计算得来。另外,生成的服务配置文件摘要可以保存在内存中,也可以保存在其他存储位置,本发明对此不作限制。
实施中,所述生成包含新配置的全局配置文件可以包括如下步骤:
确定待配置的服务是否被配置过;
若被配置过,则根据新配置的服务内容修改当前全局配置文件,得到包含新配置的全局配置文件;
若未被配置过,则将新配置的服务内容添加至当前全局配置文件中,得到包含新配置的全局配置文件。
具体实施中,生成全局配置文件时,若服务被配置过,那么可以仅对全局配置文件做修改;若未被配置过,则添加新的配置内容生成全局配置文件。
这样的处理方式,可以减少生成全局配置文件时不必要的资源消耗。
实施中,所述生成包含新配置的全局配置文件之前,可以进一步包括:
保存当前全局配置文件的备份。
具体实施中,全局配置文件可以使用标准的XML解析器生成,并且可以以XML格式进行存储。全局配置文件的根标签可以为<global></global>,在根标签下可以创建服务标签,每一个服务标签代表了集群中的一种服务,该服务的所有配置项都可以以服务标签的子标签进行存储。
通过保存当前全局配置文件的备份,在配置失败时还原服务节点中的服务配置,能够保证各个服务节点服务的正常运行,不会在配置失败后出现服务停止、混乱等情况,保障了整个集群系统的稳定性。
实施中,所述待配置的服务节点根据服务配置文件配置失败时,可以进一步包括:
根据所述全局配置文件的备份还原控制节点和服务节点中的服务配置。
具体实施中,通过保存当前全局配置文件的备份,在配置失败时还原服务节点中的服务配置,能够保证各个服务节点服务的正常运行,不会在配置失败后出现服务停止、混乱等情况,保障了整个集群系统的稳定性。
下面以实例对实施例提供的方法的使用进行说明。一个实例用以说明控制节点进行服务配置的工作过程,一个实例用以说明集群服务配置同步的简易过程,一个实例用以说明全局配置文件的生成过程。
图2为本发明实施例中控制节点进行服务配置的工作流程示意图,如图所示,可以包括以下步骤:
步骤201、生成包含新配置的服务配置文件摘要;
步骤202、判断新摘要与当前摘要是否一致;
若是,则结束;
若不是,则执行步骤203;
步骤203、更新控制节点服务配置文件摘要;
步骤204、判断是否还有剩余服务节点未配置;
若否,则结束;
若是,则执行步骤205;
步骤205、选择服务节点列表中第一个节点;
步骤206、将服务配置文件远程发送到该服务节点;
步骤207、远程调用服务节点进行服务配置;
步骤208、将当前服务节点从服务节点列表中删除;后重新判断是否还有剩余服务节点未配置。
具体实施中,控制节点通过对服务节点列表中未被配置的服务节点进行配置,保证未被配置的服务节点都可以被配置到,避免了有些服务节点处于宕机状态时无法被配置的情况,保证了服务节点间配置的一致性。
图3为本发明实施例中集群服务配置同步的简易流程示意图,如图所示,可以包括以下步骤:
步骤301、控制节点生成全局配置文件;
步骤302、控制节点生成服务配置文件;
步骤303、控制节点生成服务配置文件摘要;
步骤304、服务节点应用服务配置。
具体实施中,控制节点可以生成对服务节点进行配置的各种文件,例如全局配置文件、服务配置文件、服务配置文件摘要等,服务节点可以根据服务配置文件对服务进行配置。
图4为本发明实施例中全局配置文件的生成流程示意图,如图所示,可以包括以下步骤:
步骤401、判断全局配置文件是否合法;
若不合法,则结束;
若合法,执行步骤402;
步骤402、判断待配置的服务否被配置过;
若被配置过,则执行步骤403;
若未被配置过,则执行步骤404;
步骤403、根据服务配置修改全局配置文件;之后,执行步骤406;
步骤404、创建服务配置标签;
步骤405、根据服务配置创建全局配置文件;之后,执行步骤406;
步骤406、判断是否配置成功;
若是,则结束;
若否,则执行步骤407;
步骤407、配置回滚。
具体实施中,生成全局配置文件的过程通过对待配置服务是否被配置过进行区别对待,若配置过则修改全局配置文件,而不是重新创建全局配置文件,减少了不必要的计算消耗和存储消耗。在配置失败后支持配置回滚,保证了集群服务的稳定性。
基于同一发明构思,本发明实施例中还提供了一种控制节点配置服务的装置,由于装置解决问题的原理与一种控制节点配置服务的方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
图5为本发明实施例中控制节点配置服务的装置的结构示意图,如图所示,可以包括:
摘要确定模块501,用于确定包含新配置内容的服务配置文件摘要;
第一配置模块502,用于在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,发送控制节点存储的包含新配置内容的服务配置文件至服务节点,所述服务节点根据所述服务配置文件进行服务配置。
实施中,可以进一步包括:
替换模块503,用于在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,将控制节点存储的当前服务节点使用的服务配置文件摘要替换为包含新配置内容的服务配置文件摘要。
实施中,第一配置模块502可以包括:
服务节点确定单元5021,用于在发送控制节点存储的包含新配置内容的服务配置文件至服务节点时,确定服务节点列表中是否有待配置的服务节点,所述服务节点列表包含多个待配置的服务节点;
配置文件发送单元5022,用于在有服务节点待配置时,将包含新配置内容的服务配置文件发送至所述待配置服务节点;
调用单元5023,用于远程调用服务节点启动配置操作。
实施中,可以进一步包括:
第一删除模块504,用于在服务节点根据所述服务配置文件进行服务配置成功后,将所述配置成功的服务节点从服务节点列表中删除。
实施中,可以进一步包括:
第一生成模块505,用于生成包含新配置的全局配置文件,所述全局配置文件用于存储集群中全部服务节点和全部控制节点的服务配置;
第一确定模块506,用于确定全局配置文件中新配置的配置内容;
第一生成模块505进一步用于根据确定的新配置的配置内容和服务节点服务对应的格式生成用于配置服务节点服务的服务配置文件;
第一生成模块505进一步用于根据服务配置文件生成服务配置文件摘要。
实施中,第一生成模块可以包括:
第一确定单元5051,用于确定待配置的服务是否被配置过;
第一修改单元5052,用于在配置确定单元确定待配置的服务已被配置过,则根据新配置的服务内容修改当前全局配置文件,得到包含新配置的全局配置文件;
第一添加单元5053,用于在确定单元确定待配置的服务未被配置过,则将新配置的服务内容添加至当前全局配置文件中,得到包含新配置的全局配置文件。
实施中,可以进一步包括:
第一备份模块507,用于生成包含新配置的全局配置文件之前,保存当前全局配置文件的备份。
实施中,可以进一步包括:
第一还原模块508,用于待配置的服务节点根据服务配置文件配置失败时,根据所述全局配置文件的备份还原控制节点和服务节点中的服务配置。
图6为本发明实施例中控制节点配置服务的第二方法实施的流程示意图,如图所示,可以包括步骤:
步骤601、检测到有服务节点待配置时,获取所述服务节点当前服务的服务配置文件摘要;
步骤602、在服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要不一致时,将控制节点存储的服务配置文件发送至待配置的服务节点,所述待配置的服务节点根据所述服务配置文件进行服务配置。
本发明实施例提供的技术方案中,通过控制节点检测待配置的服务节点,检测到有服务节点待配置时,比较从服务节点获取的当前服务的服务配置文件摘要与控制节点的服务配置文件摘要,在两者不一致时,发送服务配置文件至服务节点,服务节点根据服务配置文件进行配置。通过检测服务节点是否未配置,使待配置服务节点都能够被配置,即使服务节点之前处于无法连接的状态,在连接之后,被控制节点检测到待配置仍能够被配置,从而能够保证集群系统中的多个服务节点的配置一致。
实施中,可以进一步包括:
定时检测是否有待配置的服务节点。
具体实施中,可以启动定时任务,可以定时遍历所有服务节点,检测服务节点的配置情况,检测到有服务节点未被配置,则主动拉取服务配置文件进行配置。
采用定时检测的方式,可以防止在服务配置过程中服务节点处于无法连接的状态而不能被有效配置的问题。遍历的方式也可以充分了解每个服务节点的配置状况,使每个服务节点都被检查到,根据各服务节点的配置情况可以方便后续管理。
实施中,在服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要不一致时,可以进一步包括:
确定对待配置服务节点进行服务配置的失败次数是否超过预设阈值;
在超过所述预设阈值时,将服务节点标记为不可用,并不再对待配置的服务节点进行服务配置。
具体实施中,可以对待配置的服务节点记录被配置的失败次数,当该失败次数超过一定的阈值时,表明该服务节点到此次配置为止均未配置成功,可以将该服务节点标记为不可用,此后也不再对该服务节点进行服务配置。通过设定阈值和进行标记的方式,保证服务配置的有效性,减少不必要的工作量,节省资源开销,对标记为不可用的服务节点,可以有针对性的进行检修,提高了效率。
实施中,可以进一步包括:对未超过所述预设阈值且配置成功的服务节点,将所述服务节点对应的服务配置失败次数清零。
具体实施中,将配置成功的服务节点的服务配置失败次数清零,使能够连接的服务节点都能够被准确配置,而不因服务配置失败次数超过阈值而无法被配置。
实施中,在待配置的服务节点根据所述服务配置文件进行服务配置之后或被标记为不可用之后,可以进一步包括:
将所述服务节点从服务节点列表中删除,所述服务节点列表包含多个待配置的服务节点。
具体实施中,可以采用服务节点列表的方式来表示待配置的服务节点的集合,当某一个服务节点被成功配置之后,可以将其从服务节点列表中删除,这样,在服务节点列表中存在的服务节点即为未配置的服务节点。这样可以对未配置的服务节点进行有效的管理,是一种优选实施方式。本发明实施例中采用服务节点列表的方式仅为方便本领域技术人员理解和使用,本领域技术人员还可以采用其他方式,本发明对此不作限制。
下面以实例对实施例提供的方法的使用进行说明。
图7为本发明实施例中定时配置服务节点服务的工作流程示意图,如图所示,可以包括以下步骤:
步骤701、启动定时任务;
步骤702、服务节点列表中是否还有待配置的服务节点;
若否,则结束;
若是,则执行步骤703;
步骤703、获取服务节点服务配置文件摘要;
步骤704、判断控制节点与服务节点的服务配置文件摘要是否一致;
若是,则执行步骤705;
若否,则执行步骤706;
步骤705、删除服务节点列表中第一个服务节点;
实施中,可以按照服务节点列表中的顺序对服务节点进行配置,所以,第一个服务节点配置完成后删除第一个服务节点。
步骤706、判断配置失败的失败次数是否超出阈值;
若是,则执行步骤707;
若否,则执行步骤708;
步骤707、将服务节点状态置为不可用;之后删除服务节点列表中第一个节点;
步骤708、服务节点升级服务配置;
步骤709、判断配置是否成功;
若是,则执行步骤710;
若否,则删除服务节点列表中第一个服务节点;
步骤710、将配置失败失败次数清零;之后删除服务节点列表中第一个服务节点。
具体实施中,本发明实施例中控制节点配置服务的方法中可以采用定时检测服务节点列表的方式,检测到待配置服务节点后对其进行配置。并且,通过设置阈值,对配置失败的服务节点进行标记的方式,减少不必要的工作,使配置更有针对性,且在高效率的前提下保证服务节点的配置一致性。
基于同一发明构思,本发明实施例中还提供了一种控制节点配置服务的装置,由于装置解决问题的原理与一种控制节点配置服务的方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
图8为本发明实施例中控制节点配置服务的装置的结构示意图,如图所示,可以包括:
第一获取模块801,用于检测到有服务节点待配置时,获取所述服务节点当前服务的服务配置文件摘要;
发送模块802,用于在服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要不一致时,将控制节点存储的服务配置文件发送至待配置的服务节点,所述待配置的服务节点根据所述服务配置文件进行服务配置。
实施中,可以进一步包括:
定时模块803,用于定时检测是否有待配置的服务节点。
实施中,可以进一步包括:
阈值模块804,用于在服务节点当前服务的服务配置文件摘要与控制节点存储的服务配置文件摘要不一致时,确定对待配置服务节点进行服务配置的失败次数是否超过预设阈值;
标记模块805,用于在阈值模决确定服务配置的失败次数超过所述预设阈值时,将服务节点标记为不可用,并不再对待配置的服务节点进行服务配置。
实施中,可以进一步包括:
清零模块806,用于对未超过所述预设阈值且配置成功的服务节点,将所述服务节点对应的服务配置失败次数清零。
实施中,可以进一步包括:
第二删除模块807,用于在待配置的服务节点根据所述服务配置文件进行服务配置之后或被标记为不可用之后,将所述服务节点从服务节点列表中删除,所述服务节点列表包含多个待配置的服务节点。
图9为服务节点配置服务的方法实施的流程示意图,如图所示,可以包括步骤:
步骤901、在服务启动时,获取控制节点存储的服务配置文件摘要,所述服务配置文件摘要是根据控制节点存储的用于配置服务节点服务的服务配置文件生成的;
步骤902、在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要不一致时,远程拉取控制节点存储的服务配置文件,所述服务配置文件包含服务节点中待配置的配置内容;
步骤903、根据所述服务配置文件对服务节点的服务进行配置。
具体实施中,在服务配置的过程中,通过服务配置文件摘要的对比,可以实现服务配置文件中配置内容一致性的验证,可以只在服务配置文件的配置内容不一致时,才进行配置同步,减少了集群中服务配置过程中不必要的资源开销。
本发明实施例提供的技术方案中,通过在服务启动的时候,服务节点比较从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要,在两者不一致时,远程拉取服务配置文件进行配置。利用服务节点在服务启动时主动比较服务配置文件摘要和主动拉取服务配置文件,对服务节点的服务进行配置,即使服务节点之前处于宕机状态,再开机后启动服务时,仍能够获取服务配置文件进行配置,从而能够保证服务节点的服务配置与控制节点的配置是一致的,进而保证集群系统中的多个服务节点的配置一致。
实施中,可以进一步包括:
在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要相一致时,或根据所述服务配置文件对服务节点的服务配置成功后,启动服务。
具体实施中,在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要相一致时,则不需要拉取控制节点存储的服务配置文件,并启动服务;在根据从控制节点获取的服务配置文件对服务节点进行配置之后,启动服务。
下面以实例对实施例提供的方法的使用进行说明,一个实例用以说明服务节点获取到服务配置文件后的工作过程,一个实例用以说明服务节点在服务启动时的工作过程。
图10为本发明实施例中服务节点得到服务配置文件后的工作流程示意图,如图所示,可以包括以下步骤:
步骤1001、判断是否需要停止当前服务;
若需要停止,则执行步骤1002;
若不需要停止,则执行步骤1005;
步骤1002、停止当前服务;
步骤1003、在停止当前服务后,替换当前服务配置文件为新获取的服务配置文件;
步骤1004、替换完成后,完成配置,启动服务;
步骤1005、直接替换当前服务配置文件为新获取的服务配置文件;
步骤1006、判断是否需要调用命令使服务配置生效;
若需要,则执行步骤1007;
若不需要,则结束;
步骤1007、调用服务配置生效命令,结束。
采用两种方式中任何一种都能够保证服务节点的服务被成功配置。
图11为本发明实施例中服务节点在服务启动时的工作流程示意图,如图所示,可以包括以下步骤:
步骤1101、生成本地服务配置文件摘要;
步骤1102、远程获取控制节点服务配置文件摘要;
步骤1103、判断是否能够获取控制节点服务配置文件摘要;
若不能获取,则执行步骤1108;
若能够获取,则执行步骤1104;
步骤1104、判断本地服务配置文件摘要与从控制节点获取的服务配置文件摘要是否一致;
若一致,则执行步骤1105;
若不一致,则执行步骤1106;
步骤1105、服务启动,并结束;
步骤1106、远程拉取服务配置文件;
步骤1107、判断拉取是否成功;
若成功,则执行步骤1105;
若不成功,则执行步骤1108。
步骤1108、服务启动失败,并结束。
具体实施中,通过服务节点在启动服务的时候,主动比较当前节点和控制节点的服务配置文件摘要,确定是否需要更新配置,需要更新时,主动拉取控制节点存储的服务配置文件,并根据该服务配置文件进行服务配置,服务节点的操作确保了其上的服务配置于控制节点存储的配置是一致的,进而保证了集群中各服务节点配置的一致性。
基于同一发明构思,本发明实施例中还提供了一种服务节点配置服务的装置,由于装置解决问题的原理与一种服务节点配置服务的方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
图12为本发明实施例中服务节点配置服务的装置的结构示意图,如图所示,可以包括:
第二获取模块1201,用于在服务启动时,获取控制节点存储的服务配置文件摘要,所述服务配置文件摘要是根据控制节点存储的用于配置服务节点服务的服务配置文件生成的;
拉取模块1202,用于在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要不一致时,远程拉取控制节点存储的服务配置文件,所述服务配置文件包含服务节点中待配置的配置内容;
第二配置模块1203,用于根据所述服务配置文件对服务节点的服务进行配置。
实施中,还可以包括:
启动模块1204,用于在从控制节点获取的服务配置文件摘要与服务节点当前服务的服务配置文件摘要相一致时,或根据所述服务配置文件对服务节点的服务配置成功后,启动服务。
为了描述的方便,以上所述装置的各部分以功能分为各种部件或单元分别描述。当然,在实施本发明时可以把各部件或单元的功能在同一个或多个软件或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种控制节点配置服务的方法,其特征在于,包括如下步骤:
生成包含新配置的全局配置文件,所述全局配置文件用于存储集群中全部服务节点和全部控制节点的服务配置;
确定全局配置文件中新配置的配置内容;
根据确定的新配置的配置内容和服务节点服务对应的格式生成用于配置服务节点服务的服务配置文件;
根据服务配置文件生成服务配置文件摘要;
确定包含新配置内容的服务配置文件摘要;
在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,发送控制节点存储的包含新配置内容的服务配置文件至服务节点,所述服务节点根据所述服务配置文件进行服务配置。
2.如权利要求1所述的方法,其特征在于,在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,进一步包括:
将控制节点存储的当前服务节点使用的服务配置文件摘要替换为包含新配置内容的服务配置文件摘要。
3.如权利要求1或2所述的方法,其特征在于,在发送控制节点存储的包含新配置内容的服务配置文件至服务节点时,包括步骤:
确定服务节点列表中是否有待配置的服务节点,所述服务节点列表包含多个待配置的服务节点;
在有服务节点待配置时,将包含新配置内容的服务配置文件发送至所述待配置服务节点;
远程调用服务节点启动配置操作。
4.如权利要求3所述的方法,其特征在于,在服务节点根据所述服务配置文件进行服务配置成功后,进一步包括:
将所述配置成功的服务节点从服务节点列表中删除。
5.如权利要求1所述的方法,其特征在于,所述生成包含新配置的全局配置文件包括如下步骤:
确定待配置的服务是否被配置过;
若被配置过,则根据新配置的服务内容修改当前全局配置文件,得到包含新配置的全局配置文件;
若未被配置过,则将新配置的服务内容添加至当前全局配置文件中,得到包含新配置的全局配置文件。
6.如权利要求1或5所述的方法,其特征在于,所述生成包含新配置的全局配置文件之前,进一步包括:
保存当前全局配置文件的备份。
7.如权利要求6所述的方法,其特征在于,待配置的服务节点根据服务配置文件配置失败时,进一步包括:
根据所述全局配置文件的备份还原控制节点和服务节点中的服务配置。
8.一种控制节点配置服务的装置,其特征在于,包括:
第一生成模块,用于生成包含新配置的全局配置文件,所述全局配置文件用于存储集群中全部服务节点和全部控制节点的服务配置;
第一确定模块,用于确定全局配置文件中新配置的配置内容;
第一生成模块进一步用于根据确定的新配置的配置内容和服务节点服务对应的格式生成用于配置服务节点服务的服务配置文件;
第一生成模块进一步用于根据服务配置文件生成服务配置文件摘要;
摘要确定模块,用于确定包含新配置内容的服务配置文件摘要;
第一配置模块,用于在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,发送控制节点存储的包含新配置内容的服务配置文件至服务节点,所述服务节点根据所述服务配置文件进行服务配置。
9.如权利要求8所述的装置,其特征在于,进一步包括:
替换模块,用于在包含新配置内容的服务配置文件摘要与控制节点存储的当前服务节点使用的服务配置文件摘要不一致时,将控制节点存储的当前服务节点使用的服务配置文件摘要替换为包含新配置内容的服务配置文件摘要。
10.如权利要求8或9所述的装置,其特征在于,第一配置模块包括:
服务节点确定单元,用于在发送控制节点存储的包含新配置内容的服务配置文件至服务节点时,确定服务节点列表中是否有待配置的服务节点,所述服务节点列表包含多个待配置的服务节点;
配置文件发送单元,用于在有服务节点待配置时,将包含新配置内容的服务配置文件发送至所述待配置服务节点;
调用单元,用于远程调用服务节点启动配置操作。
11.如权利要求10所述的装置,其特征在于,进一步包括:
第一删除模块,用于在服务节点根据所述服务配置文件进行服务配置成功后,将所述配置成功的服务节点从服务节点列表中删除。
12.如权利要求8所述的装置,其特征在于,第一生成模块包括:
第一确定单元,用于确定待配置的服务是否被配置过;
第一修改单元,用于在配置确定单元确定待配置的服务已被配置过,则根据新配置的服务内容修改当前全局配置文件,得到包含新配置的全局配置文件;
第一添加单元,用于在确定单元确定待配置的服务未被配置过,则将新配置的服务内容添加至当前全局配置文件中,得到包含新配置的全局配置文件。
13.如权利要求8或12所述的装置,其特征在于,进一步包括:
第一备份模块,用于生成包含新配置的全局配置文件之前,保存当前全局配置文件的备份。
14.如权利要求13所述的装置,其特征在于,进一步包括:
第一还原模块,用于待配置的服务节点根据服务配置文件配置失败时,根据所述全局配置文件的备份还原控制节点和服务节点中的服务配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410735999.4A CN104601366B (zh) | 2014-12-05 | 2014-12-05 | 一种控制、服务节点配置服务的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410735999.4A CN104601366B (zh) | 2014-12-05 | 2014-12-05 | 一种控制、服务节点配置服务的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104601366A CN104601366A (zh) | 2015-05-06 |
CN104601366B true CN104601366B (zh) | 2018-11-27 |
Family
ID=53126891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410735999.4A Active CN104601366B (zh) | 2014-12-05 | 2014-12-05 | 一种控制、服务节点配置服务的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104601366B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107404509B (zh) * | 2016-05-20 | 2020-06-26 | 北京融聚世界网络科技有限公司 | 分布式服务配置系统及信息管理方法 |
CN108063675A (zh) * | 2016-11-08 | 2018-05-22 | 北京京东尚科信息技术有限公司 | 集群配置的检测方法、检测装置及集群配置检测系统 |
CN106844681A (zh) * | 2017-01-25 | 2017-06-13 | 郑州云海信息技术有限公司 | 基于集群文件系统的配置文件同步方法及管理主机 |
CN107483250A (zh) * | 2017-08-21 | 2017-12-15 | 郑州云海信息技术有限公司 | 分布式配置管理方法、装置及实现分布式配置管理的系统 |
CN108377198B (zh) * | 2017-10-25 | 2021-06-22 | 国云科技股份有限公司 | 一种基于云平台的节点配置统一批量维护方法 |
CN110048874B (zh) * | 2018-01-17 | 2022-03-29 | 视联动力信息技术股份有限公司 | 一种视联网终端的校验方法和装置 |
CN109067574B (zh) * | 2018-07-27 | 2022-03-25 | 烽火通信科技股份有限公司 | 一种处理路由器控制平面配置残留的方法 |
CN109582386B (zh) * | 2018-11-09 | 2022-02-25 | 聚好看科技股份有限公司 | 服务启动处理方法、装置、电子设备及可读存储介质 |
CN111327446B (zh) * | 2018-12-17 | 2022-02-25 | 北京华为数字技术有限公司 | 配置数据处理方法、软件定义网络设备、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1832430A (zh) * | 2006-04-19 | 2006-09-13 | 杭州华为三康技术有限公司 | 网络管理方法 |
CN101741143A (zh) * | 2009-12-17 | 2010-06-16 | 国电南京自动化股份有限公司 | 一种电力自动化系统一体化配置的实现方法 |
CN103136019A (zh) * | 2011-11-29 | 2013-06-05 | 国际商业机器公司 | 用于加载配置信息的方法和装置 |
CN103368916A (zh) * | 2012-04-01 | 2013-10-23 | 百度在线网络技术(北京)有限公司 | 基于硬件信息的计算机终端可信证明生成技术 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6950931B2 (en) * | 2002-05-30 | 2005-09-27 | International Business Machines Corporation | Server configuration using profile templates |
-
2014
- 2014-12-05 CN CN201410735999.4A patent/CN104601366B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1832430A (zh) * | 2006-04-19 | 2006-09-13 | 杭州华为三康技术有限公司 | 网络管理方法 |
CN101741143A (zh) * | 2009-12-17 | 2010-06-16 | 国电南京自动化股份有限公司 | 一种电力自动化系统一体化配置的实现方法 |
CN103136019A (zh) * | 2011-11-29 | 2013-06-05 | 国际商业机器公司 | 用于加载配置信息的方法和装置 |
CN103368916A (zh) * | 2012-04-01 | 2013-10-23 | 百度在线网络技术(北京)有限公司 | 基于硬件信息的计算机终端可信证明生成技术 |
Also Published As
Publication number | Publication date |
---|---|
CN104601366A (zh) | 2015-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104601366B (zh) | 一种控制、服务节点配置服务的方法及装置 | |
CN106331098B (zh) | 一种服务器集群系统 | |
TWI751402B (zh) | 一種資料同步方法、分散式系統、電腦可讀取儲取媒體、電腦設備及分散式設備 | |
CN103152419B (zh) | 一种云计算平台的高可用集群管理方法 | |
CN103778031B (zh) | 一种云环境下的分布式系统多级故障容错方法 | |
CN110502340A (zh) | 一种资源动态调整方法、装置、设备及存储介质 | |
CN105022656B (zh) | 虚拟机快照管理方法和装置 | |
CN106790713B (zh) | 云计算环境下的跨数据中心虚拟机迁移方法 | |
CN107153571A (zh) | 一种虚拟化管理节点的部署方法及装置 | |
CN107743076A (zh) | 一种ncsi共享网口切换方法及装置 | |
CN109921942B (zh) | 云平台切换控制方法、装置、系统及电子设备 | |
CN107741876A (zh) | 一种虚拟机进程监控系统及方法 | |
CN110162334B (zh) | 一种代码管理方法、装置及存储介质 | |
CN110727557A (zh) | 日志采集器的管控方法、平台、电子设备及存储介质 | |
CN107729213B (zh) | 一种后台任务监控方法及装置 | |
CN109391691A (zh) | 一种单节点故障下nas服务的恢复方法及相关装置 | |
CN104158905B (zh) | web容器的创建方法 | |
CN113138882A (zh) | 基于MySQL集群的自动化部署方法、装置及相关设备 | |
CN110083504B (zh) | 分布式任务的运行状态监控方法及装置 | |
CN111368005A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN109491679B (zh) | 一种cpld在线升级方法及装置 | |
CN109670296A (zh) | 一种移除iOS备份密码的方法和装置 | |
CN105391755A (zh) | 一种分布式系统中数据处理方法、装置及系统 | |
CN103188099A (zh) | 一种多应用系统的备份方法、装置及系统 | |
CN105022666A (zh) | 控制MapReduce任务调度的方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |