OpenAPI文档
  • 基础、平台产品
  • CDN
  • Kafka
  • Memcached
  • MongoDB
  • MySQL
  • Redis
    • 对象存储
    • 对象存储(v1.1)
    • 负载均衡
    • 新版MongoDB
    • Vira
    • Vira2
    • OpenAPI
    • Redis

    Redis

    # Redis 公开 API 目录

    • Redis 公开 API 目录
      • API 概览
        • 实例
        • 备份
        • 错误码
      • 访问地址
      • 1.DescribeRegins
      • 2.DescribeAvailableDBConfig
        • DataObj
        • ProductObj
        • ArchitectureObj
        • ComputeRoleObj
        • StandardObj
        • AttachDiskObj
        • CpuRamObj
        • NetworkLinkObj
      • 3.CreateDBInstance
      • 4.DescribeDBInstances
      • 5.DeleteDBInstance
      • 6.DescribeBackups
      • 7.DownloadBackup
      • 8.CreateBackup
      • 9.DeleteBackup
      • 10.DescribeRedisConfig

    # API 概览

    云数据库 Redis 提供以下 API 接口。

    # 实例

    API 描述
    DescribeRegins 获取云数据库 Redis 支持购买的站点区域
    DescribeAvailableDBConfig 获取某个站点可购买的 Redis 产品类型以及规格
    CreateDBInstance 创建 Redis 云数据库实例
    DescribeDBInstances 查看 Redis 实例列表
    DeleteDBInstance 删除 Redis 实例

    # 备份

    API 描述
    DescribeBackups 获取备份集列表
    DownloadBackup 获取备份文件信息及内网下载地址
    CreateBackup 创建备份(物理全备份,RDB 格式文件)
    DeleteBackup 删除备份文件

    # 错误码

    HttpCode 错误码 描述
    400 ArgMissing 缺少参数错误
    400 InvalidParameter 参数错误
    400 BadArgs 参数错误
    400 UnsupportedOperation 操作不支持
    404 ResourceNotFound 资源不存在
    409 ResourceInUse 资源正在被其他任务占用,操作冲突
    500 InternalError 内部错误
    500 CreateOrderExcept 创建订单异常

    # 访问地址

    地区 访问地址
    中国大陆 cdsapi.capitalonline.net
    亚太地区 cdsapi-asia.capitalonline.net
    欧美地区 cdsapi-us.capitalonline.net

    # 1.DescribeRegins

    Action:DescribeRegins

    描述: 获取云数据库 Redis 支持购买的站点区域

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: GET

    请求参数:

    无

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 数据
    IsSaling int 站点是否能购买服务,1:站点支持购买;0:资源不足已下线
    CityId string 城市编号
    CityName string 城市名称
    SiteName string 站点名称
    RegionId string 站点编号
    RegionName string 区域名称

    请求示例:

    def get_redis_Zones():
        """
        获取云数据库Redis支持的站点区域
        """
        action = "DescribeRegins"
        method = "GET"
        param = {
        }
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param)
        res = requests.get(url)
        result = json.loads(res.content)
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

    返回示例:

    {
      "Code": "Success",
      "Data": [
        {
          "CityId": "3082f45e-306e-11e7-9796-0050569b4d9c",
          "CityName": "洛杉矶",
          "IsSaling": 1,
          "RegionId": "US_LosAngeles_A",
          "RegionName": "北美地区",
          "SiteName": "洛杉矶1"
        },
        {
          "CityId": "7b98a5d1-306e-11e7-9796-0050569b4d9c",
          "CityName": "法兰克福",
          "IsSaling": 1,
          "RegionId": "EUR_Germany_A",
          "RegionName": "欧洲地区",
          "SiteName": "德国1"
        },
        {
          "CityId": "8737606f-306d-11e7-9796-0050569b4d9c",
          "CityName": "东京",
          "IsSaling": 1,
          "RegionId": "APAC_Tokyo_A",
          "RegionName": "亚太地区",
          "SiteName": "东京1"
        },
        {
          "CityId": "27b57297-306d-11e7-9796-0050569b4d9c",
          "CityName": "香港",
          "IsSaling": 1,
          "RegionId": "CN_Hongkong_A",
          "RegionName": "亚太地区",
          "SiteName": "香港1"
        },
        {
          "CityId": "a8937b00-306d-11e7-9796-0050569b4d9c",
          "CityName": "新加坡",
          "IsSaling": 1,
          "RegionId": "APAC_Singapore_A",
          "RegionName": "亚太地区",
          "SiteName": "新加坡1"
        },
        {
          "CityId": "5c432e0e-306e-11e7-9796-0050569b4d9c",
          "CityName": "阿姆斯特丹",
          "IsSaling": 1,
          "RegionId": "EUR_Netherlands_A",
          "RegionName": "欧洲地区",
          "SiteName": "荷兰1"
        },
        {
          "CityId": "154ed19e-306e-11e7-9796-0050569b4d9c",
          "CityName": "纽约",
          "IsSaling": 1,
          "RegionId": "US_NewYork_A",
          "RegionName": "北美地区",
          "SiteName": "纽约1"
        },
        {
          "CityId": "ea3ca775-306c-11e7-9796-0050569b4d9c",
          "CityName": "北京",
          "IsSaling": 1,
          "RegionId": "CN_Beijing_B",
          "RegionName": "中国大陆",
          "SiteName": "北京2"
        },
        {
          "CityId": "ea3ca775-306c-11e7-9796-0050569b4d9c",
          "CityName": "北京",
          "IsSaling": 1,
          "RegionId": "CN_Beijing_E",
          "RegionName": "中国大陆",
          "SiteName": "北京5"
        },
        {
          "CityId": "ea3ca775-306c-11e7-9796-0050569b4d9c",
          "CityName": "北京",
          "IsSaling": 1,
          "RegionId": "CN_Beijing_A",
          "RegionName": "中国大陆",
          "SiteName": "北京1"
        },
        {
          "CityId": "e48e2312-306d-11e7-9796-0050569b4d9c",
          "CityName": "达拉斯",
          "IsSaling": 1,
          "RegionId": "US_Dallas_A",
          "RegionName": "北美地区",
          "SiteName": "达拉斯1"
        },
        {
          "CityId": "713d3745-306d-11e7-9796-0050569b4d9c",
          "CityName": "台北",
          "IsSaling": 1,
          "RegionId": "CN_Taipei_A",
          "RegionName": "亚太地区",
          "SiteName": "台北1"
        },
        {
          "CityId": "123d0d01-306d-11e7-9796-0050569b4d9c",
          "CityName": "无锡",
          "IsSaling": 1,
          "RegionId": "CN_Wuxi_A",
          "RegionName": "中国大陆",
          "SiteName": "无锡1"
        },
        {
          "CityId": "87fcbbd6-be0a-11e7-9d6b-0242ac110004",
          "CityName": "首尔",
          "IsSaling": 1,
          "RegionId": "APAC_Seoul_A",
          "RegionName": "亚太地区",
          "SiteName": "首尔1"
        },
        {
          "CityId": "ea3ca775-306c-11e7-9796-0050569b4d9c",
          "CityName": "北京",
          "IsSaling": 1,
          "RegionId": "CN_Beijing_C",
          "RegionName": "中国大陆",
          "SiteName": "北京3"
        },
        {
          "CityId": "c11a5abe-3f7e-11e7-86b1-0242ac11000e",
          "CityName": "广州",
          "IsSaling": 1,
          "RegionId": "CN_Guangzhou_A",
          "RegionName": "中国大陆",
          "SiteName": "广州1"
        },
        {
          "CityId": "b44355d0-65e7-11e7-8ea9-0050569b651c",
          "CityName": "上海",
          "IsSaling": 1,
          "RegionId": "CN_Shanghai_A",
          "RegionName": "中国大陆",
          "SiteName": "上海1"
        },
        {
          "CityId": "ea3ca775-306c-11e7-9796-0050569b4d9c",
          "CityName": "北京",
          "IsSaling": 1,
          "RegionId": "",
          "RegionName": "中国大陆",
          "SiteName": "北京8"
        }
      ],
      "Message": "Success."
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150

    # 2.DescribeAvailableDBConfig

    Action:DescribeAvailableDBConfig

    描述: 获取某个站点支持的 Redis 产品类型以及规格

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: GET

    请求参数:

    参数名 必选 类型 说明
    RegionId 是 string 站点编号

    请求示例:

    def get_redis_config():
        """
        获取某个站点支持的Redis产品类型以及规格
        """
        action = "DescribeAvailableDBConfig"
        method = "GET"
        param = {
            "RegionId": "CN_Hongkong_A"
        }
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param)
        res = requests.get(url)
        result = json.loads(res.content)
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

    返回参数:

    参数名 类型 说明
    Code string 状态码
    Data DataObj 可购买的 redis 产品类型以及规格数据对象
    Message string 返回调用接口状态信息和 code 相对应,比如:Success, Error
    TaskId string 任务 Id, 暂时不支持根据任务查询任务状态

    # DataObj

    参数名 类型 说明
    ProductName string 产品名称,比如 redis
    Products list of ProductObj 该类产品支持的产品列表
    RegionId string 站点编号

    # ProductObj

    参数名 类型 说明
    Architectures list of ArchitectureObj 产品支持的架构列表
    Version string 产品支持的版本

    # ArchitectureObj

    参数名 类型 说明
    ArchitectureName string 架构名称
    ArchitectureType int 架构类型:
    1-主从版
    2-集群版
    3-经济型主从版
    ComputeRoles list of ComputeRoleObj 支持的计算类型,不同的计算类型支持不同规格,并支持添加不同类型的硬盘
    EnginesType string 引擎类型
    NetworkLinks list of NetworkLinkObj 此架构支持的链路类型
    SubProductName string 子产品名称,比如:Redis 经济型主从、Redis 主从版、Redis 集群版

    # ComputeRoleObj

    参数名 类型 说明
    ComputeName string 计算类型名称, 比如:通用型
    ComputeType int 支持的计算类型(目前仅支持通用型计算类型):
    0-通用型
    Standards StandardObj 该类型支持的规格

    # StandardObj

    参数名 类型 说明
    AttachDisk list of AttachDiskObj 该类型规格能够添加的磁盘类型列表
    CpuRam list of CpuRamObj 支持的规格列表

    # AttachDiskObj

    参数名 类型 说明
    BasicIops string 基础的磁盘的 iops
    DiskMax int 单次支持扩容到最大磁盘容量为 2000
    DiskMaxExpand string 磁盘最大可扩容大小
    DiskMin string 磁盘容量支持的最小值,起步为 100
    DiskName string 磁盘类型名称,包含 SSD 和性能型
    SSD:SSD 磁盘,磁盘 IOPS 默认为 5000,可购买 IOPS 性能包
    性能型:普通 SSD 盘,磁盘 IOPS 限定在 3000
    DiskStep string 磁盘扩容步长,步长大小=100
    DiskUnit string 磁盘容量单位:GB
    DiskValue string 磁盘类型,用于创建服务实例指定磁盘类型 (创建服务时候使用)

    # CpuRamObj

    参数名 类型 说明
    CPU int 核心数量,单位:个
    Name string 规格名称
    PaasGoodsId int 具体的产品编号,根据产品编号确定购买哪一种规格
    RAM int 内存大小,单位:GB

    # NetworkLinkObj

    参数名 类型 说明
    DescDetail string 链路类型描述
    LinkType string 链路类型“英文”
    Name string 链路类型“中文”

    返回示例:

    {
      "Code": "Success",
      "Data": {
        "ProductName": "redis",
        "Products": [
          {
            "Architectures": [
              {
                "ArchitectureName": "经济型主从",
                "ComputeRoles": [
                  {
                    "ComputeName": "通用型",
                    "Standards": {
                      "AttachDisk": [
                        {
                          "BasicIops": "",
                          "DiskMax": 2000,
                          "DiskMaxExpand": 2000,
                          "DiskMin": 100,
                          "DiskName": "SSD",
                          "DiskStep": 100,
                          "DiskUnit": "G",
                          "DiskValue": "ssd_disk"
                        }
                      ],
                      "CpuRam": [
                        {
                          "CPU": 0,
                          "Name": "1G",
                          "PaasGoodsId": 12188,
                          "RAM": 1
                        }
                      ]
                    }
                  }
                ],
                "EnginesType": [],
                "NetworkLinks": [
                  {
                    "DescDetail": "默认链路:服务实例占用VDC私有网络IP地址,适用于对延迟敏感类型的应用。",
                    "LinkType": "default_link",
                    "Name": "默认链路"
                  }
                ],
                "SubProductName": "Redis 经济型主从"
              }
            ],
            "Version": "2.8"
          }
        ],
        "RegionId": "*******"
      },
      "Message": "success",
      "TaskId": ""
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55

    # 3.CreateDBInstance

    Action:CreateDBInstance

    描述: 创建 Redis 云数据库实例

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: POST

    请求参数:

    参数名 必选 类型 说明
    RegionId 是 string 站点编号
    VdcId 是 string 数据中心的编号
    BasePipeId 是 string 数据中心的私网编号,创建实例将按这个私网分配 IP
    InstanceName 是 string 实例名称
    PaasGoodsId 是 int 产品的规格编号
    Password 是 string Redis 数据库密码
    TestGroupId 否 int 是否使用测试组计费
    Amount 否 int 购买的数量一次最多购买三个
    ServicePort 否 int Redis 实例端口,默认 9736,取值范围:1024-65535(9100、9121、9122、16379 无效)

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 包含任务编码和实例编码列表
    InstancesUuid list 实例编码
    TaskId string 任务 id

    请求示例:

    def create_redis():
        """
        创建Redis实例
        """
        action = "CreateDBInstance"
        method = "POST"
        param = {}
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param=param)
        body = {
            "RegionId": "********",
            "VdcId": "*******",
            "BasePipeId": "*******",
            "InstanceName": "*******",
            "PaasGoodsId": "*******",
            "ServicePort": 9736,
            "Password": "*******",
        }
    
        res = requests.post(url, json=body)
        result = json.loads(res.content)
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21

    返回示例:

    {
      "Message": "Success.",
      "Code": "Success",
      "Data": {
        "InstancesUuid": ["5d74bb81-0473-464d-b15b-0ae418619248"]
      },
      "TaskId": "****************"
    }
    
    1
    2
    3
    4
    5
    6
    7
    8

    # 4.DescribeDBInstances

    Action:DescribeDBInstances

    描述: 获取 Redis 实例列表(支持常见字段过滤:实例编号、实例名称、实例 IP)

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: GET

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 否 string 要过滤的实例编号
    InstanceName 否 string 要过滤的实例名称
    IP 否 string 要过滤的实例 IP

    返回参数:

    参数名 类型 说明
    RelationService dict 相关联的服务实例
    CloneServices list 克隆的临时实例列表
    AppName string 数据中心名称
    IP string 数据库的连接的 IP
    Port int 连接的端口
    Ram int 内存 单位 M
    RegionId string 站点编号
    VdcId string 数据中心的编号
    MasterInfo dict 从属集群,只读实例会有值(Redis 目前不支持只读实例)
    LinkTypeStr string 链路类型名称
    RoGroups list 只读实例列表(Redis 目前不支持只读实例)
    SubProductKey string 子产品的英文名字
    SubProductName string 子产品的名字
    Version string 服务版本
    LinkType string 链路类型:英文
    Status string 实例状态
    StatusStr string 状态对应的中文
    InstanceUuid string 实例编号
    InstanceName string 实例名称
    CreatedTime string 实例创建时间
    ResourceId string 账单 ID,查询账单时的唯一标识
    ProjectName string 项目名称

    请求示例:

    def get_redis_instances_list():
        """
        获取Redis实例列表(支持常见字段过滤、instance_uuid/instance_name/ip)
        """
        action = "DescribeDBInstances"
        method = "GET"
        param = {
            "IP": "66.66"  # 根据ip查询
        }
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param)
        res = requests.get(url)
        result = json.loads(res.content)
        print(result)
    
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14

    返回示例:

    {
      "Code": "Success",
      "Data": [
        {
          "CloneServices": null,
          "CreatedTime": "2022-10-18 10:19:34",
          "DisplayName": "中国大陆-无锡-可用区A",
          "IP": "*****************",
          "InpaasId": "3cd1dac1-b549-4229-ab0f-2a8ef4ee7f57",
          "InstanceName": "*****************",
          "InstanceUuid": "*****************",
          "LinkType": "default_link",
          "LinkTypeStr": "默认链路",
          "MasterInfo": "",
          "Port": 9736,
          "ProjectName": "默认项目组",
          "Ram": 1024,
          "RegionId": "CN_Wuxi_A",
          "RelationService": null,
          "ResourceId": "*****************",
          "RoGroups": null,
          "Status": "RUNNING",
          "StatusStr": "运行中",
          "SubProductKey": "redis-replication",
          "SubProductName": "Redis 主从版",
          "VdcId": "4b7c78da-6d38-4b90-8bbf-c8a6bf4a405b",
          "VdcName": "无锡A-PAAS",
          "Version": "5.0"
        }
      ],
      "Message": "success"
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32

    # 5.DeleteDBInstance

    Action:DeleteDBInstance

    描述: 删除 Redis 实例

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: POST

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 否 string 实例编号

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 数据
    TaskId string 任务编号

    请求示例:

    def delete_redis(instance_uuid, ):
        """
        删除Redis实例
        :param instance_uuid: 实例编号
        """
        action = "DeleteDBInstance"
        method = "POST"
        param = {}
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param=param)
        body = {
            "InstanceUuid": instance_uuid,
        }
    
        res = requests.post(url, json=body)
        result = json.loads(res.content)
        print(result)
    
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17

    返回示例:

    {
      "Code": "Success",
      "Data": {},
      "Message": "Success.",
      "TaskId": "****************"
    }
    
    1
    2
    3
    4
    5
    6

    # 6.DescribeBackups

    Action:DescribeBackups

    描述: 获取备份集列表

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: GET

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 是 string 实例编号

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 数据
    TaskId string 任务编号

    请求示例:

    def get_redis_backups_list(instance_uuid):
        """
        获取Redis实例备份列表
        """
        action = "DescribeBackups"
        method = "GET"
        param = {
            "InstanceUuid": instance_uuid,  # 实例ID
        }
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param)
        res = requests.get(url)
        result = json.loads(res.content)
        result = json.dumps(result)  # json格式化
        print(result)
    
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    返回示例:

    {
      "Code": "Success",
      "Data": [
        {
          "BackupId": "**************",
          "BackupMode": "manual",
          "BackupSize": 178,
          "BackupType": "full-backup",
          "Desc": "",
          "EndTime": "2020-08-21 18:11:21",
          "InstanceId": "***************",
          "StartTime": "2020-08-21 18:11:04",
          "Status": "finished"
        },
        {
          "BackupId": "***************",
          "BackupMode": "manual",
          "BackupSize": 178,
          "BackupType": "full-backup",
          "Desc": "",
          "EndTime": "2020-08-21 18:01:34",
          "InstanceId": "********************",
          "StartTime": "2020-08-21 18:01:16",
          "Status": "finished"
        }
      ],
      "Message": "success"
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28

    # 7.DownloadBackup

    Action:DownloadBackup

    描述: 获取备份文件信息及备份文件下载地址

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: GET

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 是 string 实例编号
    BackupId 是 string 备份文件的编号

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 数据
    BackupId string 备份编号
    Status string 备份状态
    BackupType string 备份的类型
    StartTime string 备份的开始时间
    EndTime string 备份的结束时间
    ShardId string 集群版分片 id,其他产品为空字符串
    BackupMode string 备份的类型(自动或者手动备份)
    BackupSize string 备份文件大小,单位字节
    Desc string 备份的描述(手动备份可以自定义内容),自动备份为空字符串
    BackupDownloadUrl string 公网下载地址
    BackupIntranetDownloadUrl string 同内网下载地址

    请求示例:

    def get_redis_backups_download(instance_uuid,backup_id):
        """
        获取Redis实例备份详情
        """
        action = "DownloadBackup"
        method = "GET"
        param = {
            "InstanceUuid": instance_uuid,  # 实例ID
            "BackupId": backup_id,  # 备份ID
        }
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param)
        res = requests.get(url)
        result = json.loads(res.content)
        result = json.dumps(result)  # json格式化
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    返回示例:

    {
      "Code": "Success",
      "Data": {
        "BackupDownloadUrl": "https:/***************************",
        "BackupId": "**********",
        "BackupIntranetDownloadUrl": "http://***************",
        "BackupMode": "manual",
        "BackupSize": 176,
        "BackupType": "full-backup",
        "Desc": "",
        "EndTime": "2020-08-21 15:59:02",
        "InstanceId": "*************",
        "ShardId": "*************",
        "StartTime": "2020-08-21 15:58:45",
        "Status": "finished"
      },
      "Message": "success",
      "TaskId": ""
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19

    # 8.CreateBackup

    Action:CreateBackup

    描述: 创建备份(物理全备份,RDB 格式文件)

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: POST

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 是 string 实例编号
    Desc 否 string 备份的描述,不传默认为空字符串

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 数据
    TaskId string 任务编号

    请求示例:

    def create_redis_backup(instance_uuid):
        """
        创建Redis备份
        :param instance_uuid: 实例编号
        """
        action = "CreateBackup"
        method = "POST"
        param = {}
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param=param)
        body = {
            "InstanceUuid": instance_uuid,
            "Desc": "测试Redis备份"
        }
        res = requests.post(url, json=body)
        result = json.loads(res.content)
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16

    返回示例:

    {
      "Code": "Success",
      "Data": {},
      "Message": "succes",
      "TaskId": "*************"
    }
    
    1
    2
    3
    4
    5
    6

    # 9.DeleteBackup

    Action:DeleteBackup

    描述: 删除备份文件

    请求地址: cdsapi.capitalonline.net/redis

    请求方法: POST

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 是 string 实例编号
    BackupId 是 string 删除的备份文件编号

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    Data dict 数据
    TaskId string 任务编号

    请求示例:

    def delete_redis_backup(instance_uuid, backup_id):
        """
        删除Redis实例备份
        :param instance_uuid: 实例编号
        :param backup_id: 备份编号
        """
        action = "DeleteBackup"
        method = "POST"
        param = {}
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param=param)
        body = {
            "InstanceUuid": instance_uuid,
            "BackupId": backup_id,
        }
        res = requests.post(url, json=body)
        result = json.loads(res.content)
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17

    返回示例:

    {
      "Code": "Success",
      "Data": {},
      "Message": "success",
      "TaskId": "*************"
    }
    
    1
    2
    3
    4
    5
    6

    # 10.DescribeRedisConfig

    Action:DescribeRedisConfig

    描述: 根据传入的参数返回 redis 对应的参数

    请求地址: cdsapi.capitalonline.net/redis

    请求方式: GET

    请求参数:

    参数名 必选 类型 说明
    InstanceUuid 是 string 需要查询的实例 ID
    Parameter 否 string 查询指定的参数配置,默认为"*"

    返回参数:

    参数名 类型 说明
    Message string 信息描述
    Code string 状态码
    DataObj dict 返回的数据

    # DataObj

    参数名 类型 说明
    Configs dict Redis 配置信息
    InstanceUuid string 实例 ID

    请求实例:

    def get_redis_configs():
        """
        获取Redis实例config get  参数  (需要传入的字段 InstanceUuid  )
    
        """
        action = "DescribeRedisConfig"
        method = "GET"
        param = {
            "InstanceUuid": "80f45e20-7703-11ef-a0d6-161cc7ab92c3"  # 传入实例
            "Parameter": "*"   #默认传入"*"   客户传入指定的参数 如"maxmemory"
        }
        url = get_signature(action, AK, AccessKeySecret, method, REDIS_URL, param)
        res = requests.get(url)
        result = json.loads(res.content)
        print(result)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    返回示例:

    {
        "Code": "Success",
        "Message": "success",
        "Data": {
            "Configs": {
                "dbfilename": "dump.rdb",
                "requirepass": "be05977add575832dc52655d4ad5c42e",
                "masterauth": "be05977add575832dc52655d4ad5c42e",
                "cluster-announce-ip": "",
                "unixsocket": "",
                "logfile": "/data/redis/log/redis-server.log",
                "pidfile": "/var/run/redis_6379.pid",
                "slave-announce-ip": "",
                "maxmemory": "1000000000",
                "proto-max-bulk-len": "536870912",
                "client-query-buffer-limit": "1073741824",
                "maxmemory-samples": "5",
                "lfu-log-factor": "10",
                "lfu-decay-time": "1",
                "timeout": "7200",
                "active-defrag-threshold-lower": "10",
                "active-defrag-threshold-upper": "100",
                "active-defrag-ignore-bytes": "104857600",
                "active-defrag-cycle-min": "25",
                "active-defrag-cycle-max": "75",
                "auto-aof-rewrite-percentage": "100",
                "auto-aof-rewrite-min-size": "67108864",
                "hash-max-ziplist-entries": "512",
                "hash-max-ziplist-value": "64",
                "list-max-ziplist-size": "-2",
                "list-compress-depth": "0",
                "set-max-intset-entries": "512",
                "zset-max-ziplist-entries": "128",
                "zset-max-ziplist-value": "64",
                "hll-sparse-max-bytes": "3000",
                "lua-time-limit": "5000",
                "slowlog-log-slower-than": "10000",
                "latency-monitor-threshold": "0",
                "slowlog-max-len": "128",
                "port": "6379",
                "cluster-announce-port": "0",
                "cluster-announce-bus-port": "0",
                "tcp-backlog": "10000",
                "databases": "255",
                "repl-ping-slave-period": "10",
                "repl-timeout": "60",
                "repl-backlog-size": "10485760",
                "repl-backlog-ttl": "3600",
                "maxclients": "10000",
                "watchdog-period": "0",
                "slave-priority": "5",
                "slave-announce-port": "0",
                "min-slaves-to-write": "0",
                "min-slaves-max-lag": "10",
                "hz": "10",
                "cluster-node-timeout": "10000",
                "cluster-migration-barrier": "1",
                "cluster-slave-validity-factor": "10",
                "repl-diskless-sync-delay": "5",
                "tcp-keepalive": "300",
                "cluster-require-full-coverage": "yes",
                "cluster-slave-no-failover": "no",
                "no-appendfsync-on-rewrite": "no",
                "slave-serve-stale-data": "yes",
                "slave-read-only": "yes",
                "stop-writes-on-bgsave-error": "yes",
                "daemonize": "no",
                "rdbcompression": "yes",
                "rdbchecksum": "yes",
                "activerehashing": "yes",
                "activedefrag": "no",
                "protected-mode": "yes",
                "repl-disable-tcp-nodelay": "no",
                "repl-diskless-sync": "no",
                "aof-rewrite-incremental-fsync": "yes",
                "aof-load-truncated": "yes",
                "aof-use-rdb-preamble": "yes",
                "lazyfree-lazy-eviction": "no",
                "lazyfree-lazy-expire": "no",
                "lazyfree-lazy-server-del": "no",
                "slave-lazy-flush": "no",
                "maxmemory-policy": "volatile-lru",
                "loglevel": "notice",
                "supervised": "no",
                "appendfsync": "everysec",
                "syslog-facility": "local0",
                "appendonly": "no",
                "dir": "/data/redis/data",
                "save": "",
                "client-output-buffer-limit": "normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60",
                "unixsocketperm": "0",
                "slaveof": "",
                "notify-keyspace-events": "",
                "bind": "0.0.0.0"
            },
            "InstanceUuid": "80f45e20-7703-11ef-a0d6-161cc7ab92c3"
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    MySQL
    对象存储

    ← MySQL 对象存储→