本文介绍如何使用Python SDK V2管理资源池QoS。
注意事项
本文示例代码以华东1(杭州)的地域ID
cn-hangzhou
为例,默认使用外网Endpoint,如果您希望通过与OSS同地域的其他阿里云产品访问OSS,请使用内网Endpoint。关于OSS支持的Region与Endpoint的对应关系,请参见OSS地域和访问域名。
Bucket带宽管理
为资源池内的Bucket设置流控
import alibabacloud_oss_v2 as oss
def PutBucketQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 初始化qos_xml_body为空字符串
qos_xml_body = ""
# 打开名为'qos.xml'的文件,并读取其中的内容到qos_xml_body变量中
with open('qos.xml', 'r') as qos_file:
qos_xml_body = qos_file.read()
# 构造一个操作输入请求对象,用于设置存储空间的QoS信息
req = oss.OperationInput(
op_name = 'PutBucketQoSInfo', # 操作名称,这里是指定设置存储空间QoS信息的操作
method = 'PUT', # HTTP方法类型,此处为PUT,表示更新资源
parameters = {
'qosInfo': '', # 这里是参数列表,指定要设置的是QoS信息
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = qos_xml_body, # 请求体,包含之前从'qos.xml'文件读取的内容
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
if __name__ == "__main__":
PutBucketQoSInfo()
获取Bucket流控配置
import alibabacloud_oss_v2 as oss
def GetBucketQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于获取存储空间的QoS信息
req = oss.OperationInput(
op_name = 'GetBucketQoSInfo', # 操作名称,这里是指定获取存储空间QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'qosInfo': '', # 这里是参数列表,指定要获取的是QoS信息
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
GetBucketQoSInfo()
删除资源池内指定Bucket的流控配置
import alibabacloud_oss_v2 as oss
def DeleteBucketQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于删除存储空间的QoS信息
req = oss.OperationInput(
op_name = 'DeleteBucketQoSInfo', # 操作名称,这里是指定删除存储空间QoS信息的操作
method = 'DELETE', # HTTP方法类型,此处为DELETE,表示删除资源
parameters = {
'qosInfo': '', # 这里是参数列表,指定要删除的是QoS信息
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是DELETE请求,通常不需要请求体,因此为None
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
if __name__ == "__main__":
DeleteBucketQoSInfo()
Bucket级别不同请求者的带宽管理
设置请求者在Bucket级别的流控
import alibabacloud_oss_v2 as oss
def PutBucketRequesterQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 初始化qos_xml_body为空字符串
qos_xml_body = ""
# 打开名为'qos.xml'的文件,并读取其中的内容到qos_xml_body变量中
with open('qos.xml', 'r') as qos_file:
qos_xml_body = qos_file.read()
# 构造一个操作输入请求对象,用于设置存储空间的请求者QoS信息
req = oss.OperationInput(
op_name = 'PutBucketRequesterQoSInfo', # 操作名称,这里是指定设置存储空间请求者QoS信息的操作
method = 'PUT', # HTTP方法类型,此处为PUT,表示更新资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要设置的是请求者QoS信息
'qosRequester': '2598732222222xxxx', # 请求者的唯一标识符,用于区分不同的请求者
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = qos_xml_body, # 请求体,包含之前从'qos.xml'文件读取的内容
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
PutBucketRequesterQoSInfo()
获取指定请求者在Bucket级别的流控配置
import alibabacloud_oss_v2 as oss
def GetBucketRequesterQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于获取存储空间的请求者QoS信息
req = oss.OperationInput(
op_name = 'GetBucketRequesterQoSInfo', # 操作名称,这里是指定获取存储空间请求者QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要获取的是请求者QoS信息
'qosRequester': '2598732222222xxxx', # 请求者的唯一标识符,用于区分不同的请求者
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
GetBucketRequesterQoSInfo()
获取所有请求者在Bucket级别的流控配置
import alibabacloud_oss_v2 as oss
def ListBucketRequesterQoSInfos():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于列出存储空间的请求者QoS信息
req = oss.OperationInput(
op_name = 'ListBucketRequesterQoSInfos', # 操作名称,这里是指定列出存储空间请求者QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要列出的是请求者QoS信息
# "continuation-token": "2345", # 可选参数,用于分页查询,表示从上一次查询的断点继续
# "max-keys": "1", # 可选参数,用于限制返回的最大条目数
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
ListBucketRequesterQoSInfos()
删除Bucket的某个请求者流控配置
import alibabacloud_oss_v2 as oss
def DeleteBucketRequesterQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于删除存储空间的请求者QoS信息
req = oss.OperationInput(
op_name = 'DeleteBucketRequesterQoSInfo', # 操作名称,这里是指定删除存储空间请求者QoS信息的操作
method = 'DELETE', # HTTP方法类型,此处为DELETE,表示删除资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要删除的是请求者QoS信息
'qosRequester': '2598732222222xxxx', # 请求者的唯一标识符,用于区分不同的请求者
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是DELETE请求,通常不需要请求体,因此为None
bucket = 'examplebucket', # 目标存储空间的名称
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
DeleteBucketRequesterQoSInfo()
资源池级别不同请求者的带宽管理
获取当前账号下的所有资源池信息
import alibabacloud_oss_v2 as oss
def ListResourcePools():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于列出资源池
req = oss.OperationInput(
op_name = 'ListResourcePools', # 操作名称,这里是指定列出资源池的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'resourcePool': '', # 参数列表,指定要列出的是资源池信息
# "continuation-token": "test-rp-", # 可选参数,用于分页查询,表示从上一次查询的断点继续
# "max-keys": "1", # 可选参数,用于限制返回的最大条目数
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == '__main__':
ListResourcePools()
获取指定资源池的信息
import alibabacloud_oss_v2 as oss
def GetResourcePoolInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于获取资源池的信息
req = oss.OperationInput(
op_name = 'GetResourcePoolInfo', # 操作名称,这里是指定获取资源池信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'resourcePoolInfo': '', # 参数列表,指定要获取的是资源池信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
GetResourcePoolInfo()
获取指定资源池包含的Bucket列表
import alibabacloud_oss_v2 as oss
def ListResourcePoolBucketGroups():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于列出资源池的存储空间组
req = oss.OperationInput(
op_name = 'ListResourcePoolBucketGroups', # 操作名称,这里是指定列出资源池存储空间组的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'resourcePoolBucketGroup': '', # 参数列表,指定要列出的是存储空间组信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
ListResourcePoolBucketGroups()
为资源池的请求者配置流控
import alibabacloud_oss_v2 as oss
def PutResourcePoolRequesterQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 初始化qos_xml_body为空字符串
qos_xml_body = ""
# 打开名为'qos.xml'的文件,并读取其中的内容到qos_xml_body变量中
with open('qos.xml', 'r') as qos_file:
qos_xml_body = qos_file.read()
# 构造一个操作输入请求对象,用于设置资源池请求者的QoS信息
req = oss.OperationInput(
op_name = 'PutResourcePoolRequesterQoSInfo', # 操作名称,这里是指定设置资源池请求者QoS信息的操作
method = 'PUT', # HTTP方法类型,此处为PUT,表示更新资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要设置的是请求者QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
'qosRequester': '2598732222222xxxx', # 请求者的唯一标识符,用于区分不同的请求者
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = qos_xml_body, # 请求体,包含之前从'qos.xml'文件读取的内容
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
PutResourcePoolRequesterQoSInfo()
获取指定请求者在资源池的流控配置
import alibabacloud_oss_v2 as oss
def GetResourcePoolRequesterQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于获取资源池的请求者QoS信息
req = oss.OperationInput(
op_name = 'GetResourcePoolRequesterQoSInfo', # 操作名称,这里是指定获取资源池请求者QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要获取的是请求者QoS信息
'qosRequester': '2598732222222xxxx', # 请求者的唯一标识符,用于区分不同的请求者
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
GetResourcePoolRequesterQoSInfo()
获取所有请求者在资源池的流控配置
import alibabacloud_oss_v2 as oss
def ListResourcePoolRequesterQoSInfos():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于列出资源池的请求者QoS信息
req = oss.OperationInput(
op_name = 'ListResourcePoolRequesterQoSInfos', # 操作名称,这里是指定列出资源池请求者QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要列出的是请求者QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
# "continuation-token": "2345", # 可选参数,用于分页查询,表示从上一次查询的断点继续
# "max-keys": "1", # 可选参数,用于限制返回的最大条目数
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
ListResourcePoolRequesterQoSInfos()
删除指定请求者在资源池的流控配置
import alibabacloud_oss_v2 as oss
def DeleteResourcePoolRequesterQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于删除资源池的请求者QoS信息
req = oss.OperationInput(
op_name = 'DeleteResourcePoolRequesterQoSInfo', # 操作名称,这里是指定删除资源池请求者QoS信息的操作
method = 'DELETE', # HTTP方法类型,此处为DELETE,表示删除资源
parameters = {
'requesterQosInfo': '', # 参数列表,指定要删除的是请求者QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
'qosRequester': '2598732222222xxxx', # 请求者的唯一标识符,用于区分不同的请求者
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是DELETE请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
DeleteResourcePoolRequesterQoSInfo()
BucketGroup带宽管理
将资源池中的Bucket加入到特定BucketGroup
import alibabacloud_oss_v2 as oss
def PutBucketResourcePoolBucketGroup():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于将存储空间添加到指定的资源池存储空间组
req = oss.OperationInput(
op_name = 'PutBucketResourcePoolBucketGroup', # 操作名称,这里是指定将存储空间添加到资源池存储空间组的操作
method = 'PUT', # HTTP方法类型,此处为PUT,表示更新资源
parameters = {
'resourcePoolBucketGroup': 'example-group', # 存储空间组的唯一标识符,用于区分不同的存储空间组
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是PUT请求且无需传递额外数据,因此为None
bucket = 'examplebucket', # 目标存储空间的名称,表示要将该存储空间添加到指定的资源池存储空间组
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
PutBucketResourcePoolBucketGroup()
获取特定资源池中的BucketGroup列表
import alibabacloud_oss_v2 as oss
def ListResourcePoolBucketGroups():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于列出资源池的存储空间组
req = oss.OperationInput(
op_name = 'ListResourcePoolBucketGroups', # 操作名称,这里是指定列出资源池存储空间组的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'resourcePoolBucketGroup': '', # 参数列表,指定要列出的是存储空间组信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
ListResourcePoolBucketGroups()
修改资源池中BucketGroup的流控配置
import alibabacloud_oss_v2 as oss
def PutResourcePoolBucketGroupQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 初始化qos_xml_body为空字符串
qos_xml_body = ""
# 打开名为'qos.xml'的文件,并读取其中的内容到qos_xml_body变量中
with open('qos.xml', 'r') as qos_file:
qos_xml_body = qos_file.read()
# 构造一个操作输入请求对象,用于设置资源池存储空间组的QoS信息
req = oss.OperationInput(
op_name = 'PutResourcePoolBucketGroupQoSInfo', # 操作名称,这里是指定设置资源池存储空间组QoS信息的操作
method = 'PUT', # HTTP方法类型,此处为PUT,表示更新资源
parameters = {
'resourcePoolBucketGroupQosInfo': '', # 参数列表,指定要设置的是资源池存储空间组QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
'resourcePoolBucketGroup': 'example-group', # 存储空间组的唯一标识符,用于区分不同的存储空间组
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = qos_xml_body, # 请求体,包含之前从'qos.xml'文件读取的内容
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
PutResourcePoolBucketGroupQoSInfo()
获取资源池中BucketGroup的流控配置
import alibabacloud_oss_v2 as oss
def GetResourcePoolBucketGroupQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于获取资源池的存储空间组QoS信息
req = oss.OperationInput(
op_name = 'GetResourcePoolBucketGroupQoSInfo', # 操作名称,这里是指定获取资源池存储空间组QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'resourcePoolBucketGroupQosInfo': '', # 参数列表,指定要获取的是资源池存储空间组QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
'resourcePoolBucketGroup': 'example-group', # 存储空间组的唯一标识符,用于区分不同的存储空间组
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
GetResourcePoolBucketGroupQoSInfo()
列举资源池中BucketGroup的流控配置
import alibabacloud_oss_v2 as oss
def ListResourcePoolBucketGroupQoSInfos():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于列出资源池的存储空间组QoS信息
req = oss.OperationInput(
op_name = 'ListResourcePoolBucketGroupQoSInfos', # 操作名称,这里是指定列出资源池存储空间组QoS信息的操作
method = 'GET', # HTTP方法类型,此处为GET,表示获取资源
parameters = {
'resourcePoolBucketGroupQosInfo': '', # 参数列表,指定要列出的是资源池存储空间组QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是GET请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
ListResourcePoolBucketGroupQoSInfos()
删除资源池中BucketGroup的流控配置
import alibabacloud_oss_v2 as oss
def DeleteResourcePoolBucketGroupQoSInfo():
# 从环境变量中加载凭证信息,用于身份验证
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# 加载默认配置并获取配置对象
cfg = oss.config.load_default()
# 设置凭证提供者
cfg.credentials_provider = credentials_provider
# 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou
cfg.region = "cn-hangzhou"
# 使用配置对象初始化OSS客户端
client = oss.Client(cfg)
# 构造一个操作输入请求对象,用于删除资源池的存储空间组QoS信息
req = oss.OperationInput(
op_name = 'DeleteResourcePoolBucketGroupQoSInfo', # 操作名称,这里是指定删除资源池存储空间组QoS信息的操作
method = 'DELETE', # HTTP方法类型,此处为DELETE,表示删除资源
parameters = {
'resourcePoolBucketGroupQosInfo': '', # 参数列表,指定要删除的是资源池存储空间组QoS信息
'resourcePool': 'example-resource-pool', # 资源池的唯一标识符,用于区分不同的资源池
'resourcePoolBucketGroup': 'example-group', # 存储空间组的唯一标识符,用于区分不同的存储空间组
},
headers = None, # 请求头信息,如果不需要特殊设置则可以为None
body = None, # 请求体,由于是DELETE请求,通常不需要请求体,因此为None
bucket = None, # 目标存储空间的名称,这里不需要指定具体的存储空间,因此为None
)
# 调用客户端的invoke_operation方法执行请求,并接收响应
resp = client.invoke_operation(req)
# 打印响应的状态码
print(resp.status_code)
# 打印响应的头部信息
print(resp.headers)
# 打印响应的内容(HTTP响应体),通常包含请求返回的具体数据
print(resp.http_response.content)
if __name__ == "__main__":
DeleteResourcePoolBucketGroupQoSInfo()
相关文档
关于资源池QoS操作的API更多详情,请参见关于资源池QoS操作。
关于资源池QoS的更多配置示例,请参见资源池QoS配置示例。
该文章对您有帮助吗?