校验服务实例有效期

本文为您介绍如何通过接口CheckOutLicense校验服务实例有效期。

使用限制

需满足以下任意一个。

  • 计算巢服务配置了自定义售卖。

  • 计算巢服务上架在云市场。

校验原理

对于计算巢创建的资源,计算巢会将服务实例ID(ServiceInstanceId)、服务ID(ServiceId)等标签打在资源上,CheckOutLicense通过资源所属标签判断所属服务实例。

  1. 服务商需从控制台获取对应计算巢服务实例的ServiceId

  2. 调用CheckOutLicense时将ServiceId作为参数发送给计算巢,由计算巢判断传入的内容与资源中的是否一致。

接口调用示例

本示例是在符合使用限制的前提下,创建的ECS实例并调用CheckOutLicense。

  1. 获取ECS地域信息

    在调用CheckOutLicense前,您需要获取应用部署的ECS地域(regionld)信息。获取到的地域信息会在后续步骤中使用,因此需要服务商记录。

    1. 访问如下网址,获得地域信息。

      curl http://100.100.100.200/latest/meta-data/region-id
    2. 地域返回示例。

      cn-hangzhou
  2. 在控制台获取ServiceId

    image

  3. 请求示例

    此处以在杭州地域发起调用为例,实际调用时应替换地域信息。

    # 将ServiceId对应的值按实际情况替换。
    curl -H "Content-Type: application/json" -XPOST https://cn-hangzhou.axt.aliyun.com/computeNest/license/check_out_license -d '{"ServiceId":"service-8fff945fe6844906****"}'
  4. 返回示例

    {
        "code":200,
        "requestId":"6af1efb7-c59c-4cee-9094-e1e3bbefb639",
        "instanceId":"i-0jl957dfri612gxxxxxx",
        "result":{
            "RequestId":"B22723B7-FC31-18F5-A33E-1AF4C82736AA",
            "ServiceInstanceId":"si-0f14037f30c14292****",
            "LicenseMetadata":"{\"TemplateName\":\"Custom_Image_Ecs\",\"SpecificationName\":\"\",\"CustomData\":\"xxxx\"}",
            "TrialType":"NotTrial",
            "Token":"58d4574bd0d967bb431cd8936b5e80c4",
            "ExpireTime":"2024-08-28T06:27:08Z",
            "ServiceId":"service-8fff945fe6844906****",
            "Components":"{\"package_version\":\"yuncode55xxxxxxxx\",\"SystemDiskSize\":\"40\",\"DataDiskSize\":\"100\"}"
        }
     }

    主要参数解释如下。

    参数

    描述

    示例值

    ServiceInstanceId

    服务实例ID。

    si-0f14037f30c14292****

    ServiceId

    服务ID。

    service-8fff945fe6844906****

    ExpireTime

    服务实例的到期时间。

    2024-08-28T06:27:08Z

    LicenseMetadata

    元数据。

    需要在自定义售卖配置中定义该数据。

    {\"TemplateName\":\"Custom_Image_Ecs\",\"SpecificationName\":\"\",\"CustomData\":\"xxxx\"}

    Components

    云市场额外计费项信息。

    {\"package_version\":\"yuncode55xxxxxxxx\",\"SystemDiskSize\":\"40\",\"DataDiskSize\":\"100\"}