CN111277632A - ***集群中应用管理的方法和装置 - Google Patents
***集群中应用管理的方法和装置 Download PDFInfo
- Publication number
- CN111277632A CN111277632A CN202010032522.5A CN202010032522A CN111277632A CN 111277632 A CN111277632 A CN 111277632A CN 202010032522 A CN202010032522 A CN 202010032522A CN 111277632 A CN111277632 A CN 111277632A
- Authority
- CN
- China
- Prior art keywords
- node
- application
- physical
- application state
- physical node
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1051—Group master selection mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种***集群中应用管理的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:当***集群的物理节点启动后,更新物理节点中记录的每个应用的应用状态;对每个应用,根据应用状态修改机制,修改物理节点的应用状态;根据修改后的应用状态对应用进行相应处理。该实施方式能够实现外联集成***单点接入场景下的接入集群的高可用、可灵活配置的应用管理模式;当需要增加外联集成接口物理节点时无需单独开发高可用程序,通过配置即可实现***集群的部署和应用管理。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种***集群中应用管理的方法和装置。
背景技术
在***建设的过程中,可能会需要外联大量的外部***。由于外部***千差万别,接入方式具有多样性和复杂性特点,这些都对外联接入***的高可用提出了更高的要求。
由于外联集成***受制于第三方***的唯一接入点,因此,大部分外联集成***采用冷备方式进行部署。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
1、冷备模式切换需要人工干预,需要手工调整配置文件,容易出错;
2、由于冷备切换需要时间,业务交易的连续性得不到保障,从而影响业务的正常运行;
3、冷备模式中所有的应用均运行在主节点上,另外一台备机不能提供服务,处于空闲状态,浪费设备资源。
发明内容
有鉴于此,本发明实施例提供一种***集群中应用管理的方法和装置,能够实现外联集成***单点接入场景下的接入集群的高可用、可灵活配置的应用管理模式;当需要增加外联集成接口物理节点时无需单独开发高可用程序,通过配置即可实现***集群的部署和应用管理。
为实现上述目的,根据本发明实施例的一个方面,提供了一种***集群中应用管理的方法。
一种***集群中应用管理的方法,包括:当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态;对每个应用,根据应用状态修改机制,修改所述物理节点的应用状态;根据修改后的应用状态对应用进行相应处理。
可选地,所述应用状态的类型包括:启动、主节点、从节点、挂起、停止和无状态。
可选地,所述应用状态修改机制包括:当所述物理节点启动时,将所述物理节点的所述应用状态设置为“启动”;当所述物理节点停止时,将所述物理节点的所述应用状态设置为“停止”;当所述物理节点获取不到所述***集群包括的其他物理节点的应用状态时,将所述物理节点的应用状态设置为“无状态”。
可选地,所述应用状态修改机制包括:若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的首选节点,并且***集群的所有物理节点中没有应用状态设置为“主节点”的物理节点,则将所述物理节点的应用状态设置为“主节点”;若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的首选节点,并且***集群的所有物理节点中已存在应用状态为“主节点”的物理节点,则将所述物理节点的应用状态设置为“从节点”;若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的备选节点,则将所述物理节点的应用状态设置为“挂起”。
可选地,所述应用状态修改机制包括:若所述物理节点的应用状态为“挂起”,且超过设置的等待时间,则将所述物理节点的应用状态设置为“从节点”。
可选地,所述应用状态修改机制包括:若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的备选节点,并且所述应用的首选节点已宕机,所述应用的所有备选节点中没有应用状态设置为“主节点”的物理节点,则当所述物理节点满足主节点选取规则时,将所述物理节点的应用状态设置为“主节点”;若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的首选节点,且所述应用在所述***集群中无备选节点,则将所述物理节点的应用状态设置为“主节点”;若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的首选节点,且当前在设置的回切时间内,则将所述物理节点的应用状态设置为“主节点”。
可选地,所述主节点选取规则为:所述物理节点的临时节点名称在所有备选节点中的字典序排序最小。
可选地,所述应用状态修改机制包括:若所述物理节点的应用状态为“主节点”,且所述物理节点是所述应用的备选节点,且当前在设置的回切时间内,所述应用的首选节点运行正常,则将所述物理节点的应用状态设置为“从节点”。
可选地,所述应用状态修改机制包括:若所述物理节点的应用状态为“停止”,则无需修改所述物理节点的应用状态。
可选地,根据修改后的应用状态对应用进行相应处理包括:若修改后的应用状态为“主节点”,则启动所述应用;若修改后的应用状态不是“主节点”,且修改前的应用状态为“主节点”,则停止所述应用。
可选地,所述物理节点之间通过心跳监控来进行数据交互,以获取所有物理节点的应用状态信息。
可选地,所述***集群中的物理节点的部署方式包括:基于注册中心的热备部署和不基于注册中心的热备部署。
根据本发明实施例的另一方面,提供了一种***集群中应用管理的装置。
一种***集群中应用管理的装置,包括:状态更新模块,用于当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态;状态修改模块,用于对每个应用,根据应用状态修改机制,修改所述物理节点的应用状态;应用处理模块,用于根据修改后的应用状态对应用进行相应处理。
根据本发明实施例的又一方面,提供了一种***集群中应用管理的电子设备。
一种***集群中应用管理的电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所提供的***集群中应用管理的方法。
根据本发明实施例的再一方面,提供了一种计算机可读介质。
一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例所提供的***集群中应用管理的方法。
上述发明中的一个实施例具有如下优点或有益效果:通过当***集群的物理节点启动后,更新物理节点中记录的每个应用的应用状态;对每个应用,根据应用状态修改机制,修改物理节点的应用状态;根据修改后的应用状态对应用进行相应处理,实现了外联集成***单点接入场景下的接入集群的高可用、可灵活配置的应用管理模式;当需要增加外联集成接口物理节点时无需单独开发高可用程序,通过配置即可实现***集群的部署和应用管理。另外,本发明针对外联集成***集群,可以基于注册中心来进行集群部署,也可不基于注册中心来进行集群部署,使得集群部署方式灵活,可用性高;并且,在***集群运行过程中,当应用的主节点MASTER发生冲突时,采用字典序的选取机制,可以确保MASTER节点的唯一性。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的***集群中应用管理的方法的主要步骤示意图;
图2是本发明实施例的***集群的部署结构示意图;
图3是本发明实施例的应用状态转换过程示意图;
图4是本发明实施例的***集群的部署架构示意图;
图5是根据本发明实施例的***集群中应用管理的装置的主要模块示意图;
图6是本发明实施例可以应用于其中的示例性***架构图;
图7是适于用来实现本发明实施例的终端设备或服务器的计算机***的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
为了解决现有技术中存在的问题,本发明提供了一种***集群中应用管理的方法和装置,可以解决外联集成***的冷备问题,实现热备;解决外联集成***的单点故障后的自动切换问题,保障业务连续性;实现外联集成***多应用的相互热备,充分利用备机的资源;支持不基于Zookeeper方式和基于Zookeeper方式实现外联集群的管理。
图1是根据本发明实施例的***集群中应用管理的方法的主要步骤示意图。如图1所示,本发明实施例的***集群中应用管理的方法主要包括如下的步骤S101至步骤S103。
步骤S101:当***集群的物理节点启动后,更新物理节点中记录的每个应用的应用状态;
步骤S102:对每个应用,根据应用状态修改机制,修改物理节点的应用状态;
步骤S103:根据修改后的应用状态对应用进行相应处理。
外联集成***的每个物理节点都有对应的客户端,为了实现***集群的高可用性,物理节点的高可用客户端维护本节点(在本发明的实施例介绍中,节点和物理节点或本机均指的是部署应用的机器在***集群中对应的物理节点)的应用状态信息表,并提供统一的接口服务定期与其他物理节点的高可用客户端交换应用状态信息表。在本发明的实施例中,***集群的物理节点之间通过心跳监控来进行数据交互,以获取所有物理节点的应用状态信息。每个物理节点的高可用客户端负责判断本机是否应用的主节点MASTER节点。根据应用分布信息表高可用客户端负责拉起本机为MASTER节点的应用程序。
物理节点的高可用客户端负责维护本节点的应用状态信息表,信息表包括三部分,分为应用信息、物理信息和节点信息,其中主要数据项参见表1。在节点启动时,按照应用的维度把本节点的所有数据项信息维护到内存,并提供接口服务同步给其他物理节点。
表1应用状态信息表
其中,应用名称:发布在物理节点上的应用程序,用于连接外部***;部署模式:配置支持热备,多活两种模式;启动脚本:应用启动脚本,可以是应用启动的脚本程序本身,也可以指代应用启动的脚本程序的存储位置;停止脚本:应用停止脚本,可以是应用停止的脚本程序本身,也可以指代应用停止的脚本程序的存储位置;检查脚本:检查应用程序是否运行正常的脚本;机器名称:物理节点机器名称;IP地址:物理节点IP地址;应用注册路径:在注册中心(例如是Zookeeper集群)注册的路径,用于唯一标识应用程序;应用状态:记录应用在物理节点上的运行状态;临时节点名称:临时节点名称与物理节点具有一一对应关系,当集群出现应用状态冲突时候使用临时节点名称按字典序排序来解决冲突。
物理节点的高可用客户端启动后,按照默认配置文件,初始化加载应用状态信息表到内存。物理节点的高可用客户端的应用状态信息表按照默认配置文件初始化每个应用在每个物理节点的应用状态。
图2是本发明实施例的***集群的部署结构示意图,如图2所示,假设外联集成***的物理节点有3个,分别为HostNode-001、HostNode-002和HostNode-003,假设应用有3个,名称分别为App1、App2和App3,以应用为主维度,分别为每个应用设置首选节点和备选节点,首选节点指的是该应用首选作为主节点的节点,备选节点指的是该应用在首选节点宕机时会选用其作为主节点的节点。当***集群正常启动后,物理节点的高可用客户端将首先为每个物理节点在内存建立应用名称的固定应用节点并维护每个应用在每台物理节点的运行状态信息。
以应用App1为例,假设设定的App1的首选节点为物理节点HostNode-001,备选节点为物理节点HostNode-002和HostNode-003。那么,当***集群正常运行时,App1的主节点MASTER即为物理节点HostNode-001,从节点SLAVE即为物理节点HostNode-002和物理节点HostNode-003。
通过初始化配置文件,灵活配置应用的热备首选节点和备选节点,从而可以实现物理节点之间应用程序的一对一互备,多备一,一备多等场景。
在本发明的实施例中,物理节点的高可用客户端主要可以实现以下功能:
1、定期与其他物理节点的高可用客户端维持心跳,以检测物理节点的运行状态;
2、定期获取其他节点的应用状态并更新到本地的应用状态信息表,以更新整个***集群的物理节点和应用的运行状态;
3、根据应用状态修改机制,完成修改本机的物理节点的所有应用状态,并提供服务给其他物理节点的高可用客户端查询;
4、根据应用状态信息表负责启动、停止物理节点上的应用程序。
具体地,每个物理节点的高可用客户端只提供本机的所有应用的状态供查询,并定期从其他物理节点的高可用客户端获取其他物理节点上的应用状态信息,更新到本地内存。
一般外部***只提供一个访问接入点,外联集成***的应用在同一时刻只能在一个物理节点上运行,这个物理节点即是这个应用的主节点,应用状态为MASTER,其他物理节点作为这个应用的从节点(主要作为应用的备份节点来使用),应用状态为SLAVE。
根据本发明的实施例,每个物理节点的高可用客户端为了管理外联集成***集群,扩充了应用状态的类型,应用状态的类型主要包括:启动“START”、主节点“MASTER”、从节点“SLAVE”、挂起“HOLD”、停止“STOP”和无状态“NONE”几种。
当物理节点启动运行后,将根据应用状态的修改机制来设置和修改物理节点的应用状态。由于每个物理节点可能部署了多个应用,而在进行应用状态修改时,是以应用为主维度,对于每一个应用来说,物理节点都是根据应用状态修改机制进行应用状态修改的,各应用之间互不干扰。其中,应用状态修改机制主要包括:
规则1:当物理节点启动时,将物理节点的应用状态设置为“启动START”;
规则2:当物理节点停止时,将物理节点的应用状态设置为“停止STOP”,若存在应用在所述物理节点运行,则停止应用;
规则3:当物理节点获取不到***集群包括的其他物理节点的应用状态时,将物理节点的应用状态设置为“无状态NONE”。此时,该物理节点可能是已经宕机或与其他物理节点断开网络连接,故而无法获取到其他物理节点的应用状态;
规则4:若物理节点的应用状态为“启动START”,且物理节点是应用的首选节点,并且***集群的所有物理节点中没有应用状态设置为“主节点MASTER”的物理节点,则将物理节点的应用状态设置为“主节点MASTER”;
规则5:若物理节点的应用状态为“启动START”,且物理节点是应用的首选节点,并且***集群的所有物理节点中已存在应用状态为“主节点MASTER”的物理节点,则将物理节点的应用状态设置为“从节点SLAVE”;
规则6:若物理节点的应用状态为“启动START”,且物理节点是应用的备选节点,则将物理节点的应用状态设置为“挂起HOLD”;
规则7:若物理节点的应用状态为“挂起HOLD”,且超过设置的等待时间,则将物理节点的应用状态设置为“从节点SLAVE”。此处,该设置的等待时间即为各个物理节点根据主节点选取规则来判断其本身是否可以修改为主节点MASTER的过程的时间。本发明的实施例中,主节点选取规则为:物理节点的临时节点名称在所有备选节点中的字典序排序最小,其中,字典序是基于字母顺序排列的单词按字母顺序排列的方法;
规则8:若物理节点的应用状态为“从节点SLAVE”,且物理节点是应用的备选节点,并且应用的首选节点已宕机(包括已断开网络连接),应用的所有备选节点中没有应用状态设置为“主节点MASTER”的物理节点,则当物理节点满足主节点选取规则时,将物理节点的应用状态设置为“主节点MASTER”;
规则9:若物理节点的应用状态为“从节点SLAVE”,且所述物理节点是应用的首选节点,且应用在所述***集群中无备选节点,则将物理节点的应用状态设置为“主节点MASTER”;
规则10:若物理节点的应用状态为“从节点SLAVE”,且物理节点是应用的首选节点,且当前在设置的回切时间内,则将物理节点的应用状态设置为“主节点MASTER”。其中,回切时间指的是恢复到初始化配置的首选和备选节点的时间;
规则11:若物理节点的应用状态为“主节点MASTER”,且物理节点是应用的备选节点,且当前在设置的回切时间内,应用的首选节点运行正常,则将物理节点的应用状态设置为“从节点SLAVE”;
规则12:若物理节点的应用状态为“停止STOP”,则无需修改物理节点的应用状态,此时仅需等待该物理节点的退出即可。
其中,上述的规则中,规则1至规则3中,物理节点在进行应用状态修改时无需与***集群中的其他物理节点进行应用状态数据交互;规则4至规则11介绍了物理节点与***集群中的其他物理节点进行应用状态交互后,进行应用状态修改的情况;规则12描述了无需进行应用状态修改的情况。
根据本发明的实施例,在根据上述的应用状态修改机制进行了应用状态修改之后,该物理节点的高可用客户端即可根据应用状态的修改情况对应用进行相应处理,具体地,包括:
若修改后的应用状态为“主节点MASTER”,则启动应用;
若修改后的应用状态不是“主节点MASTER”,且修改前的应用状态为“主节点MASTER”,则停止应用。
图3是本发明实施例的应用状态转换过程示意图。如图3所示,其中示出了物理节点的高可用客户端根据应用状态修改机制对应用状态进行修改的转换过程。
根据本发明的实施例,***集群中的物理节点的部署方式包括:基于注册中心的热备部署和不基于注册中心的热备部署。
图4是本发明实施例的***集群的部署架构示意图。如图4所示,本发明的***集群目前支持基于注册中心Zookeeper方式和不基于Zookeeper方式来进行集群的部署和管理,包括MASTER节点选取,应用程序的守护监听,应用程序的健康检查等。若基于注册中心Zookeeper方式来进行集群部署,则各个物理节点可通过注册中心Zookeeper来实现与其他物理节点之间的数据交互;若不基于注册中心Zookeeper方式来进行集群部署,则各个物理节点之间可通过心跳监控来直接与其他物理节点之间进行数据交互。
图5是根据本发明实施例的***集群中应用管理的装置的主要模块示意图。如图5所示,本发明实施例的***集群中应用管理的装置500主要包括状态更新模块501、状态修改模块502和应用处理模块503。
状态更新模块501,用于当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态;
状态修改模块502,用于对每个应用,根据应用状态修改机制,修改所述物理节点的应用状态;
应用处理模块503,用于根据修改后的应用状态对应用进行相应处理。
根据本发明的一个实施例,应用状态的类型包括:启动、主节点、从节点、挂起、停止和无状态。
根据本发明的另一个实施例,应用状态修改机制包括:
当所述物理节点启动时,将所述物理节点的所述应用状态设置为“启动”;
当所述物理节点停止时,将所述物理节点的所述应用状态设置为“停止”;
当所述物理节点获取不到所述***集群包括的其他物理节点的应用状态时,将所述物理节点的应用状态设置为“无状态”。
根据本发明的又一个实施例,应用状态修改机制包括:
若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的首选节点,并且***集群的所有物理节点中没有应用状态设置为“主节点”的物理节点,则将所述物理节点的应用状态设置为“主节点”;
若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的首选节点,并且***集群的所有物理节点中已存在应用状态为“主节点”的物理节点,则将所述物理节点的应用状态设置为“从节点”;
若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的备选节点,则将所述物理节点的应用状态设置为“挂起”。
根据本发明的又一个实施例,应用状态修改机制包括:
若所述物理节点的应用状态为“挂起”,且超过设置的等待时间,则将所述物理节点的应用状态设置为“从节点”。
根据本发明的又一个实施例,应用状态修改机制包括:
若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的备选节点,并且所述应用的首选节点已宕机,所述应用的所有备选节点中没有应用状态设置为“主节点”的物理节点,则当所述物理节点满足主节点选取规则时,将所述物理节点的应用状态设置为“主节点”;
若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的首选节点,且所述应用在所述***集群中无备选节点,则将所述物理节点的应用状态设置为“主节点”;
若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的首选节点,且当前在设置的回切时间内,则将所述物理节点的应用状态设置为“主节点”。
根据本发明的又一个实施例,应用状态修改机制包括:
若所述物理节点的应用状态为“主节点”,且所述物理节点是所述应用的备选节点,且当前在设置的回切时间内,所述应用的首选节点运行正常,则将所述物理节点的应用状态设置为“从节点”。
在本发明的又一个实施例中,主节点选取规则为:所述物理节点的临时节点名称在所有备选节点中的字典序排序最小。
根据本发明的再一个实施例,应用状态修改机制包括:
若所述物理节点的应用状态为“停止”,则无需修改所述物理节点的应用状态。
根据本发明的实施例,所述应用处理模块503还可以用于:
若修改后的应用状态为“主节点”,则启动所述应用;
若修改后的应用状态不是“主节点”,且修改前的应用状态为“主节点”,则停止所述应用。
根据本发明的实施例,物理节点之间通过心跳监控来进行数据交互,以获取所有物理节点的应用状态信息。
在本发明的实施例中,***集群中的物理节点的部署方式包括:基于注册中心的热备部署和不基于注册中心的热备部署。
根据本发明实施例的技术方案,通过当***集群的物理节点启动后,更新物理节点中记录的每个应用的应用状态;对每个应用,根据应用状态修改机制,修改物理节点的应用状态;根据修改后的应用状态对应用进行相应处理,实现了外联集成***单点接入场景下的接入集群的高可用、可灵活配置的应用管理模式;当需要增加外联集成接口物理节点时无需单独开发高可用程序,通过配置即可实现***集群的部署和应用管理。另外,本发明针对外联集成***集群,可以基于注册中心来进行集群部署,也可不基于注册中心来进行集群部署,使得集群部署方式灵活,可用性高;并且,在***集群运行过程中,当应用的主节点MASTER发生冲突时,采用字典序的选取机制,可以确保MASTER节点的唯一性。
图6示出了可以应用本发明实施例的***集群中应用管理的方法或***集群中应用管理的装置的示例性***架构600。
如图6所示,***架构600可以包括终端设备601、602、603,网络604和服务器605。网络604用以在终端设备601、602、603和服务器605之间提供通信链路的介质。网络604可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备601、602、603通过网络604与服务器605交互,以接收或发送消息等。终端设备601、602、603上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备601、602、603可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器605可以是提供各种服务的服务器,例如对用户利用终端设备601、602、603所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的***集群中应用管理的方法一般由服务器605执行,相应地,***集群中应用管理的装置一般设置于服务器605中。
应该理解,图6中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图7,其示出了适于用来实现本发明实施例的终端设备或服务器的计算机***700的结构示意图。图7示出的终端设备或服务器仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机***700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有***700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本发明的***中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括状态更新模块、状态修改模块和应用处理模块。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,状态更新模块还可以被描述为“用于当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态;对每个应用,根据应用状态修改机制,修改所述物理节点的应用状态;根据修改后的应用状态对应用进行相应处理。
根据本发明实施例的技术方案,通过当***集群的物理节点启动后,更新物理节点中记录的每个应用的应用状态;对每个应用,根据应用状态修改机制,修改物理节点的应用状态;根据修改后的应用状态对应用进行相应处理,实现了外联集成***单点接入场景下的接入集群的高可用、可灵活配置的应用管理模式;当需要增加外联集成接口物理节点时无需单独开发高可用程序,通过配置即可实现***集群的部署和应用管理。另外,本发明针对外联集成***集群,可以基于注册中心来进行集群部署,也可不基于注册中心来进行集群部署,使得集群部署方式灵活,可用性高;并且,在***集群运行过程中,当应用的主节点MASTER发生冲突时,采用字典序的选取机制,可以确保MASTER节点的唯一性。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (15)
1.一种***集群中应用管理的方法,其特征在于,包括:
当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态;
对每个应用,根据应用状态修改机制,修改所述物理节点的应用状态;
根据修改后的应用状态对应用进行相应处理。
2.根据权利要求1所述的方法,其特征在于,所述应用状态的类型包括:启动、主节点、从节点、挂起、停止和无状态。
3.根据权利要求2所述的方法,其特征在于,所述应用状态修改机制包括:
当所述物理节点启动时,将所述物理节点的所述应用状态设置为“启动”;
当所述物理节点停止时,将所述物理节点的所述应用状态设置为“停止”;
当所述物理节点获取不到所述***集群包括的其他物理节点的应用状态时,将所述物理节点的应用状态设置为“无状态”。
4.根据权利要求2所述的方法,其特征在于,所述应用状态修改机制包括:
若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的首选节点,并且***集群的所有物理节点中没有应用状态设置为“主节点”的物理节点,则将所述物理节点的应用状态设置为“主节点”;
若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的首选节点,并且***集群的所有物理节点中已存在应用状态为“主节点”的物理节点,则将所述物理节点的应用状态设置为“从节点”;
若所述物理节点的应用状态为“启动”,且所述物理节点是所述应用的备选节点,则将所述物理节点的应用状态设置为“挂起”。
5.根据权利要求2所述的方法,其特征在于,所述应用状态修改机制包括:
若所述物理节点的应用状态为“挂起”,且超过设置的等待时间,则将所述物理节点的应用状态设置为“从节点”。
6.根据权利要求2所述的方法,其特征在于,所述应用状态修改机制包括:
若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的备选节点,并且所述应用的首选节点已宕机,所述应用的所有备选节点中没有应用状态设置为“主节点”的物理节点,则当所述物理节点满足主节点选取规则时,将所述物理节点的应用状态设置为“主节点”;
若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的首选节点,且所述应用在所述***集群中无备选节点,则将所述物理节点的应用状态设置为“主节点”;
若所述物理节点的应用状态为“从节点”,且所述物理节点是所述应用的首选节点,且当前在设置的回切时间内,则将所述物理节点的应用状态设置为“主节点”。
7.根据权利要求6所述的方法,其特征在于,所述主节点选取规则为:所述物理节点的临时节点名称在所有备选节点中的字典序排序最小。
8.根据权利要求2所述的方法,其特征在于,所述应用状态修改机制包括:
若所述物理节点的应用状态为“主节点”,且所述物理节点是所述应用的备选节点,且当前在设置的回切时间内,所述应用的首选节点运行正常,则将所述物理节点的应用状态设置为“从节点”。
9.根据权利要求2所述的方法,其特征在于,所述应用状态修改机制包括:
若所述物理节点的应用状态为“停止”,则无需修改所述物理节点的应用状态。
10.根据权利要求1-9中任一所述的方法,其特征在于,根据修改后的应用状态对应用进行相应处理包括:
若修改后的应用状态为“主节点”,则启动所述应用;
若修改后的应用状态不是“主节点”,且修改前的应用状态为“主节点”,则停止所述应用。
11.根据权利要求1-9中任一所述的方法,其特征在于,所述物理节点之间通过心跳监控来进行数据交互,以获取所有物理节点的应用状态信息。
12.根据权利要求1所述的方法,其特征在于,所述***集群中的物理节点的部署方式包括:基于注册中心的热备部署和不基于注册中心的热备部署。
13.一种***集群中应用管理的装置,其特征在于,包括:
状态更新模块,用于当***集群的物理节点启动后,更新所述物理节点中记录的每个应用的应用状态;
状态修改模块,用于对每个应用,根据应用状态修改机制,修改所述物理节点的应用状态;
应用处理模块,用于根据修改后的应用状态对应用进行相应处理。
14.一种***集群中应用管理的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-12中任一所述的方法。
15.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-12中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032522.5A CN111277632B (zh) | 2020-01-13 | 2020-01-13 | ***集群中应用管理的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032522.5A CN111277632B (zh) | 2020-01-13 | 2020-01-13 | ***集群中应用管理的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111277632A true CN111277632A (zh) | 2020-06-12 |
CN111277632B CN111277632B (zh) | 2022-05-06 |
Family
ID=70998907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010032522.5A Active CN111277632B (zh) | 2020-01-13 | 2020-01-13 | ***集群中应用管理的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111277632B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050237926A1 (en) * | 2004-04-22 | 2005-10-27 | Fan-Tieng Cheng | Method for providing fault-tolerant application cluster service |
US20060114873A1 (en) * | 2004-11-30 | 2006-06-01 | Kenichi Fujii | Wireless communication equipment, wireless communication control method and program |
US20110298516A1 (en) * | 2010-06-03 | 2011-12-08 | Arm Limited | Clock state independent retention master-slave flip-flop |
CN103647668A (zh) * | 2013-12-16 | 2014-03-19 | 上海证券交易所 | 一种高可用集群内主机群体决策***及切换方法 |
CN105743692A (zh) * | 2014-12-31 | 2016-07-06 | 瞻博网络公司 | 用于应用管理的基于策略的框架 |
CN107454140A (zh) * | 2017-06-27 | 2017-12-08 | 北京溢思得瑞智能科技研究院有限公司 | 一种基于大数据平台的Ceph集群自动化部署方法及*** |
CN107948017A (zh) * | 2017-09-30 | 2018-04-20 | 用友金融信息技术股份有限公司 | 高可用集群*** |
CN109245908A (zh) * | 2017-07-10 | 2019-01-18 | 北京京东尚科信息技术有限公司 | 一种主从集群切换的方法和装置 |
CN110650193A (zh) * | 2019-09-20 | 2020-01-03 | 腾讯科技(深圳)有限公司 | 节点管理方法、集群管理设备及存储介质 |
-
2020
- 2020-01-13 CN CN202010032522.5A patent/CN111277632B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050237926A1 (en) * | 2004-04-22 | 2005-10-27 | Fan-Tieng Cheng | Method for providing fault-tolerant application cluster service |
US20060114873A1 (en) * | 2004-11-30 | 2006-06-01 | Kenichi Fujii | Wireless communication equipment, wireless communication control method and program |
US20110298516A1 (en) * | 2010-06-03 | 2011-12-08 | Arm Limited | Clock state independent retention master-slave flip-flop |
CN103647668A (zh) * | 2013-12-16 | 2014-03-19 | 上海证券交易所 | 一种高可用集群内主机群体决策***及切换方法 |
CN105743692A (zh) * | 2014-12-31 | 2016-07-06 | 瞻博网络公司 | 用于应用管理的基于策略的框架 |
CN107454140A (zh) * | 2017-06-27 | 2017-12-08 | 北京溢思得瑞智能科技研究院有限公司 | 一种基于大数据平台的Ceph集群自动化部署方法及*** |
CN109245908A (zh) * | 2017-07-10 | 2019-01-18 | 北京京东尚科信息技术有限公司 | 一种主从集群切换的方法和装置 |
CN107948017A (zh) * | 2017-09-30 | 2018-04-20 | 用友金融信息技术股份有限公司 | 高可用集群*** |
CN110650193A (zh) * | 2019-09-20 | 2020-01-03 | 腾讯科技(深圳)有限公司 | 节点管理方法、集群管理设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
P. MULEY等: "Pseudowire Preferential Forwarding Status Bit", 《IETF RFC6870》 * |
王芬等: "基于Bully算法的Redis集群选举方案优化", 《计算机科学》 * |
Also Published As
Publication number | Publication date |
---|---|
CN111277632B (zh) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112527520A (zh) | 一种部署消息中间件的方法和装置 | |
US9390156B2 (en) | Distributed directory environment using clustered LDAP servers | |
CN111181765A (zh) | 一种任务处理方法和装置 | |
CN111666134A (zh) | 一种分布式任务调度的方法和*** | |
CN107818027B (zh) | 名字节点主备切换的方法、装置和分布式*** | |
CN113079098B (zh) | 路由更新的方法、装置、设备和计算机可读介质 | |
CN107526838B (zh) | 数据库集群扩容的方法和装置 | |
CN113760522A (zh) | 一种任务处理方法和装置 | |
CN111277632B (zh) | ***集群中应用管理的方法和装置 | |
CN111767126A (zh) | 分布式批量处理的***和方法 | |
CN113541987A (zh) | 一种更新配置数据的方法和装置 | |
CN110019059B (zh) | 一种定时同步的方法和装置 | |
CN109284177B (zh) | 一种数据更新方法和装置 | |
CN114070889B (zh) | 配置方法、流量转发方法、设备、存储介质及程序产品 | |
CN112084254A (zh) | 一种数据同步方法和*** | |
CN114756173A (zh) | 文件合并的方法、***、设备和计算机可读介质 | |
CN115442129A (zh) | 一种管理集群访问权限的方法、装置和*** | |
CN112883103A (zh) | 集群间数据转移的方法和装置 | |
CN113760487A (zh) | 一种业务处理方法和装置 | |
CN113760469A (zh) | 分布式计算的方法和装置 | |
CN113742376A (zh) | 一种同步数据的方法、第一服务器以及同步数据的*** | |
CN113556370A (zh) | 一种服务调用方法和装置 | |
CN113364615B (zh) | 滚动升级的方法、装置、设备和计算机可读介质 | |
CN112860505A (zh) | 一种分布式集群的调控方法及装置 | |
CN113157354A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221010 Address after: 25 Financial Street, Xicheng District, Beijing 100033 Patentee after: CHINA CONSTRUCTION BANK Corp. Address before: 25 Financial Street, Xicheng District, Beijing 100033 Patentee before: CHINA CONSTRUCTION BANK Corp. Patentee before: Jianxin Financial Science and Technology Co.,Ltd. |
|
TR01 | Transfer of patent right |