CN114629921A - 云平台及其提供的对象存储服务的桶管理方法 - Google Patents
云平台及其提供的对象存储服务的桶管理方法 Download PDFInfo
- Publication number
- CN114629921A CN114629921A CN202011628962.3A CN202011628962A CN114629921A CN 114629921 A CN114629921 A CN 114629921A CN 202011628962 A CN202011628962 A CN 202011628962A CN 114629921 A CN114629921 A CN 114629921A
- Authority
- CN
- China
- Prior art keywords
- bucket
- data bucket
- data
- tenant
- static
- 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
- 238000007726 management method Methods 0.000 title abstract description 18
- 230000003068 static effect Effects 0.000 claims abstract description 385
- 238000000034 method Methods 0.000 claims abstract description 63
- 230000015654 memory Effects 0.000 claims description 24
- 230000002159 abnormal effect Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 25
- 230000004044 response Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- 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
-
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种云平台及其的桶管理方法,该方法包括以下步骤:包括以下步骤:接收租户输入的动态桶创建指令,根据动态桶创建指令创建动态桶的域名,并将动态桶的域名与设置在第一区域的第一静态桶和设置在第二区域的第二静态桶关联,其中第二静态桶存储的对象是第一静态桶存储的对象的跨区域备份,检测第一静态桶和第二静态桶的工作状态,接收客户端发送的针对动态桶的域名的访问请求,根据工作状态向客户端发送与动态桶的域名关联的第一静态桶的IP地址或与桶域名关联的第二静态桶的IP地址。基于以上方案,客户端只需访问动态桶的域名即可访问到第一静态桶或第二静态桶,客户端无需考虑第一静态桶和第二静态桶的工作状态。
Description
技术领域
本申请涉及云技术领域,尤其涉及一种云平台及其提供的对象存储服务的桶管理方法。
背景技术
对象存储服务(Object Storage Service,OBS)是公有云的一个基于对象的海量存储服务,为公有云的租户提供海量、安全、高可靠、低成本的数据存储能力。
桶(bucket)是OBS中存储对象的容器,每个桶都有自己的存储类别、访问权限、所属区域等属性,租户在互联网上通过桶的访问域名来定位桶,根据实际需要,桶可设置在不同的区域。
桶具有跨区域数据容灾备份的需求,但现有的OBS服务针对跨区域备份策略的至少两个桶分别设置不同的域名,客户端需根据不同域名访问不同区域中的桶,当一个区域的桶发生故障时,客户端需改变要访问的桶的域名来访问另一个区域的桶,从而造成不便。
发明内容
本申请提供了一种云平台及其桶管理方法,可提高客户端访问设置有跨区域备份的静态桶的便利性。
第一方面,本申请提供一种提供云存储服务的方法,包括:为租户配置第一数据桶和第二数据桶,第一数据桶设置在第一区域,第二数据桶设置在第二区域,第二数据桶存储的数据对象是第一数据桶存储的数据对象的跨区域备份,接收租户输入的第三数据桶创建指令,根据第三数据桶创建指令向租户提供第三数据桶的域名,接收客户端发送的针对第三数据桶的域名的访问请求,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,向客户端返回目标数据桶的IP地址。
本申请为存在备份关系的第一数据桶和第二数据桶设置第三数据桶的域名,客户端只需访问第三数据桶的域名即可访问到第一数据桶或第二数据桶,客户端无需考虑第一数据桶和第二数据桶的工作状态,在从而提升用户体验。
在第一方面的一种可能的实现方式中,为租户配置第一数据桶和第二数据桶,通过以下方式实现:接收租户输入的第一数据桶创建指令,第一数据桶创建指令用于指示租户指定的第一区域,根据第一数据桶创建指令在第一区域创建第一数据桶,其中,第一数据桶用于存储租户上传的对象,接收租户输入的第二数据桶创建指令,第二数据桶创建指令用于指示租户指定的第二区域,根据第二数据桶创建指令在第二区域创建第二数据桶。
在本实现方式中,云平台接收数据桶创建指令并创建第一和第二数据桶,租户可先创建第一和第二数据桶,在需要时再创建第三数据桶的域名,并设置第三数据桶的域名和第一和第二数据桶关联,因此,云平台可提供灵活的桶设置方式,让租户可以在有业务需求时再在已经创建好的多个数据桶的基础上进一步设置域名与多个已经创建好的数据桶关联。
在第一方面的一种可能的实现方式中,第一方面所述的方法还包括以下步骤:接收租户输入的桶间跨区域配置指令,桶间跨区域配置指令用于指示第一数据桶作为源桶并且第二数据桶作为目标桶,根据桶间跨区域配置指令将源桶存储的对象跨区域复制至目标桶中。
在本实现方式中,云平台接收桶间跨区域配置指令并创建桶间跨区域备份,租户可先创建两个数据桶,在需要时再设置该两个数据桶进行跨区域备份,可提供灵活的桶设置方式。
在第一方面的一种可能的实现方式中,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,包括:在第一数据桶和第二数据桶中的任意之一的工作状态发生异常的情况下,从第一数据桶和第二数据桶中选择的工作状态正常的数据桶作为目标数据桶。
在本实现方式中,云平台负责对数据桶进行状态检测,保证工作状态异常的数据桶的IP地址不会被发送至客户端。
在第一方面的一种可能的实现方式中,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,包括:选择租户指定的数据桶作为目标数据桶,或者,选择与客户端的物理距离最近的数据桶作为目标数据桶。
在本实现方式中,云平台在确定第一和第二数据桶均正常工作时,可以固定的规则选择数据桶作为目标数据桶。
在第一方面的一种可能的实现方式中,该方法还包括获取租户的桶访问策略,桶访问策略指示云平台在确认第一数据桶和第二数据桶的工作状态均正常的情况下,选择与客户端的物理距离最近的数据桶作为目标数据桶,或者,选择租户指定的数据桶作为目标数据桶。
在本实现方式中,云平台向租户提供表达入口,租户输入策略以确定第一和第二数据桶均正常工作时,优先以何种规则选择数据桶作为目标数据桶。
第二方面,本申请提供一种对象存储服务的数据桶管理方法,包括:接收租户输入的数据桶创建指令,数据桶创建指令指示第一区域和第二区域,在第一区域创建第一数据桶,在第二区域创建第二数据桶,其中第一数据桶存储的对象设置为第二数据桶存储的对象的跨区域备份,向租户提供第三数据桶的域名,接收客户端发送的针对第三数据桶的域名的访问请求,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,向客户端返回目标数据桶的IP地址。
租户通过指定至少两个区域来创建第三数据桶,云平台可在指定的区域分别创建第一和第二桶,并设置数据桶之间互为备份关系,可减轻租户的工作量。
在第二方面的一种可能的实现方式中,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,包括:在确认第一数据桶和第二数据桶中的一者的工作状态异常的情况下,从第一数据桶和第二数据桶中选择的工作状态正常的数据桶作为目标数据桶。
云平台提供容错功能,云平台在发现数据桶工作状态异常时,直接向客户端返回工作状态正常的数据桶的IP地址,可避免客户端访问到异常的数据桶。
在第二方面的一种可能的实现方式中,根据第一数据桶和第二数据桶的工作状态,从第二数据桶和第三数据桶中选择目标数据桶,包括:在确认第一数据桶和第二数据桶工作状态均正常的情况下,选择第一数据桶或第二数据桶作为目标数据桶。
第三方面,本申请提供一种对象存储服务的数据桶管理方法,包括:为租户配置第一数据桶和第二数据桶,第一数据桶设置在第一区域,第二数据桶设置在第二区域,第二数据桶存储的数据对象是第一数据桶存储的数据对象的跨区域备份,接收客户端发送的针对第一数据桶的域名的访问请求,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,向客户端返回目标数据桶的IP地址。
在本实现方式中,客户端无需改变需访问的域名,租户只需在云平台创建第二数据桶,并向云平台输入桶间跨区域配置指令,云平台获取到客户端发出的针对第一数据桶的域名的访问请求之后,根据第一数据桶和第二数据桶的工作状态向客户端返回工作状态正常数据桶的IP地址,实施例三尤其适用于租户不想在客户端更改已有的数据桶域名为动态桶的域名的场景。
在第三方面的一种可能的实现方式中,为租户配置第一数据桶和第二数据桶,包括:接收租户输入的第一数据桶创建指令,第一数据桶创建指令用于指示租户指定的第一区域,根据第一数据桶创建指令在第一区域创建第一数据桶,其中,第一数据桶用于存储租户上传的对象,接收租户输入的第二数据桶创建指令,第二数据桶创建指令用于指示租户指定的第二区域,根据第二数据桶创建指令在第二区域创建第二数据桶。
在本实现方式中,云平台接收数据桶创建指令并创建第一和第二数据桶,租户可先创建第一和第二数据桶,在需要时再创建第三数据桶的域名,并设置第三数据桶的域名和第一和第二数据桶关联,因此,云平台可提供灵活的桶设置方式,让租户可以在有业务需求时再在已经创建好的多个数据桶的基础上进一步设置域名与多个已经创建好的数据桶关联。
在第三方面的一种可能的实现方式中,该方法还包括:接收租户输入的桶间跨区域配置指令,桶间跨区域配置指令用于指示第一数据桶作为源桶并且第二数据桶作为目标桶,根据桶间跨区域配置指令将源桶存储的对象跨区域复制至目标桶中。
在本实现方式中,云平台接收接收租户输入的桶间跨区域配置指令以对数据桶进行跨区域复制,从而实现容灾。
在第三方面的一种可能的实现方式中,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,包括:在第一数据桶和第二数据桶中的一者的工作状态发生异常的情况下,从第一数据桶和第二数据桶中选择的工作状态正常的数据桶作为目标数据桶。
在第三方面的一种可能的实现方式中,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,包括:选择租户指定的数据桶作为目标数据桶,或者,选择与客户端的物理距离最近的数据桶作为目标数据桶。
在本实现方式中,云平台在确定第一和第二数据桶均正常工作时,可以固定的规则选择数据桶作为目标数据桶。
在第三方面的一种可能的实现方式中,该方法还包括获取租户的桶访问策略,桶访问策略指示云平台在确认第一数据桶和第二数据桶的工作状态均正常的情况下,选择与客户端的物理距离最近的数据桶作为目标数据桶,或者,选择租户指定的数据桶作为目标数据桶。
在本实现方式中,云平台向租户提供表达入口,租户输入策略以确定第一和第二数据桶均正常工作时,优先以何种规则选择数据桶作为目标数据桶。
第四方面,本申请提供一种云平台,包括:数据桶配置模块,用于为租户配置第一数据桶和第二数据桶,第一数据桶设置在第一区域,第二数据桶设置在第二区域,第二数据桶存储的数据对象是第一数据桶存储的数据对象的跨区域备份,指令接收模块,用于接收租户输入的第三数据桶创建指令,指令处理模块,用于根据第三数据桶创建指令向租户提供第三数据桶的域名,数据桶选择模块,用于接收客户端发送的针对第三数据桶的域名的访问请求,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,发送模块,用于向客户端返回目标数据桶的IP地址。
第四方面或第四方面任意一种实现方式是第一方面或第一方面任意一种实现方式对应的方法实现,第一方面或第一方面任意一种实现方式中的描述适用于第四方面或第四方面任意一种实现方式任意一种实现方式,在此不再赘述。
第五方面,本申请提供一种云平台,包括:指令接收模块,用于接收租户输入的数据桶创建指令,数据桶创建指令指示第一区域和第二区域,数据桶配置模块,用于在第一区域创建第一数据桶,在第二区域创建第二数据桶,其中第一数据桶存储的对象设置为第二数据桶存储的对象的跨区域备份,域名提供模块,用于向租户提供第三数据桶的域名,数据桶选择模块,用于接收客户端发送的针对第三数据桶的域名的访问请求,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,发送模块,用于向客户端返回目标数据桶的IP地址。
第五方面或第五方面任意一种实现方式是第二方面或第二方面任意一种实现方式对应的方法实现,第二方面或第二方面任意一种实现方式中的描述适用于第五方面或第五方面任意一种实现方式任意一种实现方式,在此不再赘述。
第六方面,本申请提供一种云平台,包括:数据桶配置模块,用于为租户配置第一数据桶和第二数据桶,第一数据桶设置在第一区域,第二数据桶设置在第二区域,第二数据桶存储的数据对象是第一数据桶存储的数据对象的跨区域备份,数据桶选择模块,用于接收客户端发送的针对第一数据桶的域名的访问请求,根据第一数据桶和第二数据桶的工作状态,从第一数据桶和第二数据桶中选择目标数据桶,发送模块,用于向客户端返回目标数据桶的IP地址。
第六方面或第六方面任意一种实现方式是第三方面或第三方面任意一种实现方式对应的方法实现,第三方面或第三方面任意一种实现方式中的描述适用于第六方面或第六方面任意一种实现方式任意一种实现方式,在此不再赘述。
第七方面,本申请提供一种计算机设备,计算机设备包括:处理器和存储器,存储器用于存储计算机执行指令,处理器用于执行存储器所存储的计算机执行指令,以使计算机设备实现第一方面及第一方面任一种可能的实现方式所揭示的方法。
第八方面,本申请一种计算机存储介质,包括计算机可读指令,当计算机可读指令被执行时,实现第一方面及第一方面任一种可能的实现方式所揭示的方法。
第九方面,本申请一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第一方面及第一方面任一种可能的实现方式所揭示的方法。
第十方面,本申请一种计算机设备,计算机设备包括:处理器和存储器,存储器用于存储计算机执行指令,处理器用于执行存储器所存储的计算机执行指令,以使计算机设备实现第二方面及第二方面任一种可能的实现方式所揭示的方法。
第十一方面,本申请一种计算机存储介质,包括计算机可读指令,当计算机可读指令被执行时,实现第二方面及第二方面任一种可能的实现方式所揭示的方法。
第十二方面,本申请一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第二方面及第二方面任一种可能的实现方式所揭示的方法。
第十三方面,本申请一种计算机设备,计算机设备包括:处理器和存储器,存储器用于存储计算机执行指令,处理器用于执行存储器所存储的计算机执行指令,以使计算机设备实现第三方面及第三方面任一种可能的实现方式所揭示的方法。
第十四方面,本申请一种计算机存储介质,包括计算机可读指令,当计算机可读指令被执行时,实现第三方面及第三方面任一种可能的实现方式所揭示的方法。
第十五方面,本申请一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第三方面及第三方面任一种可能的实现方式所揭示的方法。
附图说明
图1是对象存储服务的逻辑架构示意图;
图2是对象存储系统的系统架构示意图;
图3是根据本发明实施例的设置有跨区复制服务的对象存储系统的架构示意图;
图4是根据本发明实施例的对象存储系统的数据交互图;
图5是根据本发明实施例的云平台的桶管理方法的流程图;
图6a至图6i是根据本发明实施例的云平台提供的控制台配置界面的示意图;
图7是根据本发明实施例的云平台的桶管理方法的另一流程图;
图8是根据本发明实施例的云平台提供的控制台配置界面的另一示意图;
图9是根据本发明实施例的云平台的桶管理方法的另一流程图;;
图10是根据本发明实施例的云平台提供的控制台配置界面的另一示意图;
图11是根据本发明实施例的对象存储系统中的数据中心的连接示意图;
图12是根据本发明实施例的存储节点的结构示意图;
图13是根据本发明实施例的另一存储节点的结构示意图。
图14是根据本发明实施例的云平台的装置结构示意图;
图15是根据本发明实施例的云平台的另一装置结构示意图;
图16是根据本发明实施例的云平台的另一装置结构示意图;
图17是根据本发明实施例的计算机设备的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于理解本申请实施例,首先,对本申请涉及的部分术语进行解释说明。
云平台:可提供与公有云服务相关的页面以供租户远程访问公有云服务,租户可通过预先注册的账号密码在公有云访问页面登录云平台,并在登录成功之后,在公有云访问页面选择并购买对应的公有云服务,例如OBS服务、虚拟机服务、容器服务等,针对 OBS服务而言,租户可进一步通过公有云访问页面上提供的配置界面或者应用程序编程接口(Application Programming Interface,API)对OBS服务进行配置,例如创建桶,配置桶的访问策略,从租户本地的计算机通过互联网上传对象到桶中等等针对桶的操作。
桶(Bucket):是OBS中存储对象的容器,对象存储提供了基于桶和对象的扁平化存储方式,桶中的所有对象都处于同一逻辑层级,去除了文件系统中的多层级树形目录结构。每个桶都有自己的存储类别、访问权限、所属区域等属性,租户可以在不同区域 (下文会详细介绍)创建不同存储类别和访问权限的桶,并配置更多高级属性来满足不同场景的存储诉求。
在OBS中,桶名是全局唯一的且不能修改,即租户创建的桶不能与自己已创建的其他桶名称相同,也不能与其他租户创建的桶名称相同。桶所属的区域在创建后也不能修改。每个桶在创建时都会生成默认的桶访问列表ACL(Access Control List),ACL列表的每项包含了对被授权租户授予什么样的权限,如读取权限、写入权限等。租户只有对桶有相应的权限,才可以对桶进行操作,如创建、删除、显示、设置桶ACL等。
租户可使用账号在云平台登录,通过云平台提供的公有云访问页面上的配置界面或者API可创建多个桶,每个桶中存放的对象的数量和大小总和没有限制,租户不需要考虑数据的可扩展性,OBS是基于REST(表述性状态传递,Representational State Transfer)风格和超文本传送协议(hypertext transport protocol,HTTP)和超文本传输安全协议(Hypertext Transfer Protocol Secure,HTTPS)协议的服务,租户可以通过统一资源定位符(Uniform Resource Locator,URL,本发明实施例又称为域名)来定位桶资源,OBS 中桶和对象的关系如图1所示,图1是对象存储服务的逻辑架构示意图,如图1所述,每个桶可以包括多个对象(下文详细介绍),桶之间的对象相互隔离,租户通过操作客户端远程购买对象存储服务,对象存储服务向租户提供桶,具体而言,可以提供桶的域名,租户可操作客户端访问该域名,从而可向桶中上传数据,并且,可从桶中下载数据,其中,上传的数据以对象方式存储在桶中。
静态桶:在本发明实施例中,静态桶是指上述对象存储服务提供的桶。
动态桶:在本发明实施例中,动态桶是一个虚拟的桶,动态桶的作用是用于关联多个静态桶,动态桶设置有动态桶的域名,客户端访问动态桶的域名之后,云平台可向客户端返回多个静态桶中的一个静态桶的IP地址。
值得注意的是,本发明所述的静态桶和动态桶,可称为数据桶,静态桶和动态桶分别是数据桶的一种具体实现方式,其中“静态”是指该数据桶设置于物理存储设备例如下文所述的物理磁盘,可用于存储对象“动态”是指该数据桶没有设置于物理存储设备,动态桶不用于存储对象,仅提供域名,以供客户端访问域名,从而根据域名访问到对应的静态桶中存储的对象。对象(Object):是OBS中数据存储的基本单位,一个对象实际是一个文件的数据与其相关属性信息(元数据)的集合体。租户上传至OBS的数据都以对象的形式保存在桶中。对象包括了键值Key,源数据Metadata,数据Data三部分。 Key:键值,即对象的名称,例如为经过UTF-8编码的长度大于0且不超过1024的字符序列,一个桶里的每个对象拥有唯一的对象键值。Metadata:元数据,即对象的描述信息,包括系统元数据和租户元数据,这些元数据以键值对(Key-Value)的形式被上传到对象存储服务中。系统元数据由对象存储服务自动产生,在处理对象数据时使用,包括日期 Date,内容长度Content-length,上次修改时间Last-modify,MD5加密内容Content-MD5 等。租户元数据由租户在上传对象到桶时指定,是租户自定义的对象描述信息。Data:数据,即租户上传的数据内容。
通常,可将对象等同于文件来进行管理,但是为了使租户更方便进行管理数据,对象存储服务提供了一种方式模拟文件夹:通过在对象的名称中增加“/”,例如“test/123.jpg”,此时,“test”就被模拟成了一个文件夹,“123.jpg”则模拟成“test”文件夹下的文件名了,而实际上,对象名称(Key)是“test/123.jpg”,数据Data为123.jpg文件本身。
租户上传对象时,可以指定对象的存储类别,若不指定,默认与桶的存储类别一致。上传后,对象的存储类别可以修改,桶可通过客户端访问,客户端可例如为租户的在本地使用的浏览器或云平台提供的专用客户端,举例而言,租户可以通过设置在本地计算机中的浏览器访问桶,在输入账号验证通过后,租户可使用浏览器上传对象到桶中,或对桶中的对象进行删除等操作,其中,本地计算机接入互联网中。
进一步,客户端还可以设置在公有云云服务提供的虚拟机、容器以及裸金属服务器中,可通过公有云内部网络访问桶,
值得注意的是,任何可通过互联网或公有云内部网络访问桶的设备,均可以称为本发明实施例的客户端。
区域(Region):区域用于描述数据中心的地理位置,租户可以在特定的区域创建公有云云服务提供的云资源。选择区域时,租户需要考虑以下几个因素:
地理位置:一般情况下,建议创建云资源的租户就近选择靠近使用云资源的目标租户的区域,这样可以减少网络时延,提高访问速度。各个区域例如为华南区、华北区、华东区、西南区等等,举例而言,当租户选择华南区,租户创建的云资源(例如本发明实施例涉及的静态桶)设置在华南区的数据中心。进一步,在亚太地区有业务的租户,可以选择“亚太””区域。在非洲地区有业务的租户,可以选择“非洲”区域。在欧洲地区有业务的租户,可以选择“欧洲”区域。
价格:不同区域的云资源价格可能会不一样。
在本发明实施例中,租户可在不同的区域创建桶,同时将对象上传到不同桶进行多区域备份,可有效防止一个区域的数据中心出现停电、断网或其他突发情况不能工作造成桶中的对象不能正常访问的问题发生。
对象存储设备(Object Storage Device,OSD),对象存储系统的基本存储单元,设置在物理磁盘上,具体为物理磁盘的固定大小的存储空间,对象存储系统将多个存储节点的物理磁盘以OSD形式进行管理。
以下请参见图2,图2是一种对象存储系统的架构示意图。图2所示实施例中,对象存储系统包括设置在区域1的数据中心1、设置在区域2的数据中心2以及云平台10,在该架构中,租户可预先在云平台10创建静态桶1和静态桶2,静态桶1设置在区域1,静态桶2设置在区域2,静态桶1的域名为bucket1.region1.com,静态桶1的IP地址为 IP1,静态桶2的域名为bucket2.region2.com,静态桶2的IP地址为IP2,进一步,租户可设置静态桶1中的对象跨区域复制到静态桶2中进行备份。
其中,静态桶1的域名bucket1.region1.com中bucket1为静态桶1的桶名,region1为静态桶1所在的区域1。类似地,静态桶2的域名bucket2.region2.com中bucket2为静态桶2的桶名,region2为静态桶2所在的区域2。
具体地,云平台10在静态桶1创建完成之后,在域名服务节点30注册域名bucket1.region1.com与IP1的对应关系1,并在静态桶2创建完成之后,在域名服务节点 30注册域名bucket2.region2.com与IP2的对应关系2。
可选地,域名服务节点30可由至少一个顶级域名服务节点和多个设置在不同区域的二级域名服务节点共同实现,在上述注册域名过程中,顶级域名服务节点记录region1和设置在区域1的二级域名服务节点1的对应关系,记录region2和设置在区域2的二级域名服务节点2的对应关系,二级域名服务节点1记录bucket1和IP1的对应关系,二级域名服务节点2记录bucket2和IP2的对应关系。其中,云平台10可设置在数据中心1或数据中心2中,数据中心1和数据中心2为云服务提供方所属的数据中心,进一步,云平台10还可以设置在云服务提供方的其他数据中心中。
基于图2所示架构,客户端20访问静态桶1的过程如下:
步骤1:客户端20发送针对域名bucket1.region1.com的访问请求至域名服务节点30。
步骤2:域名服务节点30根据对应关系1获取IP1,将IP1发送至客户端20。
可选地,在域名服务节点30由至少一个顶级域名服务节点和多个设置在不同区域的二级域名服务节点共同实现的情况下,顶级域名服务节点根据预先记录的region1和设置在区域1的二级域名服务节点1的对应关系,向二级域名服务节点1发送该访问请求,二级域名服务节点1根据预先记录的bucket1和IP1的对应关系,将IP1发送至客户端20。
步骤3:客户端20根据IP1访问静态桶1。
具体地,客户端20发送针对IP1的访问请求至静态桶1,IP报文的目的地址为IP1,源地址是客户端20的IP地址,载荷(payload)携带针对静态桶1的读/写请求。
在本实施例中,若静态桶1发生故障,客户端20不能访问静态桶1中存储的对象,由于静态桶2中存储的对象是静态桶1的跨区域复制备份,因此作为灾备方案,客户端 20可访问静态桶2中存储的对象,从而保证客户端20在静态桶1发生故障的情况下也能从静态桶2中访问到所需对象。
具体地,租户可操作客户端20发送针对域名bucket2.region2.com的访问请求至域名服务节点30,域名服务节点30根据对应关系2获取IP2,将IP2发送至客户端20,客户端根据IP2访问静态桶2。
可选地,在域名服务节点30由至少一个顶级域名服务节点和多个设置在不同区域的二级域名服务节点共同实现的情况下,顶级域名服务节点根据预先记录的region2和设置在区域2的二级域名服务节点2的对应关系,向二级域名服务节点2发送该访问请求,二级域名服务节点1根据预先记录的bucket2和IP2的对应关系,将IP2发送至客户端20。
以上方案中,即便设置了作为静态桶1的跨区域复制备份的静态桶2,在静态桶1发生故障的情况下,例如数据中心1停电,静态桶1所在的存储节点(下文会详细介绍) 宕机或其他影响静态桶1正常工作的情况,使用客户端20的租户可明显地感受到静态桶 1的数据不能访问,例如客户端20发生卡顿,租户需重新设置客户端20发送针对另一个域名bucket2.region2.com的访问请求,如此一来,客户端20卡顿可能会造成客户端20 所在的操作系统死机,且租户需手动设置客户端20,通过人工记忆更改要访问的域名(从bucket1.region1.com改为bucket2.region2.com),如此一来,会造成租户体验不佳。
举例而言,假设客户端20设置在一个用于提供购物网站的服务器中,该服务器设置有购物网站,需将租户访问购物网站的日志数据定期发送到静态桶1中以对象形式进行存储,并且静态桶1的对象定期或实时地复制到静态桶2中进行跨区域备份,当静态桶1 故障时,客户端20不能往静态桶1发送日志数据,此时客户端20需发送针对bucket2.region2.com的域名访问请求,从域名服务节点30获取到静态桶2的IP2,根据 IP2访问静态桶2。
可选地,客户端20可预先从域名服务节点30获取到静态桶2的IP2,在静态桶1故障时,无需再次访问域名服务节点30,直接从IP1切换到IP2来访问静态桶2。
无论采用上述何种方式,客户端20均需关注静态桶1的工作状态,在其工作状态异常时,再切换访问静态桶2,上述操作需由租户人工操作,用户体验不佳,且会造成延时,影响购物网站的正常运行。
针对上述技术问题,本发明实施例提供了一种对象存储系统,具体可参见图3,图3是根据本发明实施例的对象存储系统的架构示意图,与图2所示系统相比,图3的云平台10提供动态桶配置接口,以根据租户的请求创建设置有域名(下文称为动态桶的域名,例如为bucket3.obs.huaweicloud.com)的动态桶,并设置动态桶与租户指定的静态桶1和静态桶2关联,并且,云平台10将bucket3.obs.huaweicloud.com与自身IP地址IP0的对应关系3注册到域名服务节点30,其中,动态桶是虚拟的桶,其桶名和动态桶的域名记录在云平台10中,云平台10进一步记录动态桶的桶名与静态桶1和静态桶2的桶名、所在区域和IP地址之间的对应关系,例如可记录表1:
值得注意的是,云平台10也可以通过其他方式记录动态桶的桶名与静态桶1和静态桶2的桶名、所在区域和IP地址之间的对应关系,本发明实施例对此不作限定。
并且,云平台10在创建动态桶之后,开启针对静态桶1和静态桶2的状态检测。
具体可结合图4对图3所示的对象存储系统的工作流程进行具体说明,图4是根据本发明实施例的对象存储系统的数据交互图,其中,图4所示的方法假设租户通过登录云平台10并通过云平台10创建好静态桶1和静态桶2、动态桶、并配置好动态桶与静态桶1和静态桶2相关联,如图4所示,对象存储系统的工作流程如下:
步骤S201:云平台10启动针对静态桶1的状态检测。
其中,云平台10定期(例如每间隔10ms)向静态桶1(具体而言为向静态桶1所在的存储节点下文会详细介绍)发送状态检测请求,在获取到静态桶1所在的存储节点的应答的情况下,则确认静态桶1的状态正常,反之则确认其发生故障。
举例而言,状态检测请求例如为心跳报文,云平台10定期发送心跳报文至静态桶1所在的存储节点,存储节点每接收到一个心跳报文,就返回一个应答报文,云平台10在检测到对应的应答报文时,确认静态桶1正常,在检测不到对应的应答报文时,确认其发生故障(实际应用中可以设置阈值,在检测不到预设数量的心跳报文对应的应答报文时,才确认静态桶1发生故障)。
步骤S202:云平台10启动针对静态桶2的状态检测。
静态桶2的检测方式与步骤S201类似,于此不作赘述。在步骤S201和S202中,云平台记录静态桶1和静态桶2的工作状态,并根据最新的查询结果更新已经记录的工作状态。
步骤S203:客户端20发送针对动态桶的域名bucket3.obs.huaweicloud.com的访问请求1至域名服务节点30。
在本步骤中,租户可操作客户端20发送该访问请求,客户端20上提供用户交互接口,通过用户交互接口接收租户输入的动态桶的域名,从而触发客户端20启动针对动态桶的域名的访问请求的发送动作。
值得注意的是,该访问请求的源IP地址是客户端20的IP地址,例如为114.115.0.2。
步骤S204:域名服务节点30转发该访问请求1至云平台10。
在本步骤之前,云平台10创建动态桶过程中,在域名服务节点30注册云平台10的IP地址IP0与动态桶的域名bucket3.obs.huaweicloud.com的对应关系3,域名服务节点30在接收到客户端20发送的针对bucket3.obs.huaweicloud.com的访问请求1时,根据对应关系3确定IP0,将该访问请求1转发到IP0对应的云平台10。
步骤S205:云平台10确认静态桶1的IP1和静态桶2的IP2,根据桶访问策略向客户端20返回IP1。
具体地,云平台10根据动态桶的域名bucket3.obs.huaweicloud.com确定动态桶(其桶名为bucket3),查询表1,确认动态桶与静态桶1和静态桶2关联,从表1中确定静态桶1的IP1和静态桶2的IP2,跟根据步骤S201和S202中记录的静态桶1和静态桶2 的工作状态,选择工作状态正常的静态桶的IP地址,并将该IP地址返回至客户端20。
其中,云平台10根据访问请求1携带的源IP地址确认客户端20的IP地址,并向该IP地址发送携带有工作状态正常的静态桶的IP地址的报文。
举例而言,在静态桶1的工作状态正常,静态桶2的工作状态异常的情况下,选择静态桶1的IP地址IP1作为目标IP地址返回至客户端20。
在静态桶2的工作状态正常,静态桶1的工作状态异常的情况下,选择静态桶2的IP地址IP2作为目标IP地址返回至客户端20。
进一步,在云平台10在检测到静态桶1的工作状态和静态桶2的工作状态均正常的情况下,优先选择静态桶1的IP地址IP1作为目标IP地址返回至客户端20。
在云平台10在检测到静态桶1的工作状态和静态桶2的工作状态均正常的情况下,优先选择静态桶2的IP地址IP2作为目标IP地址返回至客户端20。
上述方案可确保在一个静态桶发生故障时,客户端20可访问作为该静态桶的备份的另一静态桶,即便一个静态桶发生故障,该故障对于客户端20来说是透明的,不会影响到客户端20的正常工作状态。
并且,当所有静态桶均没发生故障时,要访问哪个静态桶可根据租户的需求选择,进一步,在1个动态桶关联多于两个静态桶的场景下,租户还可以对访问的静态桶设置优先级排列顺序。
云平台10可向租户提供选项或输入接口,根据租户的输入选择当所有静态桶均没发生故障时,优先返回哪个静态桶的IP地址。
在云平台10在检测到静态桶1的工作状态和静态桶2的工作状态均正常的情况下,在静态桶1和静态桶2中选择目标静态桶,将目标静态桶的IP地址作为目标IP地址返回至客户端20,其中目标静态桶所在区域是区域1和区域2中与客户端20的物理距离最近的区域。
举例而言,云平台10可记录预设IP地址段范围所在的区域与区域1的物理距离1以及预设IP地址段范围所在的区域与区域2的物理距离2,在确认客户端20的IP地址 (该IP地址携带于步骤S203的访问请求1的源IP地址中)属于所述预设IP地址段范围的情况下,从静态桶1和静态桶2中选择位于物理距离1和物理距离2中值最小者对应的区域中的静态桶作为目标静态桶。
进一步,可参见下表2:
云平台10预先记录表2,并分析客户端20的IP地址114.115.0.2位于范围段114.115.0.0/16中,获取该范围段到区域1物理距离18,和该范围段到区域2的物理距离 7,云平台10比较18和7的大小之后,确定客户端20到区域2的物理距离最短,将静态桶2作为目标静态桶,返回静态桶2的IP2至客户端20,从而使得客户端20可以就近访问区域2的静态桶2,可缩短网络传输时间,提高租户体验。
上述方案可保证可保证所有静态桶均没发生故障时,客户端与要访问的静态桶的物理距离最近,可缩短网络传输距离。
云平台10可向租户提供选项或输入接口,根据租户的输入选择当所有静态桶均没发生故障时,优先返回与客户端20物理距离最近的静态桶的IP地址。
在本步骤中,假设静态桶1的工作状态异常,静态桶2的工作状态正常,此时云平台10返回静态桶2的IP地址IP2至客户端20。
步骤S206:客户端20发送访问请求2至静态桶2。
由于在步骤S205中,客户端20从云平台10获取到静态桶2的IP2,客户端20发送针对IP2的访问请求2至静态桶2。
访问请求2的目的IP地址是IP2,例如可携带有待上传数据或下载数据指令。
步骤S207:静态桶2根据访问请求2返回应答。在访问请求1携带有待上传数据的情况下,静态桶2接收客户端20的待上传数据并存储,桶访问请求携带下载数据指令的情况下,静态桶2将下载数据指令指定的对象发送至客户端20。
值得注意的是,为了便于说明,在本步骤中,静态桶2作为主体返回应答至客户端20,在实际应用中,实际上是由静态桶2所在的存储节点作为主体返回应答至客户端20,下文将会对存储节点和静态桶的关系作出详细说明。
以上实施例中,假设了静态桶1、静态桶2、动态桶都在云平台10中设置好,上述实施例所揭示的系统基于设置好静态桶1、静态桶2、动态桶运行,从而实现了客户端只需访问动态桶的域名,即可获取到合适的静态桶的IP地址,然而静态桶1、静态桶2、动态桶在本发明实施例中均可由云平台10开放给租户自行选择创建及配置,使得租户可根据自身需求管理静态桶,下文对上述配置过程作出具体说明。
桶管理方法
为更一步清楚说明上述由云平台10实施的桶管理方法,可参考实施例一:
具体可参见图5和图6a至6i,图5是根据本发明实施例的云平台的桶管理方法的流程图,图6a至图6i是根据本发明实施例的云平台提供的控制台配置界面的示意图,如图5所示,该方法包括以下步骤:
步骤S301:接收租户输入的静态桶创建指令1,根据静态桶创建指令1在区域1创建静态桶1。
举例而言,云平台10可通过配置界面或API接收租户输入的静态桶创建指令1。该静态桶创建指令用于指示租户指定的区域1和桶名bucket1,云平台10根据静态桶创建指令1在区域1创建静态桶1。
在本实施例中,以配置界面实现方式进行详细说明。
可结合图6a进行参考,如图6a,云平台10提供控制台配置界面1,租户在选择控制台配置界面1中的“静态桶创建”选项时,云平台10提供图6b所示的控制台配置界面2,租户输入要创建的静态桶名称“bucket1”,输入桶类型“静态桶”,并输入静态桶的区域“区域1”,然后点击“确认”选项,此时云平台10根据租户输入的上述静态桶创建指令在区域1的数据中心1(如图2所示)中创建桶名为“bucket1”的静态桶1,对应地,云平台10为静态桶1配置域名bucket1.region1.com和IP1。
进一步,租户在创建静态桶1后,向静态桶1上传对象,其中该对象是租户上传的数据。
步骤S302:接收租户输入的静态桶创建指令2,根据静态桶创建指令2在区域2创建静态桶2。
举例而言,云平台10可通过配置界面或API接收租户输入的静态桶创建指令2。该静态桶创建指令2用于指示租户指定的区域2和桶名bucket2,云平台10根据静态桶创建指令2在区域2创建静态桶2。
类似地,租户可在图6c所示的控制台配置界面3创建静态桶2,云平台10根据租户输入的静态桶创建指令2在区域2的数据中心2(如图2所示)中创建桶名为“bucket2”的静态桶2,对应地,云平台10为静态桶2配置域名bucket2.region2.com和IP2。
进一步,在创建静态桶过程中,云平台10可在图2所示的域名服务节点30注册bucket1.region1.com和IP1的对应关系1以及bucket2.region2.com和IP2的对应关系2。
在步骤S301和S302中,云平台10为租户配置静态桶1和静态桶2。
步骤S303:云平台10接收租户输入的桶间跨区域配置指令,根据桶间跨区域配置指令将源桶存储的对象跨区域复制至目标桶中。
其中,云平台10可通过配置界面或API接收租户输入的桶间跨区域配置指令,桶间跨区域配置指令用于指示静态桶1作为源桶并且静态桶2作为目标桶。
举例而言,租户在选择控制台配置界面1中的“跨区域复制策略创建”选项时,云平台10提供图6e所示的控制台配置界面4,租户在控制台配置界面4的“源桶”选项输入静态桶1的名称“bucket1”,在控制台配置界面4的“目标桶”选项输入静态桶2的名称“bucket2”,并点击“确认”选项,此时,云平台10将静态桶1的对象跨区域以预定时间间隔定期同步复制到静态桶2中,使得静态桶1存储的对象和静态桶2存储的对象完全一致。
每当静态桶1被上传新的对象,或对象被修改,该新的对象或被修改的对象可被云平台10同步存储至静态桶2中。
步骤S304:云平台10接收租户输入的动态桶创建指令,根据动态桶创建指令创建动态桶的域名,并将动态桶的域名与设置在区域1的静态桶1和设置在区域2的静态桶2 关联。
其中,云平台10可通过配置界面或API接收租户输入的动态桶创建指令,动态桶创建指令用于指示云平台10创建设置有动态桶的域名的动态桶,并将动态桶的域名与设置在区域1的静态桶1和设置在区域2的静态桶2关联。
举例而言,可参见图6g所示的控制台配置界面5,租户输入动态桶的桶名“bucket3”,并在“关联桶”输入框输入设置与其关联的静态桶1的名称“bucket1”和静态桶2的名称“bucket2”,并点击“确认”选项,从而完成动态桶的创建。
可选地,动态桶创建指令还可指定在静态桶1和静态桶2的工作状态均正常的情况下,让客户端优先访问静态桶1还是静态桶2,或者还可以指定根据静态桶与客户端的距离选择让客户端访问距离最短的静态桶。
具体可结合图6h所示的控制台配置界面1,租户点击“桶访问策略创建”选项之后,云平台10提供图6i所示的控制台配置界面6,租户在该界面的“桶名称”输入框输入动态桶的名称“bucket3”,并在桶访问策略输入框选择“就近策略”选项,从而完成策略配置。
值得注意的是,图6i所示界面并没有示出其他选项,例如优先访问bucket1,或优先访问bucket2,该些选项也是桶访问策略提供给租户的选项。
步骤S305:云平台10检测静态桶1和静态桶2的工作状态。
其中,云平台10可定期地检测静态桶1和静态桶2的工作状态,记录静态桶1和静态桶2的工作状态,并定期更新所记录的工作状态。
步骤S305:云平台10接收客户端发送的针对动态桶的域名的访问请求1,根据工作状态向客户端发送与动态桶的域名关联的静态桶1的IP1或与桶域名关联的静态桶2 的IP2。
举例而言,云平台10根据访问请求1确定与动态桶关联的IP1和IP2(如图3及对应实施例所述),云平台10在静态桶1和静态桶2中的一者的工作状态发生异常的情况下,向客户端20发送从静态桶1和静态桶2中选择的工作状态正常的静态桶的IP地址。
在动态桶创建指令还包括租户选择或输入的桶访问策略时,云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端10发送与租户指定的静态桶1或静态桶2的IP地址。
可选地,在桶访问策略为“就近策略”时,云平台在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送与所述客户端的物理距离最近的静态桶的IP 地址。
综上,本发明实施例的云平台10提供输入接口,例如配置界面或API,以供租户对桶进行管理,从而满足租户根据自身需求实现桶中数据跨区域备份的需求,并且,租户还可以通过创建动态桶,使其与至少两个静态桶管理,客户端只需访问动态桶的域名,就可以寻址到合适的静态桶,从而访问到所需访问的数据,客户端无需知道静态桶的工作状态是否正常,通过云平台10检测静态桶的工作状态,租户无需关心哪个静态桶的工作状态异常,因此对于租户来说更加便利。
实施一由租户分别创建静态桶和动态桶,并由租户设置动态桶与静态桶关联,但在桶管理方法的其他实现方式中,与实施例一需创建静态桶不同,租户无需先在云平台10创建静态桶,直接通过在云平台10创建动态桶,并指定至少两个区域,云平台10可在后台创建多个与动态桶关联的静态桶,并设置动态桶的域名,且无需为静态桶设置静态桶的域名。
为更一步清楚说明由云平台10实施的桶管理方法,可参考实施例二:
请参见图7,图7是根据本发明实施例的桶管理方法的另一流程图,如图7所示,该方法包括以下步骤:
S401:云平台10接收租户输入的动态桶创建指令,动态桶创建指令用于指定动态桶名称bucket3,及动态桶的关联区域,例如区域1和区域2。云平台10根据动态桶创建指令创建动态桶的域名bucket3.obs.huaweicloud.com,在区域1创建静态桶1,在区域2 创建静态桶2,并将动态桶的域名bucket3.obs.huaweicloud.com与设置在区域1的静态桶 1和设置在区域2的静态桶2关联,且静态桶2被云平台10设置为静态桶1的跨区域备份桶,即静态桶2存储的对象是静态桶1存储的对象的跨区域备份。
每当静态桶1被上传新的对象,或对象被修改,该新的对象或被修改的对象可被云平台同步存储至静态桶2中。
并且,云平台10在域名解析节点30注册bucket3.obs.huaweicloud.com与云平台的 IP0的对应关系。
其中,在静态桶1创建过程中,云平台10为静态桶1设置IP1,且不设置静态桶的域名,在静态桶2创建过程中,云平台10为静态桶2设置IP2,但不设置静态桶的域名和。
S402:云平台10检测静态桶1和静态桶2的工作状态。
本步骤与实施例一类似,于此不作赘述。
S403:云平台10接收客户端20发送的针对动态桶的域名的访问请求,根据工作状态向客户端发送与动态桶的域名关联的静态桶1的IP1或与动态桶的域名关联的静态桶2的IP2。
在本步骤中,客户端20发送针对动态桶的域名bucket3.obs.huaweicloud.com的访问请求至域名解析服务节点30,域名解析服务节点30根据bucket3.obs.huaweicloud.com与云平台的IP0的对应关系将该访问请求转发至云平台10。云平台10根据动态桶的域名 bucket3.obs.huaweicloud.com确定静态桶1的IP1和静态桶2的IP2。
其中,在确认静态桶1和静态桶2中的一者的工作状态异常的情况下,云平台10 向客户端20发送从静态桶1和静态桶2中选择的工作状态正常的静态桶的IP地址;在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送静态桶1或静态桶2的IP地址。
可选地,在实施例2中,在确认静态桶1和静态桶2的工作状态均正常的情况下,云平台10可向客户端20随机地发送静态桶1或静态桶2的IP地址。
在本实施例中,云平台10可通过配置界面或API接收租户输入的动态桶创建指令,该动态桶指令还用于指示租户选择的区域1和区域2,以配置界面为例,可结合图8一并参考,在本实施例中,租户在如图6f点击“动态桶创建”选项之后,云平台10提供图8 所示的控制台配置界面7,租户在输入要创建的动态桶名称之后,还可以进一步选择或输入多个区域,例如区域1和区域2,然后点击“确认”,云平台10根据上述动态桶创建指令在区域1创建静态桶1,在区域2创建静态桶2,静态桶1和静态桶2设置有IP1和 IP2,但无需设置静态桶的域名,且云平台10只需在域名解析节点30中注册动态桶的域名与云平台的IP0的对应关系。
在实施例一和实施例二中,租户需在云平台10创建动态桶,从而获得动态桶的域名,但是,在另外一些场景中,若租户已经创建了静态桶1,且客户端20已经设置为固定访问静态桶1的域名,而租户不想将客户端20的访问域名进行更改,此时可使用下文所介绍的桶管理方法的实施例三的方案,在实施例三中,租户无需创建静态桶,只需创建静态桶2,并向云平台10输入桶间跨区复制指令,此时云平台10根据桶间跨区复制指令将静态桶1的对象跨区域复制到动态桶2中,并静态桶1和静态桶2的工作状态,根据工作状态向客户端20返回静态桶1或静态桶2的IP地址。实施例三适用于租户不想更改已有的静态桶的域名为动态桶的域名的场景。
具体可参见图9,图9是根据本发明实施例的桶管理方法的另一流程图,如图9所示,该方法包括以下步骤:
步骤S501:云平台10接收租户输入的静态桶创建指令1,根据静态桶创建指令1 在区域1创建静态桶1,静态桶创建指令1用于指示租户指定的区域1和桶名bucket1。该静态桶1设置有桶名bucket1,静态桶的域名bucket1.region1.com和IP1。
云平台10在域名解析节点30注册静态桶的域名bucket1.region1.com和IP1的对应关系1。
举例而言,云平台10可通过配置界面或API接收租户输入的静态桶创建指令1。该静态桶创建指令用于指示租户指定的区域1,云平台10根据静态桶创建指令1在区域1 创建静态桶1。
在本实施例中,以配置界面实现方式进行详细说明。
可结合图6a进行参考,如图6a,云平台10提供控制台配置界面1,租户在选择控制台配置界面1中的“静态桶创建”选项时,云平台10提供图6b所示的控制台配置界面2,租户输入要创建的静态桶名称“bucket1”,输入桶类型“静态桶”,并输入静态桶的区域“区域1”,然后点击“确认”选项,此时云平台10根据租户输入的上述静态桶创建指令在区域1的数据中心1(如图2所示)中创建桶名为“bucket1”的静态桶1,对应地,云平台10为静态桶1配置域名bucket1.region1.com和IP1。
云平台10可在图2所示的域名服务节点30注册bucket1.region1.com和IP1的对应关系1。
并且,租户在创建好静态桶1之后,向静态桶1上传对象,使得静态桶1存储该对象,且云平台10可向租户提供上传接口,于此不作赘述。
步骤S502:云平台10接收租户输入的静态桶创建指令2,根据静态桶创建指令2 在区域2创建静态桶2。静态桶创建指令2用于指示租户指定的区域2和桶名bucket2。该静态桶2设置有桶名bucket2,静态桶的域名bucket2.region2.com和IP2。
举例而言,云平台10可通过配置界面或API接收租户输入的静态桶创建指令2。该静态桶创建指令2用于指示租户指定的区域2和桶名bucket2,云平台10根据静态桶创建指令2在区域2创建静态桶2。
类似地,租户可在图6c所示的控制台配置界面3创建静态桶2,云平台10根据租户输入的静态桶创建指令2在区域2的数据中心2(如图2所示)中创建桶名为“bucket2”的静态桶2,对应地,云平台10为静态桶2配置域名bucket2.region2.com和IP2。
进一步,在创建静态桶过程中,云平台10可在图2所示的域名服务节点30注册bucket2.region2.com和IP2的对应关系2。
步骤S503:云平台10接收租户输入的桶间跨区域配置指令,桶间跨区域配置指令用于指示静态桶1为源桶,静态桶2为目标桶,云平台10根据桶间跨区域配置指令将源桶存储的对象跨区域复制至目标桶中。
每当静态桶1被上传新的对象,或对象被修改,该新的对象或被修改的对象可被云平台同步存储至静态桶2中。
云平台10可通过配置界面或API接收租户输入的桶间跨区域配置指令,举例而言,在租户点击图6d所示的“跨区域复制策略创建”选项后,云平台10提供图10所示的控制台配置界面8,租户可在控制台配置界面8输入源桶的桶名和目标桶的桶名。
可选地,桶间跨区域配置指令还包括租户的桶访问策略,桶访问策略用于指示云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送租户指定的静态桶1或静态桶2的IP地址。或者指示云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送与客户端20的物理距离最近的静态桶的IP 地址
如图10所示,控制台配置界面8可提供“桶访问策略”配置项,租户可在该配置项输入或选择“就近访问”策略,用于指示云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送与客户端20的物理距离最近的静态桶的IP地址。
或者,直接在该配置项输入bucket1,指示云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送静态桶1的IP地址;类似地,也可在该配置项输入bucket2,指示云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送静态桶2的IP地址。
并且,云平台10进一步根据桶间跨区域配置指令在图3所示的域名服务节点30删除bucket1.region1.com和IP1的对应关系1,并重新注册bucket1.region1.com和云平台的IP0的对应关系4。
步骤S504:云平台10检测静态桶1和静态桶2的工作状态。
步骤S505:云平台10接收客户端20发送的针对静态桶1的静态桶的域名bucket1.region1.com的访问请求,根据工作状态向客户端发送与静态桶1的IP1或与静态桶2的IP2。
在本步骤中,客户端20发送的针对静态桶1的静态桶的域名bucket1.region1.com的访问请求至域名解析服务节点30,域名解析服务节点30根据bucket1.region1.com和云平台的IP0的对应关系4将该访问请求转发至云平台10。
云平台10在静态桶1和静态桶2中的一者的工作状态发生异常的情况下,向客户端20发送从静态桶1和静态桶2中选择的工作状态正常的静态桶的IP地址。
云平台10在确认静态桶1和静态桶2的工作状态均正常的情况下,向客户端20发送静态桶1或静态桶2的IP地址。
可选地,在桶间跨区域配置指令还包括租户的桶访问策略的情况下,云平台10根据桶访问策略向客户端20发送与租户经由桶访问策略指定的静态桶1或静态桶2的IP 地址;或者根据桶访问策略向客户端20发送与客户端20的物理距离最近的静态桶的IP 地址。
因此,在实施例三中,客户端20无需改变需访问的域名bucket1.region1.com,租户只需在云平台10创建静态桶2,并向云平台10输入桶间跨区域配置指令,即可将客户端20发出的针对bucket1.region1.com的访问请求转发到云平台10,云平台10根据静态桶1和静态桶2的工作状态向客户端返回合适的IP地址。实施例三尤其适用于租户不想在客户端20更改已有的静态桶的域名为动态桶的域名的场景。
值得注意的是,在本发明实施例中,客户端20不一定是租户所操作,也可以由其他人操作,但这种情况下,客户端20设置有租户授权的令牌。
进一步,在本发明其他实施例中,静态桶的域名也无需包括静态桶所在区域的标识,如静态桶1的域名bucket1.region1.com包括区域1的标识region1,可选地,静态桶1的域名可例如为bucket1.obs.huawei.com,其格式与动态桶的域名类似,本发明实施例对此不作限定。
进一步,本发明实施例所述的“静态桶创建指令”和“动态桶创建指令”均为“数据桶创建指令”的一种具体实现方式。
下文结合图11至13对图3所示的对象存储系统做出具体说明,图11是根据本发明实施例的对象存储系统中的数据中心的连接示意图,图12和图13是根据本发明实施例的存储节点的结构示意图。
首先请参见图11,在本实施例中,云平台10设置在数据中心1,通过交换设备203分别与存储节点201、存储节点202以及远程连接网关204连接。数据中心2设置有交换设备206、存储节点207、存储节点208以及远程连接网关205连接,存储节点207、存储节点208以及远程连接网关205分别与交换设备206连接,数据中心1设置在区域1,数据中心2设置在区域2,远程连接网关204与远程连接网关205直接设置有远程连接通道,使得数据中心1和数据中心2实现跨区域连接。
举例而言,远程连接网关可以通过虚拟私有网络(Virtual Private Network,VPN) 或专线网络实现,存储节点可通过设置有多个物理磁盘的服务器实现。
并请参见图12,存储节点207包括软件层和硬件层,硬件层包括磁盘控制器2075、物理网卡2076,物理磁盘1和物理磁盘2,软件层包括对象存储设备OSD控制单元2012 和操作系统2012,OSD控制单元2012运行在操作系统2012上,操作系统2012中包括磁盘驱动2013和物理网卡驱动2014,云平台10可通过物理网卡2016与OSD控制单元 2011进行通信,OSD控制单元2011通过磁盘驱动2013控制磁盘控制器2015将物理磁盘1和物理磁盘2设置为多个对象存储设备OSD,云平台10在接收到静态桶1的创建指令之后,通知OSD控制单元2011创建静态桶1,此时,OSD控制单元2011将OSD1-3 设置为静态桶1。
图13所示的存储节点207也具有类似结构,云平台10在接收到静态桶2的创建指令之后,通知OSD控制单元2071创建静态桶2,此时,OSD控制单元2071将OSD5-7 设置为静态桶2。
进一步,云平台10接收到实施例一或实施例三所述的跨区配置策略指令,或实施例二所述的动态桶创建指令之后,通知OSD控制单元2011将静态桶1中OSD1-3存储的对象经远程连接通道发送至存储节点207,并由存储节点207中的OSD控制单元2071 将该些对象存储到OSD5-7中。
以下请参见图14,图14是根据本发明实施例的云平台的装置结构示意图,如图14所示云平台10包括数据桶配置模块101、指令接收模块102、指令处理模块103、数据桶选择模块104、发送模块105、指令接收模块105,上述功能模块用于实现上述实施例一云平台10的相关功能。
以下请参见图15,图15是根据本发明实施例的云平台的装置结构示意图,如图15所示云平台10包括指令接收模块601、数据桶配置模块602、域名提供模块603、数据桶选择模块604、发送模块605、发送模块606,上述功能模块用于实现上述实施例一云平台10的相关功能。
以下请参见图16,图16是根据本发明实施例的云平台的装置结构示意图,如图16所示云平台10包括数据桶配置模块701、数据桶选择模块702、发送模块703、指令接收模块704、对象复制模块705、桶访问策略获取模块706,上述功能模块用于实现上述实施例一云平台10的相关功能。
进一步,请参见图17,图17是根据本发明实施例的计算机设备的装置结构示意图,如图17所示,计算机设备包括处理器1001、存储器1002、通信接口1003以及总线1004,处理器1001、存储器1002、通信接口1003分别与总线1004连接,存储器1002用于存储计算机执行指令,处理器1001用于执行存储器1002所存储的计算机执行指令,以使计算机设备实现上述云平台10所执行的方法。
可选地,云平台10也可以通过包括多个计算机设备的计算机集群来实现,本发明实施例对此不作限定。
并且,本发明实施例还提供一种计算机存储介质,包括计算机可读指令,当所述计算机可读指令被执行时,实现上述云平台10所执行的方法。
本发明实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述云平台10所执行的方法。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地生成按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字租户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
Claims (39)
1.一种提供云存储服务的方法,其特征在于,包括:
为租户配置第一数据桶和第二数据桶,所述第一数据桶设置在第一区域,所述第二数据桶设置在第二区域,所述第二数据桶存储的数据对象是所述第一数据桶存储的数据对象的跨区域备份;
接收所述租户输入的第三数据桶创建指令;
根据第三数据桶创建指令向所述租户提供第三数据桶的域名;
接收客户端发送的针对所述第三数据桶的域名的访问请求,根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶;
向所述客户端返回所述目标数据桶的IP地址。
2.根据权利要求1所述的方法,其特征在于,所述为租户配置第一数据桶和第二数据桶,包括:
接收所述租户输入的第一数据桶创建指令,所述第一数据桶创建指令用于指示所述租户指定的所述第一区域,根据所述第一数据桶创建指令在所述第一区域创建所述第一数据桶,其中,所述第一数据桶用于存储所述租户上传的对象;
接收所述租户输入的第二数据桶创建指令,所述第二数据桶创建指令用于指示所述租户指定的所述第二区域,根据所述第二数据桶创建指令在所述第二区域创建所述第二数据桶。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
接收所述租户输入的桶间跨区域配置指令,所述桶间跨区域配置指令用于指示所述第一数据桶作为源桶并且所述第二数据桶作为目标桶;
根据所述桶间跨区域配置指令将所述源桶存储的所述对象跨区域复制至所述目标桶中。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶,包括:
在所述第一数据桶和所述第二数据桶中的任意之一的工作状态发生异常的情况下,从所述第一数据桶和所述第二数据桶中选择的工作状态正常的数据桶作为所述目标数据桶。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶,包括:
选择所述租户指定的数据桶作为所述目标数据桶,或者,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括获取所述租户的桶访问策略,所述桶访问策略指示所述云平台在确认所述第一数据桶和所述第二数据桶的工作状态均正常的情况下,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶,或者,选择所述租户指定的数据桶作为所述目标数据桶。
7.一种对象存储服务的数据桶管理方法,其特征在于,包括:
接收租户输入的数据桶创建指令,所述数据桶创建指令指示第一区域和第二区域;
在所述第一区域创建第一数据桶,在第二区域创建第二数据桶,其中所述第一数据桶存储的对象设置为所述第二数据桶存储的对象的跨区域备份;
向所述租户提供第三数据桶的域名;
接收客户端发送的针对所述第三数据桶的域名的访问请求,根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶;
向所述客户端返回所述目标数据桶的IP地址。
8.根据权利要求7所述的方法,其特征在于,所述根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶,包括:
在确认所述第一数据桶和所述第二数据桶中的一者的工作状态异常的情况下,从所述第一数据桶和所述第二数据桶中选择的工作状态正常的数据桶作为所述目标数据桶。
9.根据权利要求7或8所述的方法,其特征在于,所述根据所述第一数据桶和所述第二数据桶的工作状态,从所述第二数据桶和所述第三数据桶中选择目标数据桶,包括:
在确认所述第一数据桶和所述第二数据桶工作状态均正常的情况下,选择所述第一数据桶或所述第二数据桶作为所述目标数据桶。
10.一种对象存储服务的数据桶管理方法,其特征在于,包括:
为租户配置第一数据桶和第二数据桶,所述第一数据桶设置在第一区域,所述第二数据桶设置在第二区域,所述第二数据桶存储的数据对象是所述第一数据桶存储的数据对象的跨区域备份;
接收客户端发送的针对所述第一数据桶的域名的访问请求,根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶;
向所述客户端返回所述目标数据桶的IP地址。
11.根据权利要求10所述的方法,其特征在于,所述为租户配置第一数据桶和第二数据桶,包括:
接收所述租户输入的第一数据桶创建指令,所述第一数据桶创建指令用于指示所述租户指定的所述第一区域,根据所述第一数据桶创建指令在所述第一区域创建所述第一数据桶,其中,所述第一数据桶用于存储所述租户上传的对象;
接收所述租户输入的第二数据桶创建指令,所述第二数据桶创建指令用于指示所述租户指定的所述第二区域,根据所述第二数据桶创建指令在所述第二区域创建所述第二数据桶。
12.根据权利要求10或11所述的方法,其特征在于,所述方法还包括:
接收所述租户输入的桶间跨区域配置指令,所述桶间跨区域配置指令用于指示所述第一静态桶作为源桶并且所述第二静态桶作为目标桶;
根据所述桶间跨区域配置指令将所述源桶存储的所述对象跨区域复制至所述目标桶中。
13.根据权利要求10至12任一项所述的方法,其特征在于,所述根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶,包括:
在所述第一数据桶和所述第二数据桶中的一者的工作状态发生异常的情况下,从所述第一数据桶和所述第二数据桶中选择的工作状态正常的数据桶作为所述目标数据桶。
14.根据权利要求10至13任一项所述的方法,其特征在于,所述根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶,包括:
选择所述租户指定的数据桶作为所述目标数据桶,或者,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶。
15.根据权利要求10至13任一项所述的方法,其特征在于,所述方法还包括获取所述租户的桶访问策略,所述桶访问策略指示所述云平台在确认所述第一数据桶和所述第二数据桶的工作状态均正常的情况下,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶,或者,选择所述租户指定的数据桶作为所述目标数据桶。
16.一种云平台,其特征在于,包括:
数据桶配置模块,用于为租户配置第一数据桶和第二数据桶,所述第一数据桶设置在第一区域,所述第二数据桶设置在第二区域,所述第二数据桶存储的数据对象是所述第一数据桶存储的数据对象的跨区域备份;
指令接收模块,用于接收所述租户输入的第三数据桶创建指令;
指令处理模块,用于根据第三数据桶创建指令向所述租户提供第三数据桶的域名;
数据桶选择模块,用于接收客户端发送的针对所述第三数据桶的域名的访问请求,根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶;
发送模块,用于向所述客户端返回所述目标数据桶的IP地址。
17.根据权利要求16所述的云平台,其特征在于,所述数据桶配置模块,用于:
接收所述租户输入的第一数据桶创建指令,所述第一数据桶创建指令用于指示所述租户指定的所述第一区域,根据所述第一数据桶创建指令在所述第一区域创建所述第一数据桶,其中,所述第一数据桶用于存储所述租户上传的对象;
接收所述租户输入的第二数据桶创建指令,所述第二数据桶创建指令用于指示所述租户指定的所述第二区域,根据所述第二数据桶创建指令在所述第二区域创建所述第二数据桶。
18.根据权利要求16或17所述的云平台,其特征在于,还包括指令接收模块,用于
接收所述租户输入的桶间跨区域配置指令,所述桶间跨区域配置指令用于指示所述第一数据桶作为源桶并且所述第二数据桶作为目标桶;
所述指令处理模块,还用于根据所述桶间跨区域配置指令将所述源桶存储的所述对象跨区域复制至所述目标桶中。
19.根据权利要求16至18任一项所述的云平台,其特征在于,所述数据桶选择模块,用于:
在所述第一数据桶和所述第二数据桶中的任意之一的工作状态发生异常的情况下,从所述第一数据桶和所述第二数据桶中选择的工作状态正常的数据桶作为所述目标数据桶。
20.根据权利要求16至19任一项所述的云平台,其特征在于,所述数据桶选择模块,用于:
选择所述租户指定的数据桶作为所述目标数据桶,或者,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶。
21.根据权利要求20所述的云平台,其特征在于,所述指令接收模块,用于还用于获取所述租户的桶访问策略,所述桶访问策略指示所述云平台在确认所述第一数据桶和所述第二数据桶的工作状态均正常的情况下,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶,或者,选择所述租户指定的数据桶作为所述目标数据桶。
22.一种云平台,其特征在于,包括:
指令接收模块,用于接收租户输入的数据桶创建指令,所述数据桶创建指令指示第一区域和第二区域;
数据桶配置模块,用于在所述第一区域创建第一数据桶,在第二区域创建第二数据桶,其中所述第一数据桶存储的对象设置为所述第二数据桶存储的对象的跨区域备份;
域名提供模块,用于向所述租户提供第三数据桶的域名;
数据桶选择模块,用于接收客户端发送的针对所述第三数据桶的域名的访问请求,根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶;
发送模块,用于向所述客户端返回所述目标数据桶的IP地址。
23.根据权利要求22所述的云平台,其特征在于,所述数据桶选择模块,用于:
在确认所述第一数据桶和所述第二数据桶中的一者的工作状态异常的情况下,从所述第一数据桶和所述第二数据桶中选择的工作状态正常的数据桶作为所述目标数据桶。
24.根据权利要求22或23所述的云平台,其特征在于,所述数据桶选择模块,用于:
在确认所述第一数据桶和所述第二数据桶工作状态均正常的情况下,选择所述第一数据桶或所述第二数据桶作为所述目标数据桶。
25.一种云平台,其特征在于,包括:
数据桶配置模块,用于为租户配置第一数据桶和第二数据桶,所述第一数据桶设置在第一区域,所述第二数据桶设置在第二区域,所述第二数据桶存储的数据对象是所述第一数据桶存储的数据对象的跨区域备份;
数据桶选择模块,用于接收客户端发送的针对所述第一数据桶的域名的访问请求,根据所述第一数据桶和所述第二数据桶的工作状态,从所述第一数据桶和所述第二数据桶中选择目标数据桶;
发送模块,用于向所述客户端返回所述目标数据桶的IP地址。
26.根据权利要求25所述的云平台,其特征在于,所述数据桶配置模块,用于:
接收所述租户输入的第一数据桶创建指令,所述第一数据桶创建指令用于指示所述租户指定的所述第一区域,根据所述第一数据桶创建指令在所述第一区域创建所述第一数据桶,其中,所述第一数据桶用于存储所述租户上传的对象;
接收所述租户输入的第二数据桶创建指令,所述第二数据桶创建指令用于指示所述租户指定的所述第二区域,根据所述第二数据桶创建指令在所述第二区域创建所述第二数据桶。
27.根据权利要求25或26所述的云平台,其特征在于,包括:
指令接收模块,用于接收所述租户输入的桶间跨区域配置指令,所述桶间跨区域配置指令用于指示所述第一静态桶作为源桶并且所述第二静态桶作为目标桶;
对象复制模块,用于根据所述桶间跨区域配置指令将所述源桶存储的所述对象跨区域复制至所述目标桶中。
28.根据权利要求25至27任一项所述的云平台,其特征在于,所述数据桶选择模块,用于:
在所述第一数据桶和所述第二数据桶中的一者的工作状态发生异常的情况下,从所述第一数据桶和所述第二数据桶中选择的工作状态正常的数据桶作为所述目标数据桶。
29.根据权利要求25至28任一项所述的云平台,其特征在于,所述数据桶选择模块,用于:
选择所述租户指定的数据桶作为所述目标数据桶,或者,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶。
30.根据权利要求25至28任一项所述的云平台,其特征在于,还包括桶访问策略获取模块,用于获取所述租户的桶访问策略,所述桶访问策略指示所述云平台在确认所述第一数据桶和所述第二数据桶的工作状态均正常的情况下,选择与所述客户端的物理距离最近的数据桶作为所述目标数据桶,或者,选择所述租户指定的数据桶作为所述目标数据桶。
31.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器;
所述存储器用于存储计算机执行指令;
所述处理器用于执行所述存储器所存储的计算机执行指令,以使所述计算机设备实现如所述权利要求1至6任一项所述的方法。
32.一种计算机存储介质,其特征在于,包括计算机可读指令,当所述计算机可读指令被执行时,实现如权利要求1至6任一项所述的方法。
33.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1至6任一项所述的方法。
34.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器;
所述存储器用于存储计算机执行指令;
所述处理器用于执行所述存储器所存储的计算机执行指令,以使所述计算机设备实现如所述权利要求7至9任一项所述的方法。
35.一种计算机存储介质,其特征在于,包括计算机可读指令,当所述计算机可读指令被执行时,实现如权利要求7至9任一项所述的方法。
36.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求7至9任一项所述的方法。
37.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器;
所述存储器用于存储计算机执行指令;
所述处理器用于执行所述存储器所存储的计算机执行指令,以使所述计算机设备实现如所述权利要求10至15任一项所述的方法。
38.一种计算机存储介质,其特征在于,包括计算机可读指令,当所述计算机可读指令被执行时,实现如权利要求10至15任一项所述的方法。
39.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求10至115任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311473520.XA CN117729217A (zh) | 2020-12-14 | 2020-12-30 | 云平台及其提供的对象存储服务的桶管理方法 |
PCT/CN2021/137733 WO2022127762A1 (zh) | 2020-12-14 | 2021-12-14 | 云平台及其提供的对象存储服务的桶管理方法 |
EP21905691.8A EP4277239A1 (en) | 2020-12-14 | 2021-12-14 | Cloud platform and bucket management method for object storage service provided thereby |
US18/334,644 US20230328138A1 (en) | 2020-12-14 | 2023-06-14 | Cloud Platform and Bucket Management Method for Object Storage Service Provided by Cloud Platform |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020114690652 | 2020-12-14 | ||
CN202011469065 | 2020-12-14 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311473520.XA Division CN117729217A (zh) | 2020-12-14 | 2020-12-30 | 云平台及其提供的对象存储服务的桶管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114629921A true CN114629921A (zh) | 2022-06-14 |
CN114629921B CN114629921B (zh) | 2023-11-17 |
Family
ID=81897376
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311473520.XA Pending CN117729217A (zh) | 2020-12-14 | 2020-12-30 | 云平台及其提供的对象存储服务的桶管理方法 |
CN202011628962.3A Active CN114629921B (zh) | 2020-12-14 | 2020-12-30 | 云平台及其提供的对象存储服务的桶管理方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311473520.XA Pending CN117729217A (zh) | 2020-12-14 | 2020-12-30 | 云平台及其提供的对象存储服务的桶管理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230328138A1 (zh) |
EP (1) | EP4277239A1 (zh) |
CN (2) | CN117729217A (zh) |
WO (1) | WO2022127762A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208907A (zh) * | 2022-07-15 | 2022-10-18 | 上海七牛信息技术有限公司 | 一种基于对象存储的存储方法及系统 |
WO2024008024A1 (zh) * | 2022-07-04 | 2024-01-11 | 华为云计算技术有限公司 | 一种基于对象存储服务的跨区域转储方法及相关装置 |
WO2024032262A1 (zh) * | 2022-08-12 | 2024-02-15 | 华为云计算技术有限公司 | 一种基于云计算技术的对象存储服务配置方法及装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115587390B (zh) * | 2022-12-12 | 2023-03-10 | 杭州优云科技有限公司 | 一种公有云对象存储的实现方法 |
CN117714124A (zh) * | 2023-12-08 | 2024-03-15 | 北京华顺信安科技有限公司 | 基于域名解析的云防护方法、系统、终端及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140280357A1 (en) * | 2013-03-15 | 2014-09-18 | Cavium, Inc. | NSP Manager |
CN104268159A (zh) * | 2014-09-03 | 2015-01-07 | 河海大学 | 一种基于动态镜像的实时数据仓库数据预存取方法 |
CN105426408A (zh) * | 2015-11-02 | 2016-03-23 | 北京锐安科技有限公司 | 一种多索引的数据处理方法及装置 |
CN107015884A (zh) * | 2016-01-28 | 2017-08-04 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法及装置 |
CN109189324A (zh) * | 2018-07-09 | 2019-01-11 | 华为技术有限公司 | 一种数据迁移方法及装置 |
CN111371891A (zh) * | 2020-03-03 | 2020-07-03 | 腾讯云计算(北京)有限责任公司 | 业务处理方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11416444B2 (en) * | 2014-03-18 | 2022-08-16 | Netapp, Inc. | Object-based storage replication and recovery |
CN106331166B (zh) * | 2016-10-11 | 2019-09-06 | 杭州宏杉科技股份有限公司 | 一种存储资源的访问方法及装置 |
CN111147235B (zh) * | 2019-12-23 | 2022-11-11 | 杭州宏杉科技股份有限公司 | 对象访问方法、装置、电子设备及机器可读存储介质 |
-
2020
- 2020-12-30 CN CN202311473520.XA patent/CN117729217A/zh active Pending
- 2020-12-30 CN CN202011628962.3A patent/CN114629921B/zh active Active
-
2021
- 2021-12-14 WO PCT/CN2021/137733 patent/WO2022127762A1/zh unknown
- 2021-12-14 EP EP21905691.8A patent/EP4277239A1/en active Pending
-
2023
- 2023-06-14 US US18/334,644 patent/US20230328138A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140280357A1 (en) * | 2013-03-15 | 2014-09-18 | Cavium, Inc. | NSP Manager |
CN104268159A (zh) * | 2014-09-03 | 2015-01-07 | 河海大学 | 一种基于动态镜像的实时数据仓库数据预存取方法 |
CN105426408A (zh) * | 2015-11-02 | 2016-03-23 | 北京锐安科技有限公司 | 一种多索引的数据处理方法及装置 |
CN107015884A (zh) * | 2016-01-28 | 2017-08-04 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法及装置 |
CN109189324A (zh) * | 2018-07-09 | 2019-01-11 | 华为技术有限公司 | 一种数据迁移方法及装置 |
CN111371891A (zh) * | 2020-03-03 | 2020-07-03 | 腾讯云计算(北京)有限责任公司 | 业务处理方法、装置、设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024008024A1 (zh) * | 2022-07-04 | 2024-01-11 | 华为云计算技术有限公司 | 一种基于对象存储服务的跨区域转储方法及相关装置 |
CN115208907A (zh) * | 2022-07-15 | 2022-10-18 | 上海七牛信息技术有限公司 | 一种基于对象存储的存储方法及系统 |
WO2024032262A1 (zh) * | 2022-08-12 | 2024-02-15 | 华为云计算技术有限公司 | 一种基于云计算技术的对象存储服务配置方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117729217A (zh) | 2024-03-19 |
EP4277239A1 (en) | 2023-11-15 |
WO2022127762A1 (zh) | 2022-06-23 |
CN114629921B (zh) | 2023-11-17 |
US20230328138A1 (en) | 2023-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11630905B2 (en) | Collection folder for collecting file submissions in response to a public file request | |
CN114629921B (zh) | 云平台及其提供的对象存储服务的桶管理方法 | |
CN109194506B (zh) | 区块链网络部署方法、平台及计算机存储介质 | |
US10282522B2 (en) | Cross-application authentication on a content management system | |
CA2978183C (en) | Executing commands within virtual machine instances | |
EP3278539B1 (en) | Shared workspaces with selective content item synchronization | |
EP2685697B1 (en) | A method to obtain a virtual desktop stored in a cloud storage system, a corresponding cloud broker and cloud desktop agent | |
US11403027B2 (en) | Technology for governance of data retention and transfer | |
EP3284032A1 (en) | Collection folder for collecting file submissions via a customizable file request | |
CN107741852B (zh) | 一种基于集群软件的服务部署方法 | |
AU2019257407A1 (en) | Collection folder for collecting file submissions | |
US20170177194A1 (en) | Link file sharing and synchronization | |
US9614826B1 (en) | Sensitive data protection | |
CN109587233A (zh) | 多云容器管理方法、设备及计算机可读存储介质 | |
CN110262872B (zh) | 负载均衡应用管理方法、装置、计算机设备及存储介质 | |
US20140089379A1 (en) | Systems and methods for collaborative mobile device applications | |
EP3407240A1 (en) | Data protection method and associated apparatus | |
US11063922B2 (en) | Virtual content repository | |
US10963430B2 (en) | Shared workspaces with selective content item synchronization | |
US10951682B2 (en) | Systems and methods for accessing multiple resources via one identifier | |
US9665732B2 (en) | Secure Download from internet marketplace | |
KR101666064B1 (ko) | 분산 파일 시스템에서 url정보를 이용한 데이터 관리 장치 및 그 방법 | |
EP3407571A1 (en) | Method for providing network-based services to user of network storage server, associated network storage server and associated storage system | |
US20240168972A1 (en) | Data Distribution and Access within a Multi-Zone Computing Platform | |
JP6911658B2 (ja) | 端末装置、データ取得システム、データ取得方法、及びプログラム |
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 |