API文档
容器云相关接口
产品类型接口
PythonSDK

1. 通过 PythonSDK 操作容器实例资源

本文档说明如何通过 PythonSDK 操作您的容器实例资源。

本文档中涉及到的 AccessKey 和 SecretAccessKey 只用作演示用,不作为您真实操作自己资源的依据。

本文档中涉及到的链接信息实际应为https://ai.blsc.cn (opens in a new tab)

本页所有接口都用到可用区信息,可用区具体说明详见 可用区, 本页不再重复说明

本页所有接口都用到资源规格信息,资源规格具体说明详见 资源规格, 本页不再重复说明

本页所有接口返回信息都包含异步任务信息,异步任务具体说明详见 异步任务, 本页不再重复说明

1.1. 查询实例类型列表

    # 实例化一个认证对象,入参需要传入智算云平台账户AccessKey和SecretAccessKey,此处还需注意密钥对的保密
    # 密钥可前往智算云平台->个人中心->我的密钥进行获取
    AccessKey: str = "abcd"
    SecretAccessKey: str = "abcd1234"
    clientProfile = ClientProfile(
        AccessKey,
        SecretAccessKey
    )
 
    # 实例化一个请求产品的client对象
    client = ACKProductClient(clientProfile=clientProfile)
    # 实例化一个请求对象,每个接口都会对应一个request对象
    request = DescribeACKServiceTypesRequest()
 
    # 返回的response是一个DescribeACKServiceTypesResponse实例
    # 该实例有三个重要属性,分别是code、message和data
    response = client.DescribeACKServiceTypes(request)
    # code属性表示本次请求返回的编码。该编码200表示正常,非200表示异常
    code = response.code
    # message属性表示本次请求返回的信息。如果code值为非200,则可通过message获得请求异常原因
    message = response.message
    # data属性为实际返回的容器实例类型信息列表。数据类型为list[ACKServiceTypes]
    if code != 200:
        print(message)
        return
 
    serviceTypes = response.data
    # Job类有如下重要属性
    if serviceTypes is not None:
        for serviceType in serviceTypes:
            if serviceType is not None:
                print(serviceType.vhostModel)

1.2. 查询共享存储类型列表

    # 实例化一个认证对象,入参需要传入智算云平台账户AccessKey和SecretAccessKey,此处还需注意密钥对的保密
    # 密钥可前往智算云平台->个人中心->我的密钥进行获取
    AccessKey: str = "abcd"
    SecretAccessKey: str = "abcd1234"
    clientProfile = ClientProfile(
        AccessKey,
        SecretAccessKey
    )
 
    # 实例化一个请求产品的client对象
    client = ACKProductClient(clientProfile=clientProfile)
    # 实例化一个请求对象,每个接口都会对应一个request对象
    request = DescribeACKVolumeTypesRequest()
 
    # 返回的response是一个DescribeACKVolumeTypesResponse实例
    # 该实例有三个重要属性,分别是code、message和data
    response = client.DescribeACKVolumeTypes(request)
    # code属性表示本次请求返回的编码。该编码200表示正常,非200表示异常
    code = response.code
    # message属性表示本次请求返回的信息。如果code值为非200,则可通过message获得请求异常原因
    message = response.message
    # data属性为实际返回的容器存储类型信息列表。数据类型为list[ACKVolumeTypes]
    if code != 200:
        print(message)
        return
 
    volumeTypes = response.data
    # Job类有如下重要属性
    if volumeTypes is not None:
        for volumeType in volumeTypes:
            if volumeType is not None:
                print(volumeType.volumeType,volumeType.volumeSize)

1.3. 查询公共镜像列表

    # 实例化一个认证对象,入参需要传入智算云平台账户AccessKey和SecretAccessKey,此处还需注意密钥对的保密
    # 密钥可前往智算云平台->个人中心->我的密钥进行获取
    AccessKey: str = "abcd"
    SecretAccessKey: str = "abcd1234"
    clientProfile = ClientProfile(
        AccessKey,
        SecretAccessKey
    )
 
    # 实例化一个请求产品的client对象
    client = ACKProductClient(clientProfile=clientProfile)
    # 实例化一个请求对象,每个接口都会对应一个request对象
    request = DescribeACKPublicImagesRequest()
 
    # 返回的response是一个DescribeACKPublicImagesResponse实例
    # 该实例有三个重要属性,分别是code、message和data
    response = client.DescribeACKPublicImages(request)
    # code属性表示本次请求返回的编码。该编码200表示正常,非200表示异常
    code = response.code
    # message属性表示本次请求返回的信息。如果code值为非200,则可通过message获得请求异常原因
    message = response.message
    # data属性为实际返回的容器公共镜像信息列表。数据类型为list[ACKCI]
    if code != 200:
        print(message)
        return
 
    images = response.data
    # Job类有如下重要属性
    if images is not None:
        for image in images:
            if image is not None:
                print(image.platformName)

1.4. 查询实例规格售罄

    # 实例化一个认证对象,入参需要传入智算云平台账户AccessKey和SecretAccessKey,此处还需注意密钥对的保密
    # 密钥可前往智算云平台->个人中心->我的密钥进行获取
    AccessKey: str = "abcd"
    SecretAccessKey: str = "abcd1234"
    clientProfile = ClientProfile(
        AccessKey,
        SecretAccessKey
    )
 
    # 实例化一个请求产品的client对象
    client = ACKProductClient(clientProfile=clientProfile)
    # 实例化一个请求对象,每个接口都会对应一个request对象
    request = DescribeACKAvailableResourcesRequest()
    item = ACKAvailableResourceInput(zoneCode="cn-zhongwei-ac", serviceModel="rtx3090.epyc7402.xlarge")
    request.serviceModels = [item]
 
    # 返回的response是一个DescribeACKAvailableResourceResponse实例
    # 该实例有三个重要属性,分别是code、message和data
    response = client.DescribeACKAvailableResources(request)
    # code属性表示本次请求返回的编码。该编码200表示正常,非200表示异常
    code = response.code
    # message属性表示本次请求返回的信息。如果code值为非200,则可通过message获得请求异常原因
    message = response.message
    # data属性为实际返回的容器实例类型可用资源信息列表。数据类型为ACKAvailableResourceOutput
    if code != 200:
        print(message)
        return
 
    ackAvailableResourceOutput = response.data
    if ackAvailableResourceOutput is not None:
        for availableResource in ackAvailableResourceOutput:
            if availableResource is not None:
                print(availableResource.serviceModel, availableResource.soldOut)