一种分布式系统的对象策略操作方法、装置及设备与流程

文档序号:27553808发布日期:2021-11-24 23:33阅读:93来源:国知局
一种分布式系统的对象策略操作方法、装置及设备与流程

1.本发明涉及分布式系统技术领域,特别涉及一种分布式系统的对象策略操作方法、装置、设备及计算机可读存储介质。


背景技术:

2.随着现代社会科技的发展,分布式系统在it(互联网技术)企业、云计算、大数据、虚拟化等领域得到了广泛应用。
3.现有技术中,分布式系统中仅提供默认对象策略的操作功能,无法对指定存储池与指定压缩算法的对象策略进行操作控制,已然无法满足各领域用户越来越高的使用需求,因此,如何能够增加分布式系统中对象策略的操作功能,提高分布式系统的健壮性、易用性和功能的丰富性,提升用户体验,是现今急需解决的问题。


技术实现要素:

4.本发明的目的是提供一种分布式系统的对象策略操作方法、装置、设备及计算机可读存储介质,以增加分布式系统中对象策略的操作功能,提升用户体验。
5.为解决上述技术问题,本发明提供一种分布式系统的对象策略操作方法,包括:
6.根据获取的所述对象策略创建指令,启动对象网关服务,并确定目标s3用户和目标存储池;
7.根据所述对象策略创建指令中的对象策略信息,利用所述目标存储池创建目标对象策略;
8.根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对应的目标桶;其中,所述目标桶的对象策略为所述目标对象策略。
9.可选的,所述确定目标s3用户和目标存储池,包括:
10.创建分布式集群中的s3用户,并将所述s3用户确定为所述目标s3用户;
11.创建新的存储池,并将所述存储池确定为所述目标存储池。
12.可选的,所述根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对应的目标桶之前,还包括:
13.利用所述目标对象策略的策略名,查找数据库中所述目标对象策略的策略信息,并检测所述策略信息是否正确;
14.若是,则执行所述根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对应的目标桶的步骤。
15.可选的,所述根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对应的目标桶之后,还包括:
16.检测所述目标桶的对象策略是否为所述目标对象策略;
17.若是,则确定对象策略创建完成。
18.可选的,所述根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对
应的目标桶之后,还包括:
19.获取所述目标对象策略对应的对象策略修改指令;其中,所述对象策略修改指令包括策略修改信息;
20.根据所述策略修改信息,对所述目标对象策略进行编辑修改,得到更新后的目标对象策略。
21.可选的,所述根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对应的目标桶之后,还包括:
22.获取所述目标对象策略对应的对象策略删除指令;
23.根据所述对象策略删除指令,删除所述目标对象策略。
24.可选的,所述根据所述对象策略删除指令,删除所述目标对象策略,包括:
25.根据所述对象策略删除指令,删除所述目标对象策略,并删除所述目标存储池或所述目标存储池中所述目标对象策略对应的数据。
26.本发明还提供了一种分布式系统的对象策略操作装置,包括:
27.驱动确定模块,用于根据获取的所述对象策略创建指令,启动对象网关服务,并确定目标s3用户和目标存储池;
28.对象策略创建模块,用于根据所述对象策略创建指令中的对象策略信息,利用所述目标存储池创建目标对象策略;
29.对象桶创建模块,用于根据所述目标s3用户和所述目标对象策略,创建所述目标s3用户对应的目标桶;其中,所述目标桶的对象策略为所述目标对象策略。
30.本发明还提供了一种分布式系统的对象策略操作设备,包括:
31.存储器,用于存储计算机程序;
32.处理器,用于执行所述计算机程序时实现如上述所述的分布式系统的对象策略操作方法的步骤。
33.此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的分布式系统的对象策略操作方法的步骤。
34.本发明所提供的一种分布式系统的对象策略操作方法,包括:根据获取的对象策略创建指令,启动对象网关服务,并确定目标s3用户和目标存储池;根据对象策略创建指令中的对象策略信息,利用目标存储池创建目标对象策略;根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶;其中,目标桶的对象策略为目标对象策略;
35.可见,本发明通过根据对象策略创建指令中的对象策略信息,利用目标存储池创建目标对象策略,能够在分布式系统中指定存储池和策略算法,创建对象策略;并通过根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶,保证创建的对象策略能够正常使用,提升了分布式系统中对象策略的创建功能,从而使用户可以根据自身使用需求创建使用对象策略,提高了用户体验。
附图说明
36.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
37.图1为本发明实施例所提供的一种分布式系统的对象策略操作方法的流程图;
38.图2为本发明实施例所提供的一种分布式系统的对象策略操作方法的控制过程示意图;
39.图3为本发明实施例所提供的一种分布式系统的对象策略操作装置的结构框图;
40.图4为本发明实施例所提供的一种分布式系统的对象策略操作设备的结构示意图;
41.图5为本发明实施例所提供的一种分布式系统的对象策略操作设备的具体结构示意图。
具体实施方式
42.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
43.请参考图1,图1为本发明实施例所提供的一种分布式系统的对象策略操作方法的流程图。该方法可以包括:
44.步骤101:根据获取的对象策略创建指令,启动对象网关服务,并确定目标s3用户和目标存储池。
45.其中,本步骤中的对象策略创建指令可以为分布式系统中创建对象策略(即目标对象策略)的指令;本步骤中的目标s3(simple storage service,简单存储服务)用户可以为对象策略创建指令对应的s3用户,即对象策略创建指令所创建的目标对象策略对应的s3用户;本步骤中的目标存储池可以为对象策略创建指令对应的存储池,即对象策略创建指令所创建的目标对象策略对应的存储池。
46.具体的,对于本步骤中处理器根据获取的对象策略创建指令,启动对象网关服务,并确定目标s3用户和目标存储池的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如本步骤中处理器可以根据获取的对象策略创建指令,使用icfs

object

rgw

start

node all指令,开启对象网关服务;如图2所示,处理器可以通过对象网关模块,启动对象网关服务。
47.处理器可以根据对象策略创建指令中的s3用户信息,查找或创建目标s3用户;例如处理器可以根据s3用户信息中的uid(用户身份证明)、s3用户名和s3租户名,使用icfs

object

user

create

user

uid$uid

name$s3_user_name

tenane$s3_tenant_name指令,创建分布式集群中新的s3用户(即目标s3用户);如图2所示,处理器可以通过s3用户创建模块,创建新的s3用户(即目标s3用户)与对应的s3租户;对应的,处理器还可以存储目标s3用户对应的s3租户名(如$s3_tenant_name),以方便后续对目标桶的查找和目标桶的目标对象策略使用;相应的,本步骤中处理器也可以将查找到的对象策略创建指令中的s3用户信息对应的s3用户确定为目标s3用户。
48.处理器可以根据对象策略创建指令中的存储池信息,查找或创建目标存储池;例
如处理器可以使用icfs

admin

pool
‑‑
create

pool$pool_name

pgnum 2048

replicated 3

reweight

threshold 0.8

minsize 1

faultdomain hdd_1:host指令,创建新的存储池(即目标存储池);如图2所示,处理器可以通过存储池创建模块,创建新的存储池(即目标存储池);对应的,处理器还可以存储目标存储池的存储池名称(如$pool_name),以方便后续的使用;相应的,本步骤中处理器也可以将查找到的对象策略创建指令中的存储池信息对应的存储池确定为目标存储池。
49.步骤102:根据对象策略创建指令中的对象策略信息,利用目标存储池创建目标对象策略。
50.可以理解的是,本步骤中处理器可以根据对象策略创建指令中的对象策略信息(如策略名称和策略算法信息),利用目标存储池创建目标对象策略;例如处理器可以使用icfs

object

placement
‑‑
create
‑‑
placement$policy_name
‑‑
date

pool$data_pool_name
‑‑
index

pool$index_pool_name
‑‑
class_pool$class_pool_name
‑‑
compression$compress_algorithm指令,利用目标存储池($pool_name),创建新的对象策略($policy_name),即目标对象策略;如图2所示,处理器可以通过对象策略创建模块创建新的对象策略(即目标对象策略)。
51.具体的,本步骤之后还可以包括利用目标对象策略的策略名,查找数据库中目标对象策略的策略信息,并检测策略信息是否正确;若是,则进入步骤103。也就是说,处理器可以在创建目标对象策略后,使用创建的目标对象策略的策略名($policy_name),查询如mysql(一种关系型数据库管理系统)数据库的数据库中的目标对象策略的策略信息,以检测创建的目标对象策略是否正确,如检测查询出的策略信息是否与对象策略创建指令中的对象策略信息相符合;从而在创建的目标对象策略正确时,进入步骤103。例如处理器可以使用icfs

object

placement
‑‑
query
‑‑
placement$policy_name指令,查看mysql数据库中新创建的对象策略(即目标对象策略)的策略信息是否正确;如果正确,则可以进入步骤103;如果错误,则可以进行报错,如输出对象策略创建错误信息;如图2所示,处理器可以通过对象策略数据巡检查询模块,检测创建的目标对象策略的策略信息是否正确。
52.步骤103:根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶;其中,目标桶的对象策略为目标对象策略。
53.可以理解的是,本步骤中处理器可以根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶,使目标s3用户对应的s3租户可以通过目标桶访问和使用目标对象策略,保证创建的对象策略能够正常使用。例如处理器可以使用icfs

object

bucket
‑‑
create

bucket
‑‑
name$bucket_name
‑‑
acess_key$acess_key
‑‑
secret

key$secret_key
‑‑
object

policy$objcet_object指令,创建新的存储桶($bucket_name),即目标桶;如图2所示,处理器可以通过对象桶创建模块创建新的存储桶。
54.具体的,本步骤之后还可以包括检测目标桶的对象策略是否为目标对象策略;若是,则确定对象策略创建完成。也就是说,处理器可以在创建目标桶后,使用创建的目标桶的桶名(如$bucket_name),查询目标桶的对象策略的策略名,并检测目标桶的对象策略的策略名是否为目标对象策略的策略名(如$policy_name);若是,则确定对象策略创建完成。例如处理器可以使用icfs

object

bucket
‑‑
query

policy
‑‑
name$bucket_name
‑‑
acess_key$acess_key
‑‑
secret

key$secret_key指令,查询目标桶的对象策略是否为目标对象策
略;如果是,则可以对象策略创建完成,使得用于可以利用目标s3用户对应的s3租户,通过目标桶使用创建的对象策略(即目标对象策略);如果不是,则可以进行报错,如输出通配置错误信息;如图2所示,处理器可以通过对象策略数据巡检查询模块,检测创建的目标桶的对象策略是否为目标对象策略。
55.进一步的,为了进一步提升分布式系统中对象策略的操作功能,提升用户体验,本实施例所提供的方法还可以包括对象策略的修改过程,如处理器可以在步骤103之后,获取目标对象策略对应的对象策略修改指令;其中,对象策略修改指令包括策略修改信息;根据策略修改信息,对目标对象策略进行编辑修改,得到更新后的目标对象策略。例如,处理器可以根据策略修改信息中的压缩算法信息,使用icfs

object

placement
‑‑
modify
‑‑
placement$policy_name
‑‑
compression$compress_algorithm指令,编辑修改目标对象策略($policy_name)的压缩算法($compress_algorithm),得到压缩算法更新后的目标对象策略;如图2所示,处理器可以通过对象策略修改模块修改创建的对象策略。
56.对应的,处理器还可以在得到更新后的目标对象策略后,利用目标对象策略的策略名,查找并检测数据库中目标对象策略更新后的策略信息是否正确;若是,则确定对象策略修改完成;如处理器可以在修改完目标对象策略后,使用icfs

object

placement
‑‑
query
‑‑
placement$policy_name指令,查看mysql数据库中修改的目标对象策略的策略信息是否正确;如果正确,则可以确定对象策略修改完成;如果错误,则可以进行报错,如输出对象策略修改错误信息;如图2所示,处理器可以通过对象策略数据巡检查询模块,检测修改的目标对象策略的策略信息是否正确。
57.进一步的,为了进一步提升分布式系统中对象策略的操作功能,提升用户体验,本实施例所提供的方法还可以包括对象策略的删除过程,如处理器可以在步骤103之后,获取目标对象策略对应的对象策略删除指令;根据对象策略删除指令,删除目标对象策略。例如,处理器可以目标对象策略对应的对象策略删除指令,使用icfs

object

placement
‑‑
delelte
‑‑
placement$policy_name指令,删除目标对象策略($policy_name);如图2所示,处理器可以通过对象策略删除模块删除创建的对象策略。
58.对应的,处理器还可以在删除目标对象策略后,利用目标对象策略的策略名,查找并检测数据库中目标对象策略是否删除成功;若是,则确定对象策略删除成功;如处理器可以在删除完目标对象策略后,使用icfs

object

placement
‑‑
query
‑‑
placement$policy_name指令,查看mysql数据库中是否不存在删除的目标对象策略的策略信息;如果不存在,则可以确定对象策略修改完成;如果存在,则可以进行报错,如输出对象策略删除失败信息;如图2所示,处理器可以通过对象策略数据巡检查询模块,检测目标对象策略是否删除成功。
59.具体的,处理器可以根据对象策略删除指令,删除目标对象策略,并删除目标存储池或目标存储池中目标对象策略对应的数据。也就是说,处理器可以在删除目标对象策略之后或过程中,删除目标存储池或目标存储池中目标对象策略对应的数据,以完成目标对象策略相关数据的删除;如目标存储池仅存储目标对象策略对应的数据时,处理器可以直接删除目标存储池;目标存储池存储目标对象策略和其他对象策略对应的数据时,处理器可以删除目标存储池中目标对象策略对应的数据。如图2所示,处理器可以通过存储池删除模块,删除目标存储池或目标存储池中目标对象策略对应的数据。
60.例如,处理器可以通过对象策略修改模块,同时对容器1($container_1)与容器2($container_2)中的元数据进行修改,完成对象策略的修改;修改后查询mysql数据库中的数据表,均应为修改过的容器1的数据($data1_change)与容器2的数据($data2_change),否则报错;然后通过对象策略删除模块,可以删除容器1与容器2中的元数据$data1_change与$data2_change,完成对象策略的删除;删除后对容器1与容器2中数据进行巡检查询,应不存在$data1_change与$data2_change,功能正常,程序可以返回1,确定对象策略删除成功;若发现仍存在任一进行删除的数据,则程序可以返回0,进行报错通知。
61.本实施例中,本发明实施例通过根据对象策略创建指令中的对象策略信息,利用目标存储池创建目标对象策略,能够在分布式系统中指定存储池和策略算法,创建对象策略;并通过根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶,保证创建的对象策略能够正常使用,提升了分布式系统中对象策略的创建功能,从而使用户可以根据自身使用需求创建使用对象策略,提高了用户体验。
62.相应于上面的方法实施例,本发明实施例还提供了一种分布式系统的对象策略操作装置,下文描述的一种分布式系统的对象策略操作装置与上文描述的一种分布式系统的对象策略操作方法可相互对应参照。
63.请参考图3,图3为本发明实施例所提供的一种分布式系统的对象策略操作装置的结构框图。该装置可以包括:
64.驱动确定模块10,用于根据获取的对象策略创建指令,启动对象网关服务,并确定目标s3用户和目标存储池;
65.对象策略创建模块20,用于根据对象策略创建指令中的对象策略信息,利用目标存储池创建目标对象策略;
66.对象桶创建模块30,用于根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶;其中,目标桶的对象策略为目标对象策略。
67.可选的,驱动确定模块10可以包括:
68.s3用户创建子模块,用于创建分布式集群中的s3用户,并将s3用户确定为目标s3用户;
69.存储池创建子模块,用于创建新的存储池,并将存储池确定为目标存储池。
70.可选的,该装置还可以包括:
71.对象策略数据巡检查询模块,用于利用目标对象策略的策略名,查找数据库中目标对象策略的策略信息,并检测策略信息是否正确;若是,则向对象桶创建模块30发送启动信号。
72.可选的,对象策略数据巡检查询模块还可以用于检测目标桶的对象策略是否为目标对象策略;若是,则确定对象策略创建完成。
73.可选的,该装置还可以包括:
74.修改获取模块,用于获取目标对象策略对应的对象策略修改指令;其中,对象策略修改指令包括策略修改信息;
75.对象策略修改模块,用于根据策略修改信息,对目标对象策略进行编辑修改,得到更新后的目标对象策略。
76.可选的,该装置还可以包括:
77.删除获取模块,用于获取目标对象策略对应的对象策略删除指令;
78.对象策略删除模块,用于根据对象策略删除指令,删除目标对象策略。
79.可选的,该装置还可以包括:
80.存储池删除模块,用于根据对象策略删除指令,删除目标存储池或目标存储池中目标对象策略对应的数据。
81.本实施例中,本发明实施例通过对象策略创建模块20根据对象策略创建指令中的对象策略信息,利用目标存储池创建目标对象策略,能够在分布式系统中指定存储池和策略算法,创建对象策略;并通过对象桶创建模块30根据目标s3用户和目标对象策略,创建目标s3用户对应的目标桶,保证创建的对象策略能够正常使用,提升了分布式系统中对象策略的创建功能,从而使用户可以根据自身使用需求创建使用对象策略,提高了用户体验。
82.相应于上面的方法实施例,本发明实施例还提供了一种分布式系统的对象策略操作设备,下文描述的一种分布式系统的对象策略操作设备与上文描述的一种分布式系统的对象策略操作方法可相互对应参照。
83.请参考图4,图4为本发明实施例所提供的一种分布式系统的对象策略操作设备的结构示意图。该对象策略操作设备可以包括:
84.存储器d1,用于存储计算机程序;
85.处理器d2,用于执行计算机程序时实现上述方法实施例所提供的分布式系统的对象策略操作方法的步骤。
86.具体的,请参考图5,图5为本发明实施例所提供的一种分布式系统的对象策略操作设备的具体结构示意图,该对象策略操作设备310可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上单元(图示没标出),每个单元可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在对象策略操作设备310上执行存储介质330中的一系列指令操作。
87.对象策略操作设备310还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。例如,windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm等。
88.其中,对象策略操作设备310可以为分布式系统的服务器。
89.上文所描述的分布式系统的对象策略操作方法中的步骤可以由分布式系统的对象策略操作设备的结构实现。
90.相应于上面的方法实施例,本发明实施例还提供了一种计算机可读存储介质,下文描述的一种计算机可读存储介质与上文描述的一种分布式系统的对象策略操作方法可相互对应参照。
91.一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述实施例所提供的分布式系统的对象策略操作方法的步骤。
92.该计算机可读存储介质具体可以为u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可存储
程序代码的计算机可读存储介质。
93.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
94.以上对本发明所提供的一种分布式系统的对象策略操作方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1