CN111246397B - 集群系统、服务访问方法、装置及服务器 - Google Patents
集群系统、服务访问方法、装置及服务器 Download PDFInfo
- Publication number
- CN111246397B CN111246397B CN202010060605.5A CN202010060605A CN111246397B CN 111246397 B CN111246397 B CN 111246397B CN 202010060605 A CN202010060605 A CN 202010060605A CN 111246397 B CN111246397 B CN 111246397B
- Authority
- CN
- China
- Prior art keywords
- service
- access
- consistency
- information
- cluster
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种集群系统、服务访问方法、装置、服务器及计算机可读存储介质。所述系统包括:集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元;其中,所述集群部署管理平台用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息;所述全局配置分发中心用于维护访问路由表,所述访问路由表中包括租户与所述一致性系统服务单元组间的路由信息;所述前端服务器用于获取所述访问路由表,接收来自所述租户的访问请求,并将所述访问请求根据所述访问路由表转发至对应的所述一致性系统服务单元。以降低一致性系统服务单元的接入成本,实现租户数据的平滑迁移。
Description
技术领域
本发明涉及分布式集群技术领域,更具体的,涉及一种集群系统、一种服务访问方法、一种服务访问装置、一种服务器以及一种计算机可读存储介质。
背景技术
一致性系统服务单元是基于一致性协议实现的,通常在集群中作为基础分布式协调服务单元存在,提供高可靠的服务发现、分布式锁以及元数据读写等访问服务。
常用的接入一致性系统服务单元的方法如图1所示,为每一个一致性系统服务单元包装单独的DNS访问域名,当需要使用多个一致性系统服务单元时,应用程序需要维护一系列的DNS访问域名,并通过查找具体DNS访问域名来访问相关的一致性系统服务单元。
如果多个应用程序需要共享一个一致性系统服务单元,那么应用程序之间需要做好访问资源路径的隔离保护。通常做法是为一致性系统引入租户机制,即不同租户访问同一套一致性系统服务单元,在访问资源路径上会被完全隔离开来,以支持服务的共享使用。
但是该方案的缺点也比较明显:一是一致性系统服务单元存在容量上限,随着业务的快速发展,应用程序会需要越来越多的一致性系统服务单元,自然需要维护的一致性系统服务单元的域名列表也会不断增加,带来较高的接入成本;二是基于租户机制的服务共享,即访问资源路径的隔离保护,当单个租户的访问量快速增加的时候,会影响共享服务单元的其它租户的用户使用;三是对于一个共享的一致性系统服务单元,基于租户的数据迁移比较困难,存在服务可用性以及数据一致性的双重挑战。
因此,非常有必要提供一种新的面向分布式一致性系统的集群系统的方案,以降低一致性系统服务单元的接入成本,实现租户数据的平滑迁移。
发明内容
本发明的一个目的是提供一种集群系统的新的技术方案。
根据本发明的第一方面,提供了一种集群系统,所述系统包括:集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元;
其中,所述集群部署管理平台用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息;
所述全局配置分发中心用于维护访问路由表,所述访问路由表中包括租户与所述一致性系统服务单元组间的路由信息;
所述前端服务器用于获取所述访问路由表,接收来自所述租户的访问请求,并将所述访问请求根据所述访问路由表转发至对应的所述一致性系统服务单元。
可选地,所述集群中的单台物理机上有多组实例运行,多个一致性系统服务单元分布在同一组物理机上,多个所述一致性系统服务单元所在的多组物理机组成集群。
可选地,所述前端服务器还用于:定期从所述全局配置分发中心加载最新路由表配置,从所述集群部署管理平台查询并获取各所述一致性系统服务单元的服务端口信息。
可选地,所述前端服务器将所述访问请求转发至对应的所述一致性系统服务单元具体包括:
所述前端服务器根据所述访问请求中的租户信息,查询所述访问路由表中与所述租户信息对应的序号和对应的服务端口信息,确定与所述服务端口信息对应的服务端口,以及与所述序号对应的一致性系统服务单元;将所述访问请求通过所确定的所述服务端口转发至与所述一致性系统服务单元。
可选地,所述服务名至少包括:分布式应用程序协调服务ZooKeeper,分布式键值存储系统ETCD。
可选地,所述集群部署管理平台还用于:根据一致性系统服务单元的序号配置各所述一致性系统服务单元所依赖的物理资源。
可选地,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录。
可选地,所述集群部署管理平台根据一致性系统服务单元的序号配置各所述一致性系统服务单元所依赖的物理资源,具体包括:
将在默认通信端口号加上所述序号乘以100得到的端口号,配置为所述一致性系统服务单元所依赖的通信端口号;
将根据所述序号按照顺序选取的数据磁盘,配置为所述一致性系统服务单元所依赖的数据磁盘;
将在工作目录路径上增加了所述序号的工作目录,配置为所述一致性系统服务单元所依赖的所述工作目录。
可选地,所述访问路由表中包括租户信息、集群名、服务名以及序号,各所述一致性系统服务单元的描述名称被配置为<集群名,服务名,序号>。
可选地,所述集群部署管理平台还用于:在所述一致性系统服务单元的服务端口信息更新时,向所述前端服务器同步新的一致性系统服务单元的服务端口信息。
根据本发明的第二方面,提供一种服务访问方法,应用于包括集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元的系统中,所述方法包括:
接收来自租户的访问请求,所述访问请求中包括租户信息;
查询并获取访问路由表中与所述租户信息对应的序号和对应的服务端口信息;其中,所述访问路由表中包括租户信息、集群名、服务名以及序号;
根据所述服务端口信息确定服务端口,并根据所述序号确定对应的一致性系统服务单元;
将所述访问请求通过确定的所述服务端口转发至所述一致性系统服务单元。
可选地,所述方法还包括:
按照预设时间间隔从全局配置分发中心获取所述访问路由表,以及从集群部署管理平台获取各个所述一致性系统服务单元的服务端口信息。
根据本发明的第三方面,提供一种服务访问方法,应用于包括集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元的系统中,所述方法包括:
获取所述一致性系统服务单元对应的物理资源配置信息;
向所述一致性系统服务单元发送对应的所述物理资源配置信息,以配置各所述一致性系统服务单元所依赖的物理资源;
管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。
可选地,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录,所述通信端口号是将在默认通信端口号加上所述一致性系统服务单元的序号乘以100得到的;所述数据磁盘是根据所述序号按照顺序选取的;所述工作目录是在工作目录路径上增加所述序号后得到的。
可选地,所述方法还包括:
在所述一致性系统服务单元的服务端口信息更新时,向前端服务器同步新的一致性系统服务单元的服务端口信息。
根据本发明的第四方面,提供一种服务访问装置,包括:
接收模块,用于接收来自租户的访问请求,所述访问请求中包括租户信息;
查询模块,用于查询并获取访问路由表中与所述租户信息对应的序号和对应的服务端口信息;其中,所述访问路由表中包括租户信息、集群名、服务名以及序号;
确定模块,用于根据所述服务端口信息确定服务端口,并根据所述序号确定对应的一致性系统服务单元;
发送模块,用于将所述访问请求通过确定的所述服务端口转发至所述一致性系统服务单元。
根据本发明的第五方面,提供一种服务访问装置,包括:
获取模块,用于获取各一致性系统服务单元对应的物理资源配置信息;
发送模块,用于向各所述一致性系统服务单元发送对应的所述物理资源配置信息,以配置各所述一致性系统服务单元所依赖的物理资源;
管理模块,用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。
根据本发明的第六方面,提供一种服务器,包括:
存储器,用于存储可执行命令;
处理器,用于在所述可执行命令的控制下,执行如本发明的第二方面中所述的服务访问方法。
根据本发明的第七方面,提供一种服务器,包括:
存储器,用于存储可执行命令;
处理器,用于在所述可执行命令的控制下,执行如本发明的第三方面中所述的服务访问方法。
根据本发明的第八方面,提供一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行如本发明的第二方面中所述的服务访问方法。
根据本发明的第九方面,提供一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行如本发明的第三方面中所述的服务访问方法。
本发明的一个有益效果在于,根据本发明实施例的集群系统,引入从集群到服务再到一致性系统服务单元这三层架构来管理分布式一致性系统服务单元,支持混合部署的池化架构,进而在租户与混合部署的一致性系统服务单元之间引入一组前端服务器,该前端服务器通过从全局配置分发中心获取的访问路由表,以及与集群部署管理平台交互,提供从租户到具体一致性系统服务单元的访问请求的路由转发服务,可以将业务接入成本最小化。同时,在本发明中,由于不同租户接入的分布式一致性系统服务单元之间是物理隔离的,因此单个租户的数据迁移转换成单个一致性系统服务单元的整体迁移,从而可以很好地支持业务数据迁移这个场景需求。进一步地,前端服务器维护着从租户到一致性系统服务单元服务地址的访问路由信息,实现了业务无感的服务单元平滑在线迁移。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是现有的接入一致性系统服务单元的方法示意图;
图2是根据本发明实施例的集群系统架构的示意图;
图3是根据本发明实施例的集群系统的结构示意图;
图4是本发明实施例中对一致性系统服务单元的物理资源的配置的示意图;
图5是本发明的服务访问方法实施例一的示意性流程图;
图6是本发明的服务访问装置实施例一的示意性结构图;
图7是本发明的服务器实施例一的示意性结构图;
图8是本发明的服务访问方法实施例二的示意性流程图;
图9是本发明的服务访问装置实施例二的示意性结构图;
图10是本发明的服务器实施例二的示意性结构图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<系统实施例>
云业务通常以集群为单位来部署运维,即集群中同时部署有分布式调度、分布式存储以及分布式协调等基础服务组件。随着云业务的高速发展,大量集群被搭建,大量分布式一致性系统服务单元也因此被部署,因此而产生的痛点问题是:业务方搭建的每个集群均需要配套一个一致性系统服务单元,这就需要大量采购机器,成本巨大;同时不断增长的部署规模在增加运维成本,给服务整体带来了潜在的稳定性风险。事实上,大多数情况下业务对一致性服务的关键依赖主要在管控路径上,因此请求访问量并不大。基于这个背景,由此产生了在现有接入方式不改变的前提下,提供分布式一致性系统服务单元混合部署并且可以支持平滑迁移的强烈业务需求。
如图2所示,在本发明实施例中,引入了从集群到服务再到一致性系统服务单元这三层架构来组织管理分布式一致性系统服务单元的机制。具体的,本发明实施例的基于多的混合部署系统可以包括:集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元。
其中,所述集群部署管理平台用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。例如,所述集群部署管理平台可以用于部署所述一致性系统服务单元、更新各所述一致性系统服务单元的服务地址信息、服务端口信息;在所述一致性系统服务单元的服务端口信息更新时,向所述前端服务器同步新的一致性系统服务单元的服务端口信息。
池化技术是一种在分布式应用中常见的资源复用技术,在本实施例中,所述集群中的单台物理机上有多组实例运行,多个一致性系统服务单元分布在同一组物理机上,多个所述一致性系统服务单元所在的多组物理机组成集群。如图2所示,以一致性系统服务单元由三个节点组成为例,当前有6台物理机(如图2中心集群中的圆柱体所示),可以部署4套独立的分布式一致性服务单元,并且做到了故障爆炸半径与传统部署方式保持一致,即,任意挂掉2台物理机,只会影响到1组一致性系统服务单元。
在业界存在多个知名且应用广泛的分布式一致性服务,例如分布式应用程序协调服务(ZooKeeper)和分布式键值存储系统(ETCD)等,本实施例能够兼容并支持多套分布式一致性服务,即,集群中所运行的一致性系统服务单元可以分属于多个分布式一致性服务。
为此,在本实施例中,所述全局配置分发中心用于维护访问路由表,所述访问路由表中包括租户与所述一致性系统服务单元间的路由信息。如图3中所示,所述访问路由表中可以包括租户信息(tenant)、集群名(cluster)、服务名(server role)以及序号(instance)。所述服务名例如可以是ZooKeeper,ETCD等。
在本实施例中,基于一个三元组来表示一个具体的所述一致性系统服务单元,即,所述一致性系统服务单元的描述名称被配置为<集群名,服务名,序号>。其中,序号是是指一致性系统服务单元的序号。
如图3所示,在中心集群中运行着ZooKeeper以及Etcd等分布式一致性服务,这里的4套一致性系统服务单元,按照三元组描述,可以分别表示为:
中心集群001的一致性服务ZooKeeper实例1,*<center-cluster-001,ZK#,1>。
中心集群001的一致性服务ZooKeeper实例2,*<center-cluster-001,ZK#,2>。
中心集群001的一致性服务ETCD实例1,*<center-cluster-001,ETCD#,2>。
中心集群002的一致性服务ZooKeeper实例1,*<center-cluster-002,ZK#,1>。
进一步地,本实施例中,在后端混合部署的一致性系统服务单元与租户之间,进一步部署一组前端服务器,提供从租户到具体的一致性系统服务单元的访问请求的路由转发服务,即,向租户屏蔽了具体的分布式一致性服务单元,以最小化业务接入成本。
具体的,所述前端服务器用于获取所述访问路由表,接收来自所述租户的访问请求,并将所述访问请求根据所述访问路由表转发至对应的所述一致性系统服务单元。进一步地,所述前端服务器还可以用于从所述全局配置分发中心获取所述访问路由表,并从所述集群部署管理平台获取各所述一致性系统服务单元的服务端口信息。
实际应用中,所述前端服务器将所述访问请求转发至对应的所述一致性系统服务单元的过程具体可以包括:所述前端服务器根据所述访问请求中的租户信息,查询所述访问路由表中与所述租户信息对应的序号和对应的服务端口信息,确定与所述服务端口信息对应的服务端口,以及与所述序号对应的一致性系统服务单元;将所述访问请求通过所确定的所述服务端口转发至与所述一致性系统服务单元。
需要说明的是,当某个租户的用户访问量增加到触发服务迁移需求时,系统运维者可以基于集群部署管理平台进行相关分布式一致性服务单元的机器迁移操作。相应地,前端服务器会定期从集群部署管理平台的查询服务信息,会感知到该变更并及时体现在前端服务器对租户的访问请求的路由转发中,因而本实施例可以支持分布式一致性系统服务单元的平滑在线迁移。
进一步地,本实施例还提供一种资源协调分配机制。所述集群部署管理平台还可以用于:根据一致性系统服务单元的序号配置各所述一致性系统服务单元所依赖的物理资源。其中,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录。
所述集群部署管理平台根据一致性系统服务单元的序号配置各所述一致性系统服务单元所依赖的物理资源,具体包括:将在默认通信端口号加上所述序号乘以100得到的端口号,配置为所述一致性系统服务单元所依赖的通信端口号;将根据所述序号按照顺序选取的数据磁盘,配置为所述一致性系统服务单元所依赖的数据磁盘;将在工作目录路径上增加了所述序号的工作目录,配置为所述一致性系统服务单元所依赖的所述工作目录。
如图4所示,以ZooKeeper为例,对于ZooKeeper依赖的网络通信端口,在默认的通信端口上增加序号乘以100,因此ZooKeeper 1依赖端口为2181,2182以及2183,那么ZooKeeper 2依赖的通信端口即为2281,2282以及2283,ZooKeeper 3依赖的通信端口即为2381,2382以及2383,ZooKeeper 4依赖的通信端口即为2481,2482,2483;对于ZooKeeper依赖的数据磁盘,默认依赖两块盘,那么就按序号来顺序地选取依赖磁盘,因此ZooKeeper 1依赖磁盘为disk1,disk2,那么ZooKeeper 2依赖的磁盘即为disk 3以及disk4,ZooKeeper3依赖磁盘为disk5,disk6,ZooKeeper 4依赖磁盘为disk7,disk8;对于工作目录的依赖,则直接在工作目录路径上增加具体序号以隔离使用,因此ZooKeeper 1依赖的工作目录为:/home/admin/zkinstance#1,那么ZooKeeper 2依赖的工作目录为/home/admin/zkinstance#2,那么ZooKeeper 3依赖的工作目录为/home/admin/zkinstance#3,那么ZooKeeper 4依赖的工作目录为/home/admin/zkinstance#2。
可见,本实施例中一致性系统服务单元间是基于物理机上的进程级别的隔离,进而可以确保该池化技术是支持平滑在线迁移的。这里的资源隔离同样可以基于容器技术,前提是能够在容器层面拿到物理部署相关信息,譬如部署的机架,依赖的上联网络交换机等信息,这样能够确保一致性系统服务单元的高可靠,能够容忍机架掉电,网络设备故障等情况。
根据本实施例的基于多的混合部署系统系统,引入从集群到服务再到一致性系统服务单元这三层架构来管理分布式一致性系统服务单元,支持混合部署的池化架构,进而在租户与混合部署的一致性系统服务单元之间引入一组前端服务器,该前端服务器通过从全局配置分发中心获取的访问路由表,以及与集群部署管理平台交互,提供从租户到具体一致性系统服务单元的访问请求的路由转发服务,可以将业务接入成本最小化。同时,在本发明中,由于不同租户接入的分布式一致性系统服务单元之间是物理隔离的,因此单个租户的数据迁移转换成单个一致性系统服务单元的整体迁移,从而可以很好地支持业务数据迁移这个场景需求。进一步地,前端服务器维护着从租户到一致性系统服务单元服务地址的访问路由信息,实现了业务无感的服务单元平滑在线迁移。
<前端服务器实施例>
<方法>
本实施例提供一种服务访问方法,该方法可以应用于包括集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元的系统中,例如可以由上述实施例中的前端服务器执行。
如图5所示,本实施例的方法可以包括步骤1100~步骤1400:
步骤1100,接收来自租户的访问请求,所述访问请求中包括租户信息。
步骤1200,查询并获取访问路由表中与所述租户信息对应的序号和对应的服务端口信息。
其中,所述访问路由表中包括租户信息、集群名、服务名以及序号。所述服务名例如可以是ZooKeeper,ETCD等。
在实际应用中,该前端服务器可以按照预设时间间隔从全局配置分发中心获取所述访问路由表,以及从集群部署管理平台获取各个所述一致性系统服务单元的服务端口信息。
步骤1300,根据所述服务端口信息确定服务端口,并根据所述序号确定对应的一致性系统服务单元。
步骤1400,将所述访问请求通过确定的所述服务端口转发至所述一致性系统服务单元。
需要说明的是,当某个租户的用户访问量增加到触发服务迁移需求时,系统运维者可以基于集群部署管理平台进行相关分布式一致性服务单元的机器迁移操作。相应地,前端服务器会定期从集群部署管理平台的查询服务信息,会感知到该变更并及时体现在前端服务器对租户的访问请求的路由转发中,因而本实施例可以支持分布式一致性系统服务单元的平滑在线迁移。
本实施例的方法,前端服务器通过从全局配置分发中心获取的访问路由表,以及与集群部署管理平台交互,提供从租户到具体一致性系统服务单元的访问请求的路由转发服务,可以将业务接入成本最小化。进一步地,前端服务器维护着从租户到一致性系统服务单元服务地址的访问路由信息,实现了业务无感的服务单元平滑在线迁移。
<装置>
本实施例提供一种服务访问装置。该服务访问装置例如可以设置在上述实施例所述的前端服务器中。
具体的,如图6所示,本实施例的服务访问装置2000可以包括:接收模块2100,查询模块2200,确定模块2300和发送模块2400。
其中,接收模块2100,用于接收来自租户的访问请求,所述访问请求中包括租户信息;
查询模块2200,用于查询并获取访问路由表中与所述租户信息对应的序号和对应的服务端口信息;其中,所述访问路由表中包括租户信息、集群名、服务名以及序号;
确定模块2300,用于根据所述服务端口信息确定服务端口,并根据所述序号确定对应的一致性系统服务单元;
发送模块2400,用于将所述访问请求通过确定的所述服务端口转发至所述一致性系统服务单元。
可选地,该服务访问装置还可以包括获取模块,用于按照预设时间间隔从全局配置分发中心获取所述访问路由表,以及从集群部署管理平台获取各个所述一致性系统服务单元的服务端口信息。
本实施例的服务访问装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
<服务器>
本实施例提供一种服务器,如图7所示,该服务器3000可以包括:存储器3100,用于存储可执行命令;处理器3200,用于在所述可执行命令的控制下,执行上述实施例中所述的服务访问方法。
<计算机可读存储介质>
本实施例提供一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行如上述实施例中所述的服务访问方法。
<集群部署管理平台实施例>
<方法>
本实施例提供一种服务访问方法,该方法应用于包括集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元的系统中,例如可以由上述实施例中的集群部署管理平台执行。
如图8所示,本实施例的方法可以包括步骤4100~步骤4300:
步骤4100,获取一致性系统服务单元对应的物理资源配置信息。
具体的,为了协调资源分配,该集群部署管理平台可以按照预设规则确定各一致性系统服务单元对应的物理资源配置信息。其中,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录。
步骤4200,向所述一致性系统服务单元发送对应的所述物理资源配置信息,以配置各所述一致性系统服务单元所依赖的物理资源。
步骤4300,管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。
在本实施例中,可以基于一个三元组来表示一个具体的所述一致性系统服务单元,即,所述一致性系统服务单元的描述名称被配置为<集群名,服务名,序号>。因此,本实施例能够兼容并支持多套分布式一致性服务,即,中心集群所运行的一致性系统服务单元可以分属于多个分布式一致性服务。
需要说明的是,所配置的物理资源中,所述通信端口号是将在默认通信端口号加上所述一致性系统服务单元的序号乘以100得到的;所述数据磁盘是根据所述序号按照顺序选取的;所述工作目录是在工作目录路径上增加所述序号后得到的。
例如,以ZooKeeper为例,对于ZooKeeper依赖的网络通信端口,在默认的通信端口上增加序号乘以100,因此ZooKeeper 1依赖端口为2181,2182以及2183,那么ZooKeeper 2依赖的通信端口即为2281,2282以及2283,ZooKeeper3依赖的通信端口即为2381,2382以及2383,ZooKeeper4依赖的通信端口即为2481,2482,2483;对于ZooKeeper依赖的数据磁盘,默认依赖两块盘,那么就按序号来顺序地选取依赖磁盘,因此ZooKeeper1依赖磁盘为disk1,disk2,那么ZooKeeper 2依赖的磁盘即为disk 3以及disk4,ZooKeeper 3依赖磁盘为disk5,disk6,ZooKeeper 4依赖磁盘为disk7,disk8;对于工作目录的依赖,则直接在工作目录路径上增加具体序号以隔离使用,因此ZooKeeper 1依赖的工作目录为:/home/admin/zkinstance#1,那么ZooKeeper 2依赖的工作目录为/home/admin/zkinstance#2,那么ZooKeeper 3依赖的工作目录为/home/admin/zkinstance#3,那么ZooKeeper 4依赖的工作目录为/home/admin/zkinstance#2。
可见,本实施例中一致性系统服务单元之间是基于物理机上的进程级别的隔离,进而确保该池化技术是支持平滑在线迁移的。这里的资源隔离同样可以基于容器技术,前提是能够在容器层面拿到物理部署相关信息,譬如部署的机架,依赖的上联网络交换机等信息,这样能够确保一致性系统服务单元的高可靠,能够容忍机架掉电,网络设备故障等情况。
在本实施例中,集群部署管理平台用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。例如,所述集群部署管理平台可以用于部署所述一致性系统服务单元、更新各所述一致性系统服务单元的服务地址信息、服务端口信息;在所述一致性系统服务单元的服务端口信息更新时,向所述前端服务器同步新的一致性系统服务单元的服务端口信息。
本实施例的方法,由于不同租户接入的分布式一致性系统服务单元之间是物理隔离的,因此单个租户的数据迁移转换成单个一致性系统服务单元的整体迁移,从而可以很好地支持业务数据迁移这个场景需求。
<装置>
本实施例提供一种服务访问装置。该服务访问装置例如可以设置在上述实施例所述的集群部署管理平台中。具体的,如图9所示,本实施例的服务访问装置5000可以包括:获取模块5100、发送模块5200和管理模块5300。
其中,获取模块5100,用于获取各一致性系统服务单元对应的物理资源配置信息。
发送模块5200,用于向各所述一致性系统服务单元发送对应的所述物理资源配置信息,以配置各所述一致性系统服务单元所依赖的物理资源。
管理模块5300,用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。
其中,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录,所述通信端口号是将在默认通信端口号加上所述一致性系统服务单元的序号乘以100得到的;所述数据磁盘是根据所述序号按照顺序选取的;所述工作目录是在工作目录路径上增加所述序号后得到的。
进一步地,该服务访问装置5000还可以包括更新模块,用于在所述一致性系统服务单元的服务端口信息更新时,向前端服务器同步新的一致性系统服务单元的服务端口信息。
本实施例的服务访问装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
<服务器>
本实施例提供一种服务器,如图10所示,该服务器6000可以包括:存储器6100,用于存储可执行命令;处理器6200,用于在所述可执行命令的控制下,执行上述实施例中所述的服务访问方法。
<计算机可读存储介质>
本实施例提供一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行上述实施例中所述的服务访问方法。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。
Claims (21)
1.一种集群系统,所述系统包括:集群部署管理平台、全局配置分发中心、前端服务器及多个一致性系统服务单元;
其中,所述集群部署管理平台用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息;
所述全局配置分发中心用于维护访问路由表,所述访问路由表中包括租户与所述一致性系统服务单元组间的路由信息;
所述前端服务器用于获取所述访问路由表,接收来自所述租户的访问请求,并将所述访问请求根据所述访问路由表转发至对应的所述一致性系统服务单元。
2.根据权利要求1所述的系统,所述集群中的单台物理机上有多组实例运行,多个一致性系统服务单元分布在同一组物理机上,多个所述一致性系统服务单元所在的多组物理机组成集群。
3.根据权利要求2所述的系统,所述前端服务器还用于:定期从所述全局配置分发中心加载最新路由表配置,从所述集群部署管理平台查询并获取各所述一致性系统服务单元的服务端口信息。
4.根据权利要求3所述的系统,所述前端服务器将所述访问请求转发至对应的所述一致性系统服务单元具体包括:
所述前端服务器根据所述访问请求中的租户信息,查询所述访问路由表中与所述租户信息对应的序号和对应的服务端口信息,确定与所述服务端口信息对应的服务端口,以及与所述序号对应的一致性系统服务单元;将所述访问请求通过所确定的所述服务端口转发至与所述一致性系统服务单元。
5.根据权利要求2所述的系统,服务名至少包括:分布式应用程序协调服务ZooKeeper,分布式键值存储系统ETCD。
6.根据权利要求2所述的系统,所述集群部署管理平台还用于:根据一致性系统服务单元的序号配置各所述一致性系统服务单元所依赖的物理资源。
7.根据权利要求6所述的系统,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录。
8.根据权利要求7所述的系统,所述集群部署管理平台根据一致性系统服务单元的序号配置各所述一致性系统服务单元所依赖的物理资源,具体包括:
将在默认通信端口号加上所述序号乘以100得到的端口号,配置为所述一致性系统服务单元所依赖的通信端口号;
将根据所述序号按照顺序选取的数据磁盘,配置为所述一致性系统服务单元所依赖的数据磁盘;
将在工作目录路径上增加了所述序号的工作目录,配置为所述一致性系统服务单元所依赖的所述工作目录。
9.根据权利要求1所述的系统,所述访问路由表中包括租户信息、集群名、服务名以及序号,各所述一致性系统服务单元的描述名称被配置为<集群名,服务名,序号>。
10.根据权利要求1所述的系统,所述集群部署管理平台还用于:在所述一致性系统服务单元的服务端口信息更新时,向所述前端服务器同步新的一致性系统服务单元的服务端口信息。
11.一种服务访问方法,应用于如权利要求1~10中任一项所述的集群系统的前端服务器中,所述方法包括:
接收来自租户的访问请求,所述访问请求中包括租户信息;
查询并获取访问路由表中与所述租户信息对应的序号和对应的服务端口信息;其中,所述访问路由表中包括租户信息、集群名、服务名以及序号;
根据所述服务端口信息确定服务端口,并根据所述序号确定对应的一致性系统服务单元;
将所述访问请求通过确定的所述服务端口转发至所述一致性系统服务单元。
12.根据权利要求11所述的方法,所述方法还包括:
按照预设时间间隔从全局配置分发中心获取所述访问路由表,以及从集群部署管理平台获取各个所述一致性系统服务单元的服务端口信息。
13.一种服务访问方法,应用于如权利要求1~10中任一项所述的集群系统的集群部署管理平台中,所述方法包括:
获取所述一致性系统服务单元对应的物理资源配置信息;
向所述一致性系统服务单元发送对应的所述物理资源配置信息,以配置各所述一致性系统服务单元所依赖的物理资源;
管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。
14.根据权利要求13所述的方法,其中,所述物理资源至少包括:通信端口号、数据磁盘以及工作目录,所述通信端口号是在默认通信端口号加上所述一致性系统服务单元的序号乘以100得到的;所述数据磁盘是根据所述序号按照顺序选取的;所述工作目录是在工作目录路径上增加所述序号后得到的。
15.根据权利要求13所述的方法,所述方法还包括:
在所述一致性系统服务单元的服务端口信息更新时,向前端服务器同步新的一致性系统服务单元的服务端口信息。
16.一种服务访问装置,应用于如权利要求1~10中任一项所述的集群系统的前端服务器中,包括:
接收模块,用于接收来自租户的访问请求,所述访问请求中包括租户信息;
查询模块,用于查询并获取访问路由表中与所述租户信息对应的序号和对应的服务端口信息;其中,所述访问路由表中包括租户信息、集群名、服务名以及序号;
确定模块,用于根据所述服务端口信息确定服务端口,并根据所述序号确定对应的一致性系统服务单元;
发送模块,用于将所述访问请求通过确定的所述服务端口转发至所述一致性系统服务单元。
17.一种服务访问装置,应用于如权利要求1~10中任一项所述的集群系统的集群部署管理平台中,包括:
获取模块,用于获取一致性系统服务单元对应的物理资源配置信息;
发送模块,用于向所述一致性系统服务单元发送对应的所述物理资源配置信息,以配置各所述一致性系统服务单元所依赖的物理资源;
管理模块,用于管理所述多个一致性系统服务单元、服务地址信息以及对应的服务端口信息。
18.一种服务器,包括:
存储器,用于存储可执行命令;
处理器,用于在所述可执行命令的控制下,执行如权利要求11或12中所述的服务访问方法。
19.一种服务器,包括:
存储器,用于存储可执行命令;
处理器,用于在所述可执行命令的控制下,执行如权利要求13-15中任一项所述的服务访问方法。
20.一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行如权利要求11或12中所述的服务访问方法。
21.一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行如权利要求13-15中任一项所述的服务访问方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010060605.5A CN111246397B (zh) | 2020-01-19 | 2020-01-19 | 集群系统、服务访问方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010060605.5A CN111246397B (zh) | 2020-01-19 | 2020-01-19 | 集群系统、服务访问方法、装置及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111246397A CN111246397A (zh) | 2020-06-05 |
CN111246397B true CN111246397B (zh) | 2022-05-06 |
Family
ID=70878059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010060605.5A Active CN111246397B (zh) | 2020-01-19 | 2020-01-19 | 集群系统、服务访问方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111246397B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111770159B (zh) * | 2020-06-26 | 2023-08-22 | 中信银行股份有限公司 | 服务发现系统、方法、第一服务器及存储介质 |
CN112882792B (zh) * | 2021-02-03 | 2022-12-13 | 天津五八到家货运服务有限公司 | 信息加载方法、计算机设备及存储介质 |
CN114415980B (zh) * | 2022-03-29 | 2022-05-31 | 维塔科技(北京)有限公司 | 多云集群数据管理系统、方法及装置 |
CN115396302B (zh) * | 2022-08-11 | 2024-01-30 | 臻乐尔科技服务(上海)有限公司 | 一种多节点高可用的配置分发系统及其工作方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104065568A (zh) * | 2014-07-07 | 2014-09-24 | 电子科技大学 | 一种Web服务器集群的路由方法 |
CN106446263A (zh) * | 2016-10-18 | 2017-02-22 | 北京航空航天大学 | 一种多媒体文件云存储平台及使用该云存储平台去冗的方法 |
CN108293001A (zh) * | 2015-12-31 | 2018-07-17 | 华为技术有限公司 | 一种软件定义数据中心及其中的服务集群的部署方法 |
CN108427677A (zh) * | 2017-02-13 | 2018-08-21 | 阿里巴巴集团控股有限公司 | 一种对象访问方法、装置及电子设备 |
CN110474963A (zh) * | 2019-07-17 | 2019-11-19 | 中国平安人寿保险股份有限公司 | 一种基于zookeeper的资源访问方法、系统、介质及电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10454758B2 (en) * | 2016-08-31 | 2019-10-22 | Nicira, Inc. | Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP |
CN108173919A (zh) * | 2017-12-22 | 2018-06-15 | 百度在线网络技术(北京)有限公司 | 大数据平台搭建系统、方法、设备及计算机可读介质 |
-
2020
- 2020-01-19 CN CN202010060605.5A patent/CN111246397B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104065568A (zh) * | 2014-07-07 | 2014-09-24 | 电子科技大学 | 一种Web服务器集群的路由方法 |
CN108293001A (zh) * | 2015-12-31 | 2018-07-17 | 华为技术有限公司 | 一种软件定义数据中心及其中的服务集群的部署方法 |
CN106446263A (zh) * | 2016-10-18 | 2017-02-22 | 北京航空航天大学 | 一种多媒体文件云存储平台及使用该云存储平台去冗的方法 |
CN108427677A (zh) * | 2017-02-13 | 2018-08-21 | 阿里巴巴集团控股有限公司 | 一种对象访问方法、装置及电子设备 |
CN110474963A (zh) * | 2019-07-17 | 2019-11-19 | 中国平安人寿保险股份有限公司 | 一种基于zookeeper的资源访问方法、系统、介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111246397A (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111246397B (zh) | 集群系统、服务访问方法、装置及服务器 | |
US10347542B2 (en) | Client-initiated leader election in distributed client-server systems | |
CN111614738B (zh) | 基于Kubernetes集群的服务访问方法、装置、设备及存储介质 | |
US9448901B1 (en) | Remote direct memory access for high availability nodes using a coherent accelerator processor interface | |
US20210019162A1 (en) | Enhanced migration of clusters based on data accessibility | |
CN111124604A (zh) | 分配容器组pod IP地址的方法、装置、设备及存储介质 | |
US9628504B2 (en) | Deploying a security appliance system in a high availability environment without extra network burden | |
US20210181962A1 (en) | Mounting a shared data store of a server cluster on a client cluster for use as a remote data store | |
US9847903B2 (en) | Method and apparatus for configuring a communication system | |
US11177974B2 (en) | Consistent provision of member node group information on virtual overlay network | |
CN107172214B (zh) | 一种具有负载均衡的服务节点发现方法及装置 | |
CN115150410B (zh) | 多集群访问方法和系统 | |
WO2014108769A1 (en) | Management of distributed network switching cluster | |
US11461053B2 (en) | Data storage system with separate interfaces for bulk data ingestion and data access | |
US20200387404A1 (en) | Deployment of virtual node clusters in a multi-tenant environment | |
US11108854B2 (en) | Peer-to-peer network for internet of things resource allocation operation | |
CN110609656B (zh) | 存储管理方法、电子设备和计算机程序产品 | |
US10542110B2 (en) | Data communication in a clustered data processing environment | |
US20190158455A1 (en) | Automatic dns updates using dns compliant container names | |
US20180123999A1 (en) | Tracking client location using buckets | |
CN114879907A (zh) | 一种数据分布确定方法、装置、设备及存储介质 | |
CN115729693A (zh) | 数据处理方法、装置、计算机设备及计算机可读存储介质 | |
CN110058790B (zh) | 用于存储数据的方法、设备和计算机程序产品 | |
US11875202B2 (en) | Visualizing API invocation flows in containerized environments | |
US20210240715A1 (en) | Signaling and resolution model for multi-level session-based description descriptors |
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: 20230519 Address after: Room 1-2-A06, Yungu Park, No. 1008 Dengcai Street, Sandun Town, Xihu District, Hangzhou City, Zhejiang Province Patentee after: Aliyun Computing Co.,Ltd. Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK Patentee before: ALIBABA GROUP HOLDING Ltd. |
|
TR01 | Transfer of patent right |