云主机API

MOS云主机 (MCS, Meituan Compute Service) 提供EC2兼容的API访问接口,以方便用户自动化管理云主机。 为了访问MOS开放接口,MOS为每个用户分配访问的令牌和密码(ACCESS KEY ID和SECRET),每个访问请求都需要携带ACCESS KEY ID以及SECRET对请求数据的数字签名。用户可以在MOS管理界面的”API页面” 查询访问API的入口URL, ACCESS KEY ID以及SECRET。

API概述

每个MOS区域(Region)有一个独立的API接口。

接口支持GET和POST两种方式。参数以key-value形式通过x-form-url-encoded格式编码提交。例如:

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeTemplates&
    AWSAccessKeyId=4ba303cc17454cc7904e044db2a3c912&
    SignatureVersion=2&
    Timestamp=2013-07-20T15%3A02%3A17.000Z&
    SignatureMethod=HmacSHA256&
    Signature=q90E9%2BNtkVb9rJUPQJy75Ec%2F7j6HRCFfaSp2OhWYwuc%3D

请求参数

一般,每个接口请求都包含如下参数

参数名称 可选 说明 举例
Action 必选 API请求的类型名称。支持的Action及相关参数参见下文 “Action列表” “DescribeInstances”
AWSAccessKeyId 必选 访问API请求的ACCESS KEY ID “4ba303cc17454cc7904e044db2a3c912”
Timestamp 必选 该请求的时间戳,iso8601格式:”YYYY-MM-DDTHH:MM:SS.MMMZ” “2013-07-20T02:41:04.000Z”
SignatureVersion 必选 数字签名算法版本,目前支持AWS数字签名2.0版本,该值必须为2 “2”
SignatureMethod 必选 数字签名的Hash算法,可能的值为”HmacSHA256”和”HmacSHA1”, 分别对应SHA256和SHA1算法 “HmacSHA256”
Signature 必选 请求内容的数字签名,具体签名生成算法见下文 “m4XAVozDdWIduO8DkOj7fECeNZsUbX41Bv1atOSqMwA=”
Format 可选 返回内容的编码格式,可选值为xml和json,如果未指定, 则默认为xml。如果返回为xml,则返回Content-Type为 application/xml,如果是json格式,则为application/json “json”

数字签名生成方法

MOS开放API需要签名,遵循”AWS API 2.0签名规范“。 需要将请求内容按如下方法拼接,并按照指定Hash算法获得base64编码的签名字符串:

  1. 全部字母大写的HTTP请求方法(GET或POST),以换行(\n)结束。例如:

    POST\n
  2. 全部字母为小写的API服务主机名,以换行(\n)结束。如果请求端口号为非默认端口(http非80端口,https非443),则需要加上端口,以冒号和host分隔。例如:

    mosapi.meituan.com\n
  3. 请求绝对路径,以换行(\n)结束。如果路径为空字符串,则为根路径”/”。例如:

    /mcs/v1\n
  4. 所有请求参数按照请求参数名称的字典顺序排序,并以x-www-form-urlencoded编码拼接在一起。例如:

    AWSAccessKeyId=4ba303cc17454cc7904e044db2a3c912&Action=DescribeTemplates&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2013-07-20T15%3A28%3A04.000Z

完整的拼接的签名内容为:

POST
mosapi.meituan.com
/mcs/v1
AWSAccessKeyId=4ba303cc17454cc7904e044db2a3c912&Action=DescribeTemplates&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2013-07-20T15%3A28%3A04.000Z
  1. 最后,以SECRET为Key对上述字符串以HmacSHA256 算法进行Hash后,进行base64编码后获得签名,结果为:

    EFVL9+vcx6tG9DCp04Ic+itrdCD/uZEhisS9amSSbig=

返回格式

如果API请求成功,服务器返回HTTP 200,body包含返回数据。返回数据根据请求的Format参数进行格式化。

如果API请求失败,服务器返回HTTP 4xx,body包含错误信息,消息格式示例如下:

xml格式错误响应

<?xml version="1.0" encoding="utf-8"?>
<ErrorResponse>
    <Error>
        <message>Not enough balance</message>
        <code>406</code>
    </Error>
</ErrorResponse>

json格式错误响应

{"ErrorResponse":
    {"Error":
        {"message": "Not enough balance",
         "code": 406
        }
    }
}

其中,code为错误代码,message为错误消息。code和返回消息的HTTP错误代码相同。

常用信息

常用镜像模板 ID

以下表格为常用的模板 ID,完整镜像模板(含自定义模板)列表可使用模板API获取

模板 版本 ID
Ubuntu 14.04 64位 4817e585-0685-4e95-a29d-905196e1bbe5
CentOS 6.5 64位 81e9b166-c908-4f57-b0ec-2e96de258e53
CentOS 7.0 64位 b7d447b9-aa5b-40d0-a1d9-b84b3c7bdf30
Debian 7.6 64位 8fa9857f-f553-4940-a705-aa48624a6d46
Windows Server 2012R2 64位 数据中心版 f23bd6c5-97e7-4f5d-a3ed-520e2f6e55cb

常用套餐类型 ID

以下表格为常用套餐类型,获取全部套餐类型可使用套餐类型API获取

套餐类型 ID 说明
C1_M1 70a5a133-25f3-4237-a7a2-e2c1265203fe 1核1G,机械硬盘
ssd::C1_M1 1bfe1bc6-a005-4c9d-89fc-a35e04278f3b 1核1G,SSD硬盘
C2_M4 781f1634-da01-4762-9702-af82f3fa3911 2核4G,机械硬盘
ssd::C2_M4 01e190f2-d21a-4dde-99d5-9e2232f0cff5 2核4G,SSD硬盘
C4_M8 117f282d-578f-45f3-adfb-afd5a8ef37d0 4核8G,机械硬盘
ssd::C4_M8 646e3ec4-8a26-432f-b7b6-ea16b13aea65 4核8G,SSD硬盘
C8_M16 6f6c688b-8f93-4697-a1c2-2758bbc9d8f8 8核16G, 机械 硬盘
ssd::C8_M16 2f4dc47b-c472-4b05-b50b-d53c042df5ab 8核16G,SSD硬盘

模板API

DescribeTemplates

列出所有用户可以使用的虚拟机模板,在创建虚拟机,更改虚拟机系统磁盘时,需要相关信息。

请求参数:

输出字段:

字段名 类型 说明
templateId string 模板ID
templateName string 模板名称
size int 模板Image的字节大小(Bytes)
checksum string 模板Image的MD5 checksum
status string 模板状态

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeTemplates&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeTemplatesResponse>
    <TemplateSet>
        <Template>
            <status>active</status>
            <checksum>952a921243eecf2f457b82051e880558</checksum>
            <templateId>019c6db6-55fa-443d-ac0c-182e3379d175</templateId>
            <size>187367424</size>
            <templateName>turnkey-core-12.0-squeeze-x86.qcow2</templateName>
        </Template>
    </TemplateSet>
</DescribeTemplatesResponse>

json响应

{"DescribeTemplatesResponse":
    {"TemplateSet":
        {"Template": [
            {"status": "active",
             "checksum": "952a921243eecf2f457b82051e880558",
             "templateName": "turnkey-core-12.0-squeeze-x86.qcow2",
             "templateId": "019c6db6-55fa-443d-ac0c-182e3379d175",
             "size": 187367424
            }
         ]
        }
    }
}

CreateTemplate

将指定虚拟机的系统盘创建为虚拟机模板。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 创建虚拟机模板使用的虚拟机ID或名称
Name string 必须 创建的虚拟机模板的名称
Notes string 可选 虚拟机模板注释,可用来注明该模板用途

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Name=test_template&
    Notes=for%20test&
    Action=CreateTemplate&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateTemplateResponse>
    <return>True</return>
</CreateTemplateResponse>

json响应

{"CreateTemplateResponse":
    {"return": "True"
    }
}

DeleteTemplate

删除指定的虚拟机模板。

请求参数:

参数名 类型 可选 说明
TemplateId string 必须 删除的虚拟机模板的ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    TemplateId=a42ec028-e0b3-491e-8069-31d14afea742&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteTemplateResponse>
    <return>True</return>
</DeleteTemplateResponse>

json响应

{"DeleteTemplateResponse":
    {"return": "True"
    }
}

套餐类型API

DescribeInstanceTypes

列出所有用户可以使用的虚拟机套餐类型,在创建虚拟机,更改虚拟机类型时,需要相关信息。

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段名为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回InstanceTypeSet,包含如下子段:

字段名 类型 说明
InstanceType complextype 虚拟机类型定义
Total integer 返回符合条件的虚拟机类型总量
Limit integer 返回虚拟机类型的数量
Offset integer 返回虚拟机类型的偏移量

InstanceType包含如下子段:

字段名 类型 说明
instanceTypeId string 虚拟机类型ID
instanceType string 虚拟机类型名称
cpu integer 该类型虚拟机CPU核数,单位为个
memory integer 该类型虚拟机内存大小,单位为MB
volume integer 该类型虚拟机虚拟存储大小,单位为MB
internalBandwidth integer 该类型虚拟机内网接入带宽,单位为Mbps
externalBandwidth integer 该类型虚拟机外网接入带宽,单位为Mbps

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Action=DescribeInstanceTypes&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeInstanceTypesResponse>
    <InstanceTypeSet>
        <Total>7</Total>
        <Limit>1</Limit>
        <InstanceType>
            <instanceTypeId>8e845438-2f6d-4c87-9216-88da6692dc2b</instanceTypeId>
            <internalBandwidth>200</internalBandwidth>
            <externalBandwidth>2</externalBandwidth>
            <cpu>1</cpu>
            <volume>1024</volume>
            <memory>128</memory>
            <instanceType>small_net_2</instanceType>
        </InstanceType>
    </InstanceTypeSet>
</DescribeInstanceTypesResponse>

json响应

{"DescribeInstanceTypesResponse":
    {"InstanceTypeSet":
        {"Total": 7,
         "Limit": 1,
         "InstanceType": [
            {"instanceTypeId": "8e845438-2f6d-4c87-9216-88da6692dc2b",
             "internalBandwidth": 200,
             "externalBandwidth": 2,
             "instanceType": "small_net_2",
             "volume": 1024,
             "memory": 128,
             "cpu": 1,
            }
         ]
        }
    }
}

帐户API

GetBalance

获得用户的当前帐户余额

请求参数:

返回数据:

字段名 类型 说明
balance decimal(10,2) 帐户余额
timestamp datetime 最后一次帐户余额发生变化的时间,iso8601格式。 如果该帐户从未发生过交易,则余额为0,无timestamp字段

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=GetBalance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<GetBalanceResponse>
    <timestamp>2013-07-19T15:52:02Z</timestamp>
    <balance>16.66</balance>
</GetBalanceResponse>

json响应

{"GetBalanceResponse":
    {"timestamp": "2013-07-19T15:52:02Z",
     "balance": 16.66
    }
}

SSH密钥API

DescribeKeyPairs

列出用户所有的SSH Key pairs

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。可能的值为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回KeyPairSet包含如下字段:

字段名 类型 说明
KeyPair complexType 返回的SSH Key信息
Total integer 满足查询条件的SSH Key个数
Limit integer 实际返回的SSH Key个数
Offset integer 返回的偏移量

KeyPair包含的字段:

字段名 类型 说明
keyId string SSH Key的ID
keyName string SSH Key的名称
keyScheme string SSH Key的加密方式
keyNotes string SSH Key的备注信息
keyFingerprint string SSH 公钥(public key)的指纹(fingerprint)

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeKeyPairs&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeKeyPairsResponse>
    <KeyPairSet>
        <KeyPair>
            <keyId>cb97eb8b-de94-4148-849f-2b931cfce97a</keyId>
            <keyName>testkey</keyName>
            <keyScheme>RSA</keyScheme>
            <keyFingerprint>0a:43:d9:7b:17:a1:24:26:9a:0e:ce:dc:f4:0a:03:44</keyFingerprint>
            <keyNotes>for test</keyNotes>
        </KeyPair>
        <KeyPair>
            <keyId>b7bfd341-e6d1-4971-8c45-d3ed6f97a846</keyId>
            <keyName>mackey</keyName>
            <keyScheme>DSA</keyScheme>
            <keyFingerprint>18:0e:d1:45:82:54:78:be:60:f1:a6:8f:cf:64:88:1e</keyFingerprint>
            <keyNotes>for test</keyNotes>
        </KeyPair>
    </KeyPairSet>
</DescribeKeyPairsResponse>

json响应

{"DescribeKeyPairsResponse":
    {"KeyPairSet":
        {"KeyPair": [
            {"keyId": "cb97eb8b-de94-4148-849f-2b931cfce97a",
             "keyName": "testkey",
             "keyScheme": "RSA",
             "keyFingerprint": "0a:43:d9:7b:17:a1:24:26:9a:0e:ce:dc:f4:0a:03:44",
             "keyNotes": "for test"
            },
            {"keyId": "b7bfd341-e6d1-4971-8c45-d3ed6f97a846",
             "keyName": "mackey",
             "keyScheme": "DSA",
             "keyFingerprint": "18:0e:d1:45:82:54:78:be:60:f1:a6:8f:cf:64:88:1e",
             "keyNotes": "for test"
            }
         ]
        }
    }
}

CreateKeyPair

创建新的密钥对,返回私钥信息。请妥善保存返回私钥信息,云平台并不保存私钥信息,丢失后不能找回。

请求参数:

参数名 类型 可选 说明
keyName string 必须 SSH Key名称
keyScheme string 可选 SSH Key加密方式, 支持RSA 或者 DSA, 默认为RSA
KeyNotes string 可选 SSH Key的备注信息

返回数据:

返回KeyPair包含的字段:

字段名 类型 说明
keyMaterial string SSH Key的私钥

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    KeyName=newkey&
    Action=CreateKeyPair&
    keyScheme=RSA&
    keyNotes=testkey&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateKeyPairResponse>
    <KeyPair>
        <keyMaterial>-----BEGIN RSA PRIVATE KEY-----\nMIIE....doME60a34g==\n-----END RSA PRIVATE KEY-----</keyMaterial>
    </KeyPair>
</CreateKeyPairResponse>

json响应

{"CreateKeyPairResponse":
    {"KeyPair":
        {"keyMaterial": "-----BEGIN RSA PRIVATE KEY-----\nMIIE....doME60a34g==\n-----END RSA PRIVATE KEY-----",
        }
    }
}

ImportKeyPair

导入一个已有的密钥对的公钥。用户自己使用ssh-keygen等工具生成密钥对后,将公钥信息导入。支持RSA或DSA加密的密钥对。

请求参数:

参数名 类型 可选 说明
keyName string 必须 SSH Key名称
PublicKeyMaterial string 必须 SSH Key的public key
KeyNotes string 可选 SSH Key的备注信息

返回数据:

返回KeyPair包含的字段:

字段名 类型 说明
keyId string SSH Key的ID
keyScheme string SSH Key加密方式, RSA 或者 DSA
keyName string SSH Key的名称
keyFingerprint string SSH 公钥(public key)的指纹(fingerprint)
KeyNotes string SSH Key的备注信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    KeyName=newkey&
    Action=ImportKeyPair&
    PublicKeyMaterial=ssh-rsa+AAAAB3Nza...OVL%2B2Y7R+qj%40dog%0A&
    keyNotes=testkey&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ImportKeyPairResponse>
    <KeyPair>
        <keyId>0f4697a4-6439-4ae7-b6fe-be29ace2303c</keyId>
        <keyName>newkey</keyName>
        <keyScheme>RSA</keyScheme>
        <keyFingerprint>0a:43:d9:7b:17:a1:24:26:9a:0e:ce:dc:f4:0a:03:44</keyFingerprint>
        <keyNotes>testkey</keyNotes>
    </KeyPair>
</ImportKeyPairResponse>

json响应

{"ImportKeyPairResponse":
    {"KeyPair":
        {"keyId": "0f4697a4-6439-4ae7-b6fe-be29ace2303c",
         "keyName": "newkey",
         "keyScheme": "RSA",
         "keyFingerprint": "0a:43:d9:7b:17:a1:24:26:9a:0e:ce:dc:f4:0a:03:44",
         "keyNotes": "testkey"
        }
    }
}

DeleteKeyPair

删除一个SSH Key

请求参数:

参数名 类型 可选 说明
KeyName string 必须 SSH Key名称

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    KeyName=newkey&
    Action=DeleteKeyPair&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteKeyPairResponse>
    <return>True</return>
</DeleteKeyPairResponse>

json响应

{"DeleteKeyPairResponse":
    {"return": "True"
    }
}

虚拟机API

DescribeInstances

列出所有或指定的用户虚拟机实例。

请求参数:

参数名 类型 可选 说明
InstanceId.n string 可选 指定虚拟机的ID,n从1开始
InstanceName.n string 可选 指定虚拟机的Name,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name, status
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始
group string 可选 查询对应业务组下面的机器列表

返回数据:

返回InstanceSet包含如下字段:

字段名 类型 说明
Instance complexType 返回的虚拟机信息
Total integer 满足查询条件的虚拟机个数
Limit integer 实际返回的虚拟机个数
Offset integer 虚拟机的偏移量

Instance包含的字段:

字段名 类型 说明
instanceId string 虚拟机的ID
instanceName string 虚拟机的名称
instanceType string 虚拟机的类型
instanceTypeId string 虚拟机类型的ID
status string 虚拟机的状态,可能值有running/ready/suspend等
cpu integer 虚拟机的CPU核数
memory integer 虚拟机的内存大小,单位为MB
volume integer 虚拟机的总磁盘大小,单位为MB
ipAddresses string 虚拟机的IP地址列表
availabilityZoneId String 虚拟机所在AvailabilityZone的ID
secGroupId String 虚拟机的安全组ID
secGroupName string 虚拟机的安全组名称

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Offset=2&
    Action=DescribeInstances&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeInstancesResponse>
    <InstanceSet>
        <Instance>
            <status>ready</status>
            <instanceId>027ff1d8-e3a0-4e2e-a1e1-03d6ee03c353</instanceId>
            <instanceType>small</instanceType>
            <volume>59</volume>
            <memory>128</memory>
            <instanceName>testtest</instanceName>
            <cpu>1</cpu>
            <ipAddresses>10.168.44.230</ipAddresses>
            <availabilityZoneId>e47896ec-eb1a-460d-a1f6-a0685edaddfe</availabilityZoneId>
            <secGroupId>0fccde09-74af-4504-9c89-52016510e9d7</groupId>
            <secGroupName>secgroup1</groupName>
        </Instance>
        <Total>6</Total>
        <Limit>1</Limit>
        <Offset>2</Offset>
    </InstanceSet>
</DescribeInstancesResponse>

json响应

{"DescribeInstancesResponse":
    {"InstanceSet":
        {"Instance": [
            {"status": "ready",
             "instanceId": "027ff1d8-e3a0-4e2e-a1e1-03d6ee03c353",
             "cpu": 1,
             "volume": 59,
             "memory": 128,
             "instanceName": "testtest",
             "instanceType": "small",
             "ipAddresses": "10.168.44.230",
             "availabilityZoneId": "e47896ec-eb1a-460d-a1f6-a0685edaddfe",
             "secGroupId": "0fccde09-74af-4504-9c89-52016510e9d7",
             "secGroupName": "secgroup1",
            }
         ],
         "Total": 6,
         "Limit": 1,
         "Offset": 2
        }
    }
}

DescribeInstanceStatus

获得指定虚拟机实例的状态。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定虚拟机ID

返回数据:

返回InstanceStatus,包含status字段。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=testtest&
    Action=DescribeInstanceStatus&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeInstanceStatusResponse>
    <InstanceStatus>
        <status>ready</status>
    </InstanceStatus>
</DescribeInstanceStatusResponse>

json响应

{"DescribeInstanceStatusResponse":
    {"InstanceStatus":
        {"status": "ready"}
    }
}

DescribeInstanceVolumes

列出指定虚拟机的所有虚拟磁盘的信息。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定虚拟机ID

返回数据:

返回数据集InstanceVolumeSet,包含如下字段:

字段名 类型 说明
InstanceVolume complextype 一个虚拟机磁盘的信息

InstanceVolume包含如下字段信息:

字段名 类型 说明
instanceId string 虚拟机ID
instanceName string 虚拟机名称
volumeId string 虚拟磁盘ID
volumeName string 虚拟磁盘名称
volumeSize integer 磁盘大小,单位为MB
cacheMode string 磁盘的缓存模式,可能值为none, writeback或writethrough, 缺省为none
driver string 磁盘的驱动,可能值为virtio, ide和scsi,缺省为virtio
index integer 磁盘挂载在虚拟机上的序号,从0开始

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=testtest&
    Action=DescribeInstanceVolumes&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeInstanceVolumesResponse>
    <InstanceVolumeSet>
        <InstanceVolume>
            <index>1</index>
            <instanceId>027ff1d8-e3a0-4e2e-a1e1-03d6ee03c353</instanceId>
            <volumeName>vdisk_testtest_1371493324.491348</volumeName>
            <driver>virtio</driver>
            <volumeId>0fccde09-74af-4504-9c89-52016510e9d7</volumeId>
            <cacheMode>none</cacheMode>
            <volumeSize>20</volumeSize>
            <instanceName>testtest</instanceName>
        </InstanceVolume>
        <InstanceVolume>...</InstanceVolume>
    </InstanceVolumeSet>
</DescribeInstanceVolumesResponse>

json响应

{"DescribeInstanceVolumesResponse":
    {"InstanceVolumeSet":
        {"InstanceVolume": [
            {"index": 1,
             "instanceId": "027ff1d8-e3a0-4e2e-a1e1-03d6ee03c353",
             "volumeName": "vdisk_testtest_1371493324.491348",
             "driver": "virtio",
             "volumeId": "0fccde09-74af-4504-9c89-52016510e9d7",
             "cacheMode": "none",
             "volumeSize": 20,
             "instanceName": "testtest"
            },
            {...}
         ]
        }
    }
}

DescribeInstanceNetworkInterfaces

列出指定虚拟机实例的所有虚拟网络接口的信息。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定虚拟机ID

返回数据:

返回数据集InstanceNetworkInterfaceSet,包含如下字段:

字段名 类型 说明
InstanceNetworkInterface complextype 一个虚拟机网络接口的信息

InstanceNetworkInterface包含如下信息:

字段名 类型 说明
instanceId string 虚拟机ID
instanceName string 虚拟机名称
networkId string 网络接口接入的虚拟机网络ID
networkName string 网络接口接入的虚拟网络名称
ipAddress string 网络接口的IP地址
macAddress string 网络接口的硬件地址
bandwidth integer 网络接口带宽,单位为Mbps
driver string 驱动,可能值有virtio, e1000,缺省为virtio
index integer 网络接口在虚拟机上的序号

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=testtest&
    Action=DescribeInstanceNetworkInterfaces&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeInstanceNetworkInterfacesResponse>
    <InstanceNetworkInterfaceSet>
        <InstanceNetworkInterface>
            <networkId>40480c6f-2c7e-4ba8-b040-92a64a948c90</networkId>
            <index>0</index>
            <instanceId>027ff1d8-e3a0-4e2e-a1e1-03d6ee03c353</instanceId>
            <instanceName>testtest</instanceName>
            <driver>virtio</driver>
            <bandwidth>10</bandwidth>
            <networkName>public</networkName>
            <ipAddress>10.168.44.229</ipAddress>
            <macAddress>00:22:34:84:24:60</macAddress>
        </InstanceNetworkInterface>
    </InstanceNetworkInterfaceSet>
</DescribeInstanceNetworkInterfacesResponse>

json响应

{"DescribeInstanceNetworkInterfacesResponse":
    {"InstanceNetworkInterfaceSet":
        {"InstanceNetworkInterface": [
            {"networkId": "40480c6f-2c7e-4ba8-b040-92a64a948c90",
             "index": 0,
             "instanceId": "027ff1d8-e3a0-4e2e-a1e1-03d6ee03c353",
             "networkName": "public",
             "driver": "virtio",
             "bandwidth": 10,
             "instanceName": "testtest",
             "ipAddress": "10.168.44.229",
             "macAddress": "00:22:34:84:24:60"
            },
            {...}
         ]
        }
    }
}

GetPasswordData

获得指定虚拟机实例的初始帐户和密码信息。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定虚拟机ID

返回数据:

字段名 类型 说明
timestamp datetime 指示初始帐号密码生成的时间
account string 虚拟机的初始帐号
passwordData string 虚拟机的初始帐号密码数据,如果虚拟机未使用SSH keypair, 则该数据为明文密码,否则,该数据为keypair公钥加密, 需要使用该keypair的对应key文件解密
keypairId string 如果虚拟机使用了keypair,则为该虚拟机使用的keypair的ID;否则无此字段
keypairName string 如果虚拟机使用了keypair,则为该虚拟机使用的keypair的名称;否则无此字段

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=GetPasswordData&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<GetPasswordDataResponse>
    <timestamp>2013-07-22T02:48:56Z</timestamp>
    <account>cirros</account>
    <passwordData>jwFN2C3Ngmgu</passwordData>
</GetPasswordDataResponse>

json响应

{"GetPasswordDataResponse":
    {"timestamp": "2013-07-22T02:48:56Z",
     "account": "cirros",
     "passwordData": "jwFN2C3Ngmgu"
    }
}

GetInstanceContractInfo

获得指定虚拟机实例的合同时间信息。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定虚拟机ID

返回数据:

返回如下字段:

字段名 类型 说明
startedAt datetime 虚拟机租约开始时间
expireAt datetime 虚拟机租约到期时间
extendTo datetime 如果未按期续费,虚拟机过期后保留截止时间

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=GetInstanceContractInfo&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<GetInstanceContractInfoResponse>
    <startedAt>2013-07-22T03:00:00Z</startedAt>
    <extendTo>2013-07-26T03:00:00Z</extendTo>
    <expireAt>2013-07-25T03:00:00Z</expireAt>
</GetInstanceContractInfoResponse>

json响应

{"GetInstanceContractInfoResponse":
    {"startedAt": "2013-07-22T03:00:00Z",
     "extendTo": "2013-07-26T03:00:00Z",
     "expireAt": "2013-07-25T03:00:00Z"
    }
}

StartInstance

启动指定虚拟机实例。虚拟机在ready状态时才能成功启动。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 启动的虚拟机ID或名称

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=StartInstance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StartInstanceResponse>
    <return>True</return>
</StartInstanceResponse>

json响应

{"StartInstanceResponse":
    {"return": "True"
    }
}

StopInstance

停止指定虚拟机实例。只有虚拟机在running状态时才能成功停止虚拟机。如果指定强制停止,则虚拟机进程立即退出,可能会造成虚拟机内部数据丢失。否则,虚拟机将试图软关机,30秒超时后,如果虚拟机实例还未停止,则强制停止。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定的虚拟机ID
Force boolean 可选 是否强制立即停止

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=StopInstance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StopInstanceResponse>
    <return>True</return>
</StopInstanceResponse>

json响应

{"StopInstanceResponse":
    {"return": "True"
    }
}

RebootInstance

重启指定虚拟机实例。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 指定虚拟机ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=RebootInstance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RebootInstanceResponse>
    <return>True</return>
</RebootInstanceResponse>

json响应

{"RebootInstanceResponse":
    {"return": "True"
    }
}

RebuildInstanceRootImage

重置指定虚拟机实例的的系统磁盘镜像。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 需要重置系统盘镜像的InstanceId
ImageId string 可选 指定系统盘的源模板镜像ID,如果不指定该参数, 则使用原来的模板镜像重置系统盘

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=RebuildInstanceRootImage&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RebuildInstanceRootImageResponse>
    <return>True</return>
</RebuildInstanceRootImageResponse>

json响应

{"RebuildInstanceRootImageResponse":
    {"return": "True"
    }
}

CreateInstance

创建虚拟机实例。有两种创建方式,一种指定instance type和root image id,基于该root image创建该instance type的虚拟机;另外一种,指定snapshot id,将该虚拟机快照的状态恢复到一台新建的虚拟机。 注意:该操作涉及帐户扣费,请保证帐户有足够余额,否则将创建失败

请求参数:

参数名 类型 可选 说明
ImageId string 必须 镜像模板ID, 第一种创建方式的必须参数,点击查看常用镜像模板 ID 列表
InstanceType string 必须 创建的虚拟机类型ID或名称, 第一种创建方式的必须参数,点击查看常用套餐类型 ID 列表
SnapshotId string 必须 指定的虚拟机快照ID,第二种创建方式的必须参数
Duration string 可选 创建的虚拟机的时间,格式为数字+H/M,例如1H, 72H或者1M。缺省为1M
InstanceName string 必选 指定创建的虚拟机的名称
KeyName string 可选 指定创建的虚拟机使用的SSH Keypair, 第一种创建方式的可选参数
GroupId string 可选 指定创建的虚拟机使用的安全组Security group, 第一种创建方式的可选参数
ExtraExtDisksize integer 可选 指定创建的虚拟机使用的额外磁盘,单位为GB,不足10GB的部分按10GB计费(1.0.1版本新增), 第一种创建方式的可选参数
ExtraExtBandwidth integer 可选 指定创建的虚拟机使用的额外带宽,单位Mbps(1.0.1版本新增), 第一种创建方式的可选参数
AvailabilityZoneId string 可选 指定创建的虚拟机所在的可用区域(AvailabilityZone)

返回数据:

如果成功返回生成的Instance信息,包含如下字段:

字段名 类型 说明
instanceId string 虚拟机的ID
instanceName string 虚拟机的名称
instanceType string 虚拟机的类型
instanceTypeId string 虚拟机类型的ID
status string 虚拟机的状态,可能值有running/ready/suspend等
cpu integer 虚拟机的CPU核数
memory integer 虚拟机的内存大小,单位为MB
volume integer 虚拟机的总磁盘大小,单位为MB
ipAddresses string 虚拟机的IP地址列表
keypairName string 虚拟机的秘钥名称
keypairId string 虚拟机的秘钥ID
groupName string 虚拟机的安全组名称
groupId string 虚拟机的安全组ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    ImageId=d1620e45-c561-42e7-a2a4-53ae0a389bb9&
    Duration=72H&
    InstanceType=small_net&
    Action=CreateInstance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateInstanceResponse>
    <Instance>
        <instanceId>022a58da-5cee-4589-9e6a-f54fa1abd269</instanceId>
        <instanceName>system</instanceName>
        <instanceType>small_net</instanceType>
        ...
    </Instance>
</CreateInstanceResponse>

json响应

{"CreateInstanceResponse":
    {"Instance":
        {"instanceId": "022a58da-5cee-4589-9e6a-f54fa1abd269",
         "instanceName": "system",
         "instanceType": "small_net",
         ...
        }
    }
}

TerminateInstance

删除指定虚拟机实例。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 删除的虚拟机ID或名称

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=TerminateInstance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<TerminateInstanceResponse>
    <return>True</return>
</TerminateInstanceResponse>

json响应

{"TerminateInstanceResponse":
    {"return": "True"
    }
}

RenewInstance

续期指定虚拟机实例。注意:该操作涉及帐户扣费,请保证帐户有足够余额,否则将续期失败

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 续期的虚拟机ID或名称
Duration string 可选 指定续期时间,格式为数字+H/M(小时/月),例如1H, 72H或者1M。如果不指定,缺省为1M

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Duration=72H&
    Action=RenewInstance&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RenewInstanceResponse>
    <return>True</return>
</RenewInstanceResponse>

json响应

{"RenewInstanceResponse":
    {"return": "True"
    }
}

ChangeInstanceType

更改指定虚拟机实例的类型。注意:该操作涉及帐户扣费,请保证帐户有足够余额,否则将更改失败

参数名 类型 可选 说明
InstanceId string 必须 更改类型的虚拟机ID或名称
InstanceType string 必须 更改的虚拟机类型
ExtraExtDisksize integer 必须 指定创建的虚拟机使用的额外磁盘,单位为GB,不足10GB的部分按10GB计费(1.0.2版本新增)
ExtraExtBandwidth integer 必须 指定创建的虚拟机使用的额外带宽,单位Mbps(1.0.2版本新增)
Duration string 可选 更改后虚拟机的租期时间,格式为数字+H/M(小时/月),例如1H, 72H或者1M。如果不指定,缺省为1M

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=ChangeInstanceType&
    InstanceType=small_net&
    Duration=1M&
    ExtraExtDisksize=50&
    ExtraExtBandwidth=1&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ChangeInstanceTypeResponse>
    <return>True</return>
</ChangeInstanceTypeResponse>

json响应

{"ChangeInstanceTypeResponse":
    {"return": "True"
    }
}

GetInstanceMetadata

获取指定虚拟机实例的元数据。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 获取元数据的虚拟机ID或名称

返回数据:

返回InstanceMetadata数据集,包含所有key-value的元数据。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Action=GetInstanceMetadata&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<GetInstanceMetadataResponse>
    <InstanceMetadata>
        <os_version>2011.08</os_version>
        <os_name>Linux</os_name>
        <os_distribution>Cirros</os_distribution>
    </InstanceMetadata>
</GetInstanceMetadataResponse>

json响应

{"GetInstanceMetadataResponse":
    {"InstanceMetadata":
        {"os_version": "2011.08",
         "os_name": "Linux",
         "os_distribution": "Cirros"
        }
    }
}

PutInstanceMetadata

设置指定虚拟机实例的元数据。

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 设置元数据的虚拟机ID或名称
Name.n string 必须 指定第n个元数据的key,n从1开始
Value.n string 必须 指定第n个元数据的value,n从1开始

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Name.1=test7d&
    Value.1=1&
    Action=PutInstanceMetadata&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<PutInstanceMetadataResponse>
    <return>True</return>
</PutInstanceMetadataResponse>

json响应

{"PutInstanceMetadataResponse":
    {"return": "True"
    }
}

业务组API

DescribeServerGroup

列出所有或指定的用户业务组列表。

请求参数:

参数名 类型 可选 说明
ServerGroupIds.n string 可选 指定业务组的ID,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回ServerGroupSet包含如下字段:

字段名 类型 说明
ServerGroup complexType 返回的业务组信息
Total integer 满足查询条件的业务组个数
Limit integer 实际返回的业务组个数
Offset integer 业务组的偏移量

ServerGroup包含的字段:

字段名 类型 说明
InstanceCount integer 业务组包含实例数
Name string 业务组名称
GroupID string 业务组ID
AvailabilityZoneId String 虚拟机所在AvailabilityZone的ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Offset=2&
    Action=DescribeServerGroup&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeServerGroupResponse>
    <ServerGroupSet>
        <ServerGroup>
            <InstanceCount>2</InstanceCount>
            <Name>not_delete</Name>
            <AvailabilityZoneId>9a3490ec-6615-4782-b08e-926decc8a6b8</AvailabilityZoneId>
            <AvailabilityZoneName>北京3区</AvailabilityZoneName>
            <GroupID>6690675c-540f-4093-8052-dd44f9766958</GroupID>
        </ServerGroup>
        <Total>6</Total>
        <Limit>1</Limit>
        <Offset>2</Offset>
    </ServerGroupSet>
</DescribeServerGroupResponse>

json响应

{"DescribeServerGroupResponse":
    {"ServerGroupSet":
        {"ServerGroup": [
            {"InstanceCount": "2",
             "Name": "not_delete",
             "AvailabilityZoneId": "9a3490ec-6615-4782-b08e-926decc8a6b8",
             "AvailabilityZoneName": "北京3区",
             "GroupID": "6690675c-540f-4093-8052-dd44f9766958",
            }
         ],
         "Total": 6,
         "Limit": 1,
         "Offset": 2
        }
    }
}

CreateServerGroup

创建业务组。

请求参数:

参数名 类型 可选 说明
Name string 必选 业务组名称
AvailabilityZoneId string 可选 创建业务组所在的分区(不传默认在北京三区)

返回数据:

ServerGroup包含的字段:

字段名 类型 说明
InstanceCount integer 业务组包含实例数
GroupName string 业务组名称
GroupID string 业务组ID
AvailabilityZoneId String 虚拟机所在AvailabilityZone的ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Offset=2&
    Action=DescribeServerGroup&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeServerGroupResponse>
    <ServerGroup>
        <InstanceCount>2</InstanceCount>
        <Name>not_delete</Name>
        <AvailabilityZoneId>9a3490ec-6615-4782-b08e-926decc8a6b8</AvailabilityZoneId>
        <AvailabilityZoneName>北京3区</AvailabilityZoneName>
        <GroupID>6690675c-540f-4093-8052-dd44f9766958</GroupID>
    </ServerGroup>
</DescribeServerGroupResponse>

json响应

{"DescribeServerGroupResponse":
    {"ServerGroup":
        {"InstanceCount": "0",
         "Name": "not_delete",
         "AvailabilityZoneId": "9a3490ec-6615-4782-b08e-926decc8a6b8",
         "AvailabilityZoneName": "北京3区",
         "GroupID": "6690675c-540f-4093-8052-dd44f9766958",
        }
    }
}

ReleaseServerGroup

删除业务组。

请求参数:

参数名 类型 可选 说明
Group string 必选 业务组ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Name.1=test7d&
    Value.1=1&
    Action=PutInstanceMetadata&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<PutInstanceMetadataResponse>
    <return>True</return>
</PutInstanceMetadataResponse>

json响应

{"PutInstanceMetadataResponse":
    {"return": "True"
    }
}

DescribeServerByGroup

列出所有或指定的用户业务组列表。

请求参数:

参数名 类型 可选 说明
Group string 可选 返回业务组的名称过滤
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回GroupGuestSet包含如下字段:

字段名 类型 说明
GroupGuest complexType 对应业务组的主机实例列表
Total integer 满足查询条件的业务组个数
Limit integer 实际返回的业务组个数
Offset integer 业务组的偏移量

GroupGuest包含的字段:

字段名 类型 说明
Group string 业务组名称
GroupID string 业务组ID
GuestID string 实例资源ID
Guest string 实例资源名称
Status string 实例资源状态
IPs string 实例资源ip

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Offset=2&
    Action=DescribeServerByGroup&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeServerByGroupResponse>
    <GroupGuestSet>
        <GroupGuest>
            <Group>not_delete</Group>
            <GroupID>71b3a569-23c9-45bd-b23d-a13746cb2b45</GroupID>
            <GuestID>9a3490ec-6615-4782-b08e-926decc8a6b8</GuestID>
            <Guest>test</Guest>
            <Status>running</Status>
            <IPs>172.16.7.55</IPs>
        </GroupGuest>
        <Total>6</Total>
        <Limit>1</Limit>
        <Offset>2</Offset>
    </GroupGuestSet>
</DescribeServerByGroupResponse>

json响应

{"DescribeServerByGroupResponse":
    {"GroupGuestSet":
        {"GroupGuest": [
            "Group": "not_delete",
            "GroupID": "6690675c-540f-4093-8052-dd44f9766958",
            "GuestID": "9a3490ec-6615-4782-b08e-926decc8a6b8",
            "Guest": "test",
            "Status": "running",
            "IPs": "172.16.7.55",
            }
         ],
         "Total": 6,
         "Limit": 1,
         "Offset": 2
        }
    }
}

ServerJoinGroup

将实例加入业务组。

请求参数:

参数名 类型 可选 说明
Group string 必选 要加入的业务组ID
InstanceId string 必选 需要加入的业务组的资源的ID

返回数据:

GroupGuest包含的字段:

字段名 类型 说明
Group string 业务组名称
GroupID string 业务组ID
GuestID string 实例资源ID
Guest string 实例资源名称
Status string 实例资源状态
IPs string 实例资源ip

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Offset=2&
    Action=ServerJoinGroup&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ServerJoinGroupResponse>
    <GroupGuest>
        <Group>not_delete</Group>
        <GroupID>71b3a569-23c9-45bd-b23d-a13746cb2b45</GroupID>
        <GuestID>9a3490ec-6615-4782-b08e-926decc8a6b8</GuestID>
        <Guest>test</Guest>
        <Status>running</Status>
        <IPs>172.16.7.55</IPs>
    </GroupGuest>
</ServerJoinGroupResponse>

json响应

{"ServerJoinGroupResponse":
    {"GroupGuest":
        {"Group": "not_delete",
         "GroupID": "6690675c-540f-4093-8052-dd44f9766958",
         "GuestID": "9a3490ec-6615-4782-b08e-926decc8a6b8",
         "Guest": "test",
         "Status": "running",
         "IPs": "172.16.7.55",
        }
    }
}

浮动IP API

AllocateAddress

新购浮动IP。(支持备案用户开放80端口)

请求参数:

参数名 类型 可选 说明
Name string 必须 浮动IP的自定义名称
AvailabilityZoneId string 可选 指定创建的虚拟机所在的可用区域(AvailabilityZone)
BillingModel string 可选 计费方式,有效值:bandwidth,flow,分别代表按带宽和按流量计费。默认为bandwidth

返回数据:

字段名 类型 说明
allocationId string 浮动IP的ID
publicIp string Ip地址
name string 浮动IP的名称
billingModel string 计费类型
bandwidth string 浮动IP的带宽限制
registered boolean 是否已经备案
associationType string 浮动IP绑定云产品的类型
instanceId string 绑定的云产品ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Name=EIPNameTest&
    BillingModel=flow&
    Action=AllocateAddress&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<AllocateAddressResponse>
    <Address>
        <name>EIPNameTest</name>
        <instanceId/>
        <publicIp>10.4.246.226</publicIp>
        <registered>False</registered>
        <allocationId>22b793e0-0953-413d-8ee2-2e82d4952844</allocationId>
        <bandwidth>0</bandwidth>
        <billingModel>flow</billingModel>
        <associationType/>
    </Address>
</AllocateAddressResponse>

json响应

{
  "AllocateAddressResponse": {
    "Address": {
      "name": "EIPNameTest",
      "instanceId": "",
      "publicIp": "10.4.246.25",
      "registered": false,
      "allocationId": "3e224194-4ba0-4b17-8d0f-362b8ac7c91e",
      "bandwidth": "0",
      "billingModel": "bandwidth",
      "associationType": ""
    }
  }
}

DescribeAddresses

返回所有浮动IP列表。

请求参数:

参数名 类型 可选 说明
AllocationId.n string 可选 指定浮动IP的ID(或者IP),n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

字段名 类型 说明
allocationId string 浮动IP的ID
publicIp string Ip地址
name string 浮动IP的名称
billingModel string 计费类型
bandwidth string 浮动IP的带宽限制
registered boolean 是否已经备案
associationType string 浮动IP绑定云产品的类型
instanceId string 绑定的云产品ID
availabilityZoneId string IP所在AvailabilityZone的ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeAddresses&
    AllocationId.1=8407beca-c69d-4aa6-848a-b656b8d9cf07&
    AUTHDATA

xml响应

<?xml version="1.0"?>
<DescribeAddressesResponse>
    <AddressSet>
        <Address>
            <associationType/>
            <name>etest</name>
            <availabilityZoneId>c76a6cd7-dc15-46c6-95a2-3bff38116eff</availabilityZoneId>
            <instanceId/>
            <registered>False</registered>
            <billingModel>bandwidth</billingModel>
            <publicIp>10.0.233.5</publicIp>
            <bandwidth>0</bandwidth>
            <allocationId>8407beca-c69d-4aa6-848a-b656b8d9cf07</allocationId>
        </Address>
    </AddressSet>
</DescribeAddressesResponse>

json响应

{
  "DescribeAddressesResponse": {
    "AddressSet": {
        "Address": {
          "associationType": "",
          "name": "etest",
          "availabilityZoneId": "c76a6cd7-dc15-46c6-95a2-3bff38116eff",
          "instanceId": "",
          "registered": false,
          "billingModel": "bandwidth",
          "publicIp": "10.0.233.5",
          "bandwidth": 0,
          "allocationId": "8407beca-c69d-4aa6-848a-b656b8d9cf07"
        }
      ]
    }
  }
}

ConfigAddress

变更浮动IP属性,目前支持Name

请求参数:

参数名 类型 可选 说明
AllocationId string 必须 浮动IP的ID(或者IP)
Name string 可选 变更浮动IP名称

返回数据:

字段名 类型 说明
allocationId string 浮动IP的ID
publicIp string Ip地址
name string 浮动IP的名称
billingModel string 计费类型
bandwidth string 浮动IP的带宽限制
registered boolean 是否已经备案
associationType string 浮动IP绑定云产品的类型
instanceId string 绑定的云产品ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ConfigAddress&
    AllocationId=2f989a53-c791-46f6-8a62-f55e27a9328b&
    Name=tt&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ConfigAddressResponse>
    <Address>
        <associationType/>
        <name>changeName</name>
        <instanceId/>
        <registered>False</registered>
        <billingModel>bandwidth</billingModel>
        <publicIp>10.0.233.5</publicIp>
        <bandwidth>0</bandwidth>
        <allocationId>8407beca-c69d-4aa6-848a-b656b8d9cf07</allocationId>
    </Address>
</ConfigAddressResponse>

json响应

{
  "ConfigAddressResponse": {
    "Address": {
      "associationType": "",
      "name": "changeName",
      "instanceId": "",
      "registered": false,
      "billingModel": "bandwidth",
      "publicIp": "10.0.233.5",
      "bandwidth": 0,
      "allocationId": "8407beca-c69d-4aa6-848a-b656b8d9cf07"
    }
  }
}

ConfigAddressBandwidth

变更浮动IP带宽

请求参数:

参数名 类型 可选 说明
AllocationId string 必须 浮动IP的ID(或者IP)
Bandwidth int 可选 变更带宽

返回数据:

字段名 类型 说明
allocationId string 浮动IP的ID
publicIp string Ip地址
name string 浮动IP的名称
billingModel string 计费类型
bandwidth string 浮动IP的带宽限制
registered boolean 是否已经备案
associationType string 浮动IP绑定云产品的类型
instanceId string 绑定的云产品ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ConfigAddressBandwidthResponse&
    AllocationId=2f989a53-c791-46f6-8a62-f55e27a9328b&
    Bandwidth=20&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ConfigAddressBandwidthResponse>
    <Address>
        <associationType/>
        <name>changeName</name>
        <instanceId/>
        <registered>False</registered>
        <billingModel>bandwidth</billingModel>
        <publicIp>10.0.233.5</publicIp>
        <bandwidth>0</bandwidth>
        <allocationId>8407beca-c69d-4aa6-848a-b656b8d9cf07</allocationId>
    </Address>
</ConfigAddressBandwidthResponse>

json响应

{
  "ConfigAddressResponse": {
    "Address": {
      "associationType": "",
      "name": "changeName",
      "instanceId": "",
      "registered": false,
      "billingModel": "bandwidth",
      "publicIp": "10.0.233.5",
      "bandwidth": 0,
      "allocationId": "8407beca-c69d-4aa6-848a-b656b8d9cf07"
    }
  }
}

ReleaseAddress

释放浮动IP。

请求参数:

参数名 类型 可选 说明
AllocationId string 必须 浮动IP的ID(或者IP)

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ReleaseAddress&
    AllocationId=8c073cfe-a339-426d-96b3-84e1cfba05b9&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ReleaseAddressResponse><return>True</return></ReleaseAddressResponse>

json响应

{"ReleaseAddressResponse": {"return": true}}

AssociateAddress

将浮动IP绑定到其他云产品上。

请求参数:

参数名 类型 可选 说明
AllocationId string 必须 浮动IP的ID(或者IP)
AssociationType string 必须 绑定云产品类型。有效值为server、elb,分别代表绑定到云服务器和ELB负载均衡器
InstanceId string 必须 绑定的云产品ID
Bandwidth int 必须 绑定浮动IP的带宽限制

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=AssociateAddress&
    AssociationType=elb&
    InstanceId=59a84e37-1e4b-44be-99f4-939a39a3eedf&
    AllocationId=372a3ff6-c78c-4caf-8586-01bd3ac2fcb8&
    Bandwidth=10&
    AUTHDATA

或者AllocationId使用ID

https://mosapi.meituan.com/mcs/v1?
    Action=AssociateAddress&
    AssociationType=elb&
    InstanceId=59a84e37-1e4b-44be-99f4-939a39a3eedf&
    AllocationId=10.0.233.5&
    Bandwidth=10&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<AssociateAddressResponse><return>True</return></AssociateAddressResponse>

json响应

{"AssociateAddressResponse": {"return": true}}

ReplaceAddress

切换云产品上绑定的浮动IP,在切换过程中会保持网络连接不中断(对同一实例的IP切换操作建议间隔10s以上)

请求参数:

参数名 类型 可选 说明
AllocationId string 必须 浮动IP的ID(或者IP)
NewAllocationId string 必须 新的浮动IP的ID(或者IP)

返回数据:

字段名 类型 说明
allocationId string 新的浮动IP的ID
publicIp string Ip地址
name string 浮动IP的名称
billingModel string 计费类型
bandwidth string 浮动IP的带宽限制
registered boolean 是否已经备案
associationType string 浮动IP绑定云产品的类型
instanceId string 绑定的云产品ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ReplaceAddress&
    AllocationId=8c073cfe-a339-426d-96b3-84e1cfba05b9&
    NewAllocationId=8407beca-c69d-4aa6-848a-b656b8d9cf07&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ReplaceAddressResponse>
    <Address>
        <associationType/>
        <name>changeName</name>
        <instanceId>61c6a3de-34d6-4c69-bde0-fe20b948710f<instanceId/>
        <registered>False</registered>
        <billingModel>bandwidth</billingModel>
        <publicIp>10.0.233.5</publicIp>
        <bandwidth>10</bandwidth>
        <allocationId>8407beca-c69d-4aa6-848a-b656b8d9cf07</allocationId>
    </Address>
</ReplaceAddressResponse>

json响应

{
  "ReplaceAddressResponse": {
    "Address": {
      "associationType": "",
      "name": "changeName",
      "instanceId": "61c6a3de-34d6-4c69-bde0-fe20b948710f",
      "registered": false,
      "billingModel": "bandwidth",
      "publicIp": "10.0.233.5",
      "bandwidth": 10,
      "allocationId": "8407beca-c69d-4aa6-848a-b656b8d9cf07"
    }
  }
}

DisassociateAddress

将浮动IP从其他云产品上解除绑定。

请求参数:

参数名 类型 可选 说明
AllocationId string 必须 浮动IP的ID(或者IP)

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DisassociateAddress&
    AllocationId=8c073cfe-a339-426d-96b3-84e1cfba05b9&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DisassociateAddressResponse><return>True</return></DisassociateAddressResponse>

json响应

{"DisassociateAddressResponse": {"return": true}}

可用域API

可用域(AvailabilityZone)是一个区域内独立的IDC资源,所有的资源(如虚拟机,IP地址等)都归属于一个特定的可用域。用户可以在创建资源时指定该资源所在的可用域,以分散自己的资源到不同可用域,以便构建高可用的系统架构。

DescribeAvailabilityZones

列出当前区域中所有的可用域。

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

返回数据集AvailabilityZoneSet,包含如下字段:

字段名 类型 说明
AvailabilityZone complextype 一个可用域的信息

AvailabilityZone包含如下字段信息:

字段名 类型 说明
availabilityZoneId string 可用域ID
availabilityZoneName string 可用域名称

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeAvailabilityZones&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeAvailabilityZonesResponse>
    <AvailabilityZoneSet>
        <AvailabilityZone>
            <availabilityZoneName>zone0</availabilityZoneName>
            <availabilityZoneId>e47896ec-eb1a-460d-a1f6-a0685edaddfe</availabilityZoneId>
        </AvailabilityZone>
    </AvailabilityZoneSet>
</DescribeAvailabilityZonesResponse>

json响应

{"DescribeAvailabilityZonesResponse":
    {"AvailabilityZoneSet":
        {"AvailabilityZone": [
            {"availabilityZoneName": "zone0",
             "availabilityZoneId": "e47896ec-eb1a-460d-a1f6-a0685edaddfe"
            }]
        }
    }
}

监控API

DescribeInstanceMetrics

查看虚拟机监控项

请求参数:

参数名 类型 可选 说明
InstanceId string 可选 欲查看的虚拟机ID

返回数据:

返回MetricSet字段,包括:

字段名 类型 说明
Metric complexType 返回监控指标的信息

Metric包含如下信息:

字段名 类型 说明
instanceId string 虚拟机id
instanceName string 虚拟机名称
name string 监控指标名称
key string 监控指标metric key
lastvalue string 最近一次的监控值
valuetype string 监控值类型
units string 监控值得单位
lastclock datetime 最近一次得到监控值的时间
id string 监控指标的id

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=7a2b72db-58e3-4b05-847a-65a0cd2677ab&
    Action=DescribeInstanceMetrics&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeInstanceMetricsResponse>
    <MetricSet>
        <Metric>
            <instanceId>7a2b72db-58e3-4b05-847a-65a0cd2677ab</instanceId>
            <instanceName>test</instanceName>
            <lastvalue>2</lastvalue>
            <name>CPU线程数</name>
            <key>mos.guest.cpu.thread_count</key>
            <lastclock>2014-07-31 14:49:29</lastclock>
            <valuetype>unsigned int</valuetype>
            <units></units>
            <id>24161</id>
        </Metric>
    </MetricSet>
</DescribeInstanceMetricsResponse>

json响应

{"DescribeInstanceMetricsResponse":
    {"MetricSet":
        {"Metric": [
           {"server_id": "7a2b72db-58e3-4b05-847a-65a0cd2677ab",
            "server_name": "name",
            "lastvalue": "2",
            "name": "CPU线程数"
            "key": "mos.guest.cpu.thread_count",
            "lastclock": "2014-07-31 15:14:29",
            "valuetype": "unsigned int",
            "units": "",
            "id": "24161"
           }
         ]
        }
    }
}

DescribeAlarmHistory

查看监控告警历史

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

返回AlarmHistorySet字段,包括:

字段名 类型 说明
AlarmHistory complexType 返回告警历史信息
Total integer 返回符合条件的虚拟机类型总量
Limit integer 返回虚拟机类型的数量
Offset integer 返回虚拟机类型的偏移量

AlarmHistory包含如下信息:

字段名 类型 说明
information string 虚拟机id
clock datetime 发送告警时间

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
            Limit=1&
            Action=DescribeAlarmHistory&
            AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeAlarmHistoryResponse>
    <AlarmHistorySet>
    <Total>2</Total>
    <Limit>1</Limit>
        <AlarmHistory>
            <information>[testaaa] TCP: 80 已经连续3次检测失败。 时间:18:27:23</information>
            <clock>2015-01-13 18:27:27</clock>
        </AlarmHistory>
    </AlarmHistorySet>
</DescribeAlarmHistoryResponse>

json响应

{"DescribeAlarmHistoryResponse":
    {"AlarmHistorySet":
        {"Total": 2,
         "Limit": 1
         "AlarmHistory": [
           {"informatin": "[testaaa] TCP: 80 已经连续3次检测失败。 时间:18:27:23",
            "clock": "2015-01-13 18:27:27",
           }
         ]
        }
    }
}

CreateMetricAlarm

创建指标监控

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 虚拟机ID或名称
Metric string 必须 监控指标key
Operator string 必须 判断操作符,支持GT,EQ,LT
Threshold string 必须 阈值
Description string 可选 描述

返回数据:

成功则返回值result为”创建成功”;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=7a2b72db-58e3-4b05-847a-65a0cd2677ab&
    Metric=mos.guest.cpu.percent&
    Operator=GT&
    Threshold=80&
    Action=CreateMetricAlarm&
    Description=测试
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateMetricAlarmResponse>
    <result>创建成功</result>
</CreateMetricAlarmResponse>

json响应

{"CreateMetricAlarmResponse":
    {"result": "创建成功"
    }
}

DeleteMetricAlarm

删除指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DeleteMetricAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteMetricAlarmResponse>
    <return>True</return>
</DeleteMetricAlarmResponse>

json响应

{"DeleteMetricAlarmResponse":
    {"return": "True"
    }
}

EnableMetricAlarm

启用指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=EnableMetricAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<EnableMetricAlarmResponse>
    <return>True</return>
</EnableMetricAlarmResponse>

json响应

{"EnableMetricAlarmResponse":
    {"return": "True"
    }
}

DisableMetricAlarm

禁用指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲禁用的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DisableMetricAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DisableMetricAlarmResponse>
    <return>True</return>
</DisableMetricAlarmResponse>

json响应

{"DisableMetricAlarmResponse":
    {"return": "True"
    }
}

DescribeMetricAlarms

查看指标监控

请求参数:

返回数据:

返回MetricAlarmSet字段,包括:

字段名 类型 说明
MetricAlarm complexType 返回指标监控信息

MetricAlarm包含如下信息:

字段名 类型 说明
monitorId string 监控项ID
instanceId string 虚拟机ID
instanceName string 虚拟机名称
instanceIPs string 虚拟机ip
description string 描述
status string 指标监控项启用状态
value string 指标监控项监控状态
expression string 指标监控描述

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeMetricAlarms&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeMetricAlarmsResponse>
    <MetricAlarmSet>
        <MetricAlarm>
            <status>已启用</status>
            <monitorId>metriccheck::7a2b72db-58e3-4b05-847a-65a0cd2677ab::mos.guest.cpu.percent:GT:80::MOS</monitorId>
            <instanceId>7a2b72db-58e3-4b05-847a-65a0cd2677ab</instanceId>
            <instanceName>mostest</instanceName>
            <instanceIPs>192.168.2.11</instanceIPs>
            <value>正常</value>
            <expression>mos.guest.cpu.percent>80</expression>
            <description>测试</description>
        </MetricAlarm>
    </MetricAlarmSet>
</DescribeMetricAlarmsResponse>

json响应

{"DescribeMetricAlarmsResponse":
    {"MetricAlarmSet":
        {"MetricAlarm": [
           {"status": "已启用"
            "monitorId": "metriccheck::7a2b72db-58e3-4b05-847a-65a0cd2677ab::mos.guest.cpu.percent:GT:80::MOS"
            "instanceId": "a94814c1-b946-4825-8a15-e011b35a1b89",
            "expression": "mos.guest.cpu.percent>80",
            "value": "正常",
            "instanceName": "mostest",
            "instanceIPs": "192.168.2.11",
            "description": "测试"
           }
         ]
        }
    }
}

CreateAliveAlarm

创建主机存活监控

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 虚拟机ID或名称

返回数据:

成功则返回值result为”创建成功”;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=id&
    Action=CreateAliveAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateAliveAlarmResponse>
    <result>创建成功</result>
</CreateAliveAlarmResponse>

json响应

{"CreateAliveAlarmResponse":
    {"result": "创建成功"
    }
}

DeleteAliveAlarm

删除主机存活监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的主机存活监控ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DeleteAliveAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteAliveAlarmResponse>
    <return>True</return>
</DeleteAliveAlarmResponse>

json响应

{"DeleteAliveAlarmResponse":
    {"return": "True"
    }
}

EnableAliveAlarm

启用主机存活监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=EnableAliveAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<EnableAliveAlarmResponse>
    <return>True</return>
</EnableAliveAlarmResponse>

json响应

{"EnableAliveAlarmResponse":
    {"return": "True"
    }
}

DisableAliveAlarm

禁用主机存活监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DisableAliveAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DisableAliveAlarmResponse>
    <return>True</return>
</DisableAliveAlarmResponse>

json响应

{"DisableAliveAlarmResponse":
    {"return": "True"
    }
}

DescribeAliveAlarms

查看主机存活监控

请求参数:

返回数据:

返回AliveAlarmSet字段,包括:

字段名 类型 说明
AliveAlarm complexType 返回主机存活监控项信息

AliveAlarm包含如下信息:

字段名 类型 说明
monitorId string 监控项ID
instanceId string 虚拟机ID
instanceName string 虚拟机名称
instanceIPs string 虚拟机ip
description string 描述
status string 主机存活监控项启用状态
value string 主机存活监控项监控状态

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeAliveAlarms&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeAliveAlarmsResponse>
    <AliveAlarmSet>
        <AliveAlarm>
            <status></status>
            <monitorId>alivecheck::a94814c1-b946-4825-8a15-e011b35a1b89</monitorId>
            <instanceId>a94814c1-b946-4825-8a15-e011b35a1b89</instanceId>
            <instanceName>system</instanceName>
            <instanceIPs>192.168.2.9</instanceIPs>
            <value>异常</value>
            <description>测试</description>
        </AliveAlarm>
    </AliveAlarmSet>
</DescribeAliveAlarmsResponse>

json响应

{"DescribeAliveAlarmsResponse":
    {"AliveAlarmSet":
        {"AliveAlarm": [
           {"status": "已启用",
            "monitorId": "alivecheck::a94814c1-b946-4825-8a15-e011b35a1b89",
            "instanceId": "a94814c1-b946-4825-8a15-e011b35a1b89",
            "value": "异常",
            "instanceName": "system",
            "instanceIPs": "192.168.2.9",
            "description": "测试"
           }
         ]
        }
    }
}

CreateTCPAlarm

创建TCP监控

请求参数:

参数名 类型 可选 说明
InstanceId string 必须 虚拟机ID或名称
Port integer 必须 TCP端口号

返回数据:

成功则返回值result为”创建成功”;否则返回错误信息

请求URL

https://mosapi.meituan.com/mcs/v1?
    InstanceId=system&
    Port=99&
    Action=CreateTCPAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateTCPAlarmResponse>
    <result>创建成功</result>
</CreateTCPAlarmResponse>

json响应

{"CreateTCPAlarmResponse":
    {"result": "创建成功"
    }
}

DeleteTCPAlarm

删除TCP监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的TCP监控ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DeleteTCPAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteTCPAlarmResponse>
    <return>True</return>
</DeleteTCPAlarmResponse>

json响应

{"DeleteTCPAlarmResponse":
    {"return": "True"
    }
}

EnableTCPAlarm

启用TCP监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=EnableTCPAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<EnableTCPAlarmResponse>
    <return>True</return>
</EnableTCPAlarmResponse>

json响应

{"EnableTCPAlarmResponse":
    {"return": "True"
    }
}

DisableTCPAlarm

禁用TCP监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DisableTCPAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DisableTCPAlarmResponse>
    <return>True</return>
</DisableTCPAlarmResponse>

json响应

{"DisableTCPAlarmResponse":
    {"return": "True"
    }
}

DescribeTCPAlarms

查看TCP监控

请求参数:

返回数据:

返回TCPAlarmSet字段,包括:

字段名 类型 说明
TCPAlarm complexType 返回TCP监控项信息

TCPAlarm包含如下信息:

字段名 类型 说明
monitorId string 监控项ID
instanceId string 虚拟机ID
instanceName string 虚拟机名称
instanceIPs string 虚拟机ip
description string 描述
status string TCP监控项启用状态
value string TCP监控项监控状态
port integer TCP监控项监控端口

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeTCPAlarms&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeTCPAlarmsResponse>
    <TCPAlarmSet>
        <TCPAlarm>
            <status>已启用</status>
            <monitorId>tcpcheck::a94814c1-b946-4825-8a15-e011b35a1b89::99</monitorId>
            <instanceId>a94814c1-b946-4825-8a15-e011b35a1b89</instanceId>
            <instanceName>system</instanceName>
            <instanceIPs>192.168.2.9</instanceIPs>
            <value>异常</value>
            <port>99</port>
            <description>测试</description>
        </TCPAlarm>
    </TCPAlarmSet>
</DescribeTCPAlarmsResponse>

json响应

{"DescribeTCPAlarmsResponse":
    {"TCPAlarmSet":
        {"TCPAlarm": [
           {"status": "已启用",
            "monitorId": "tcpcheck::a94814c1-b946-4825-8a15-e011b35a1b89::99"
            "value": "异常",
            "port": 99
            "instanceId": "a94814c1-b946-4825-8a15-e011b35a1b89",
            "instanceName": "system",
            "instanceIPs": "192.168.2.9",
            "description": "测试"
           }
         ]
        }
    }
}

安全组API(防火墙)

CreateSecurityGroup

创建安全组

请求参数:

字段名 类型 说明
GroupName string 安全组名称
GroupDescription string 返回TCP监控项信息

返回数据:

返回SecurityGroup字段,包括:

字段名 类型 说明
groupId string 安全组ID

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=CreateSecurityGroup&GroupName=g1&GroupDescription=测试&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateSecurityGroupResponse>
    <SecurityGroup>
        <groupName>g1</groupName>
        <groupId>b36296f8-795a-4f2e-aecd-89166088df85</groupId>
    </SecurityGroup>
</CreateSecurityGroupResponse>

json响应

{"CreateSecurityGroupResponse":
     {"SecurityGroup":
          {"groupName": "g1",
           "groupId": "b8f89ec9-a1b1-417e-851d-129b08469952"
          }
     }
}

DescribeSecurityGroups

获取安全组信息

请求参数:

参数名 类型 可选 说明
GroupName string 可选 安全组名称
GroupId string 可选 安全组ID
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。可能的值为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回SecurityGroupSet字段,包括:

字段名 类型 说明
groupId string 安全组ID
GroupName string 安全组名称

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeSecurityGroups&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeSecurityGroupsResponse>
    <SecurityGroupSet>
        <SecurityGroup>
            <groupName>g1</groupName>
            <groupId>b8f89ec9-a1b1-417e-851d-129b08469952</groupId>
        </SecurityGroup>
        <SecurityGroup>
            <groupName>g3</groupName>
            <groupId>cffd4399-0246-4b92-94ca-91ac12413be1</groupId>
        </SecurityGroup>
        <SecurityGroup>
            <groupName>g2</groupName>
            <groupId>dcc5a83b-5222-443c-901d-505f4b69b531</groupId>
        </SecurityGroup>
    </SecurityGroupSet>
</DescribeSecurityGroupsResponse>

json响应

{
    "DescribeSecurityGroupsResponse": {
        "SecurityGroupSet": {
            "SecurityGroup": [
                {
                    "groupName": "g1",
                    "groupId": "b8f89ec9-a1b1-417e-851d-129b08469952"
                },
                {
                    "groupName": "g3",
                    "groupId": "cffd4399-0246-4b92-94ca-91ac12413be1"
                },
                {
                    "groupName": "g2",
                    "groupId": "dcc5a83b-5222-443c-901d-505f4b69b531"
                }
            ]
        }
    }
}

DeleteSecurityGroup

删除一个安全组

请求参数:

参数名 类型 可选 说明
GroupId string 必选 安全组ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DeleteSecurityGroup&GroupId=g3&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteSecurityGroupResponse>
    <return>True</return>
</DeleteSecurityGroupResponse>

json响应

{
    "DeleteSecurityGroupResponse": {
        "return": true
    }
}

AuthorizeSecurityGroupIngress

给一个安全组授权进入流量的规则

请求参数:

参数名 类型 可选 说明
Rule.n string 必选 入流量授权规则
GroupId string 必选 安全组ID

规则Rule格式说明:

规则类型: 字符串
规则格式: ACTION [IP] PROTOCAL [PORT]
        ACTION: 必填,支持allow/deny
        IP: 选填,默认为0.0.0.0/0,可以是一个IP或一个网段,例如:192.168.0.1,192.168.0.0/16
        PROTOCAL: 必填,支持tcp/udp/icmp/any
        PORT: 选填,如果是any或者是icmp,不必填;如果是tcp或udp,不填时默认为全部端口,填时为指定端口,如8000,
            也支持设定范围,如20-25(注:范围包含的端口个数不能超过30)

示例:
    'deny tcp 2200','deny 192.168.0.0/16 tcp 80','allow 192.168.0.0/24 any','allow udp 21-22'

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=AuthorizeSecurityGroupIngress&Rule.1=allow%20any&GroupId=g1&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<AuthorizeSecurityGroupIngressResponse>
    <return>True</return>
</AuthorizeSecurityGroupIngressResponse>

json响应

{
    "AuthorizeSecurityGroupIngressResponse": {
        "return": true
    }
}

RevokeSecurityGroupIngress

从一个安全组中撤销进入流量的规则(指定撤销的规则必须和之前授权的规则完全匹配)

请求参数:

参数名 类型 可选 说明
Rule.n string 必选 入流量授权规则
GroupId string 必选 安全组ID

规则Rule格式说明:

规则类型: 字符串
规则格式: 见AuthorizeSecurityGroupIngress

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=RevokeSecurityGroupIngress&Rule.1=allow%20any&GroupId=g1&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RevokeSecurityGroupIngressResponse>
    <return>True</return>
</RevokeSecurityGroupIngressResponse>

json响应

{
    "RevokeSecurityGroupIngressResponse": {
        "return": true
    }
}

InstanceAssignSecurityGroup

给一个虚拟机分配安全组

请求参数:

参数名 类型 可选 说明
InstanceId string 必选 虚拟机ID
GroupId string 必选 安全组ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=InstanceAssignSecurityGroup&InstanceId=4a92d66f-8101-4a1d-90db-922876fc49fd&GroupId=g1&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<InstanceAssignSecurityGroupResponse>
    <return>True</return>
</InstanceAssignSecurityGroupResponse>

json响应

{
    "InstanceAssignSecurityGroupResponse": {
        "return": true
    }
}

InstanceRevokeSecurityGroup

撤销一个虚拟机的安全组

请求参数:

参数名 类型 可选 说明
InstanceId string 必选 虚拟机ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=InstanceRevokeSecurityGroup&InstanceId=4a92d66f-8101-4a1d-90db-922876fc49fd&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<InstanceRevokeSecurityGroupResponse>
    <return>True</return>
</InstanceRevokeSecurityGroupResponse>

json响应

{
    "InstanceRevokeSecurityGroupResponse": {
        "return": true
    }
}

Redis API

DescribeRedis

列出所有或指定的用户Redis实例

请求参数

参数名 类型 可选 说明
RedisId.n string 可选 指定Redis的ID,n从1开始
RedisName.n string 可选 指定Redis的Name,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name, status
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回RedisSet包含如下字段:

字段名 类型 说明
Redis complexType 返回的Redis信息
Total integer 满足查询条件的Redis个数
Limit integer 实际返回的Redis个数
Offset integer Redis的偏移量

Redis包含的字段:

字段名 类型 说明
redisId string Redis的ID
redisName string Redis的名称
status string Redis的状态,可能值有running/suspend等
memory integer Redis的内存大小,单位为MB
ip string Redis的IP
availabilityZone String Redis所在AvailabilityZone

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeRedis&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRedisResponse>
    <RedisSet>
        <Redis>
            <status>running</status>
            <availabilityZone>zone0</availabilityZone>
            <redisName>readf</redisName>
            <ip>10.0.233.253</ip>
            <redisId>056fa17c-f806-4081-8129-844aaab7cfc9</redisId>
            <memory>1024</memory>
        </Redis>
    </RedisSet>
</DescribeRedisResponse>

json响应

{"DescribeRedisResponse": {
    "RedisSet": {
        "Redis": [{
            "status": "running",
            "availabilityZone": "zone0",
            "redisName": "readf",
            "ip": "10.0.233.253",
            "redisId": "056fa17c-f806-4081-8129-844aaab7cfc9",
            "memory": "1024"
            }]
        }
    }
}

CreateRedis

创建Redis实例

请求参数:

参数名 类型 可选 说明
Memory integer 必选 指定Redis创建的内存大小,单位GB
Duration string 可选 创建的Redis时间,格式为数字+H/M,例如1H, 72H或者1M。缺省为1M
RedisName string 可选 指定创建的Redis的名称
AvailabilityZoneId string 可选 指定创建的Redis所在的可用区域(AvailabilityZone)

返回数据:

如果成功返回生成的Redis信息,包含如下字段:

字段名 类型 说明
redisId string Redis的ID
redisName string Redis的名称
status string Redis的状态,可能值有running/suspend等
memory integer Redis的内存大小,单位为MB
ip string Redis的IP
availabilityZone String Redis所在AvailabilityZone

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Duration=1M&
    Memory=1&
    RedisName=redistest&
    Action=CreateRedis&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateRedisResponse>
    <Redis>
        <status>init</status>
        <availabilityZone>zone0</availabilityZone>
        <redisName>redistest</redisName>
        <ip>10.0.233.250</ip>
        <redisId>ec4fba9c-f899-484d-9971-650de9711165</redisId>
        <memory>1024</memory>
    </Redis>
</CreateRedisResponse>

json响应

{"CreateRedisResponse": {
    "Redis": {
        "status": "init",
        "availabilityZone": "zone0",
        "redisName": "redistest",
        "ip": "10.0.233.250",
        "redisId": "ec4fba9c-f899-484d-9971-650de9711165",
        "memory": "1024"
        }
    }
}

TerminateRedis

删除指定Redis实例。

请求参数:

参数名 类型 可选 说明
RedisId string 必须 删除的Redis的ID或名称

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RedisId=redissystem&
    Action=TerminateRedis&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<TerminateRedisResponse>
    <return>true</return>
</TerminateRedisResponse>

json响应

{"TerminateRedisResponse": {
    "return": true
    }
}

RenewRedis

续期指定Redis实例。注意:该操作涉及帐户扣费,请保证帐户有足够余额,否则将续期失败

请求参数:

参数名 类型 可选 说明
RedisId string 必须 续期的Redis的ID或名称
Duration string 可选 指定续期时间,格式为数字+H/M(小时/月),例如1H, 72H或者1M。如果不指定,缺省为1M

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RedisId=redissystem&
    Duration=72H&
    Action=RenewRedis&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RenewRedisResponse>
    <return>true</return>
</RenewRedisResponse>

json响应

{"TerminateRedisResponse": {
    "return": true
    }
}

GetRedisContractInfo

获得指定Redis实例的合同时间信息。

请求参数:

参数名 类型 可选 说明
RedisId string 必须 指定Redis的ID

返回数据:

返回如下字段:

字段名 类型 说明
startedAt datetime Redis租约开始时间
expireAt datetime Redis租约到期时间
extendTo datetime 如果未按期续费,Redis过期后保留截止时间

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RedisId=redistest&
    Action=GetRedisContractInfo&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<GetRedisContractInfoResponse>
    <startedAt>2014-07-22T03:00:00Z</startedAt>
    <extendTo>2014-08-26T03:00:00Z</extendTo>
    <expireAt>2014-08-25T03:00:00Z</expireAt>
</GetRedisContractInfoResponse>

json响应

{"GetRedisContractInfoResponse":
    {"startedAt": "2014-07-22T03:00:00Z",
     "extendTo": "2014-08-26T03:00:00Z",
     "expireAt": "2014-08-25T03:00:00Z"
    }
}

DescribeRedisMetrics

查看Redis监控项

请求参数:

参数名 类型 可选 说明
RedisId string 可选 查看的Redis的ID

返回数据:

返回MetricSet字段,包括:

字段名 类型 说明
Metric complexType 返回监控指标的信息

Metric包含如下信息:

字段名 类型 说明
instanceId string Redis实例id
instanceName string Redis实例名称
name string 监控指标名称
key string 监控指标metric key
lastvalue string 最近一次的监控值
valuetype string 监控值类型
units string 监控值得单位
lastclock datetime 最近一次得到监控值的时间
id string 监控指标的id

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeInstanceMetrics&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRedisMetricsResponse>
    <MetricSet>
        <Metric>
            <lastvalue>0.0000</lastvalue>
            <name>Key查询失败次数</name>
            <instanceId>3110aa6f-d6c2-46b6-b01a-042ad84e117c</instanceId>
            <valuetype>float</valuetype>
            <lastclock>2015-03-10 16:46:46</lastclock>
            <units></units>
            <instanceName>redistest</instanceName>
            <id>35864</id>
            <metric>mos.redis.keyspace_misses</metric>
        </Metric>
        <Metric>
            <lastvalue>1880800.0000</lastvalue>
            <name>内存使用量</name>
            <instanceId>3110aa6f-d6c2-46b6-b01a-042ad84e117c</instanceId>
            <valuetype>float</valuetype>
            <lastclock>2015-03-10 16:46:46</lastclock>
            <units></units>
            <instanceName>redistest</instanceName>
            <id>35865</id>
            <metric>mos.redis.used_memory</metric>
        </Metric>
        <Metric>
            <lastvalue>0.1752</lastvalue>
            <name>内存百分比</name>
            <instanceId>3110aa6f-d6c2-46b6-b01a-042ad84e117c</instanceId>
            <valuetype>float</valuetype>
            <lastclock>2015-03-10 16:46:46</lastclock>
            <units></units>
            <instanceName>redistest</instanceName>
            <id>35866</id>
            <metric>mos.redis.memory_used_ratio</metric>
        </Metric>
    </MetricSet>
</DescribeRedisMetricsResponse>

json响应

{"DescribeRedisMetricsResponse": {
    "MetricSet": {"
        Metric": [{
            "lastvalue": "0.0000",
            "name": "Key查询失败次数",
            "instanceId": "3110aa6f-d6c2-46b6-b01a-042ad84e117c",
            "valuetype": "float",
            "lastclock": "2015-03-10 17:28:47",
            "units": "",
            "instanceName": "redistest",
            "id": "35864",
            "metric": "mos.redis.keyspace_misses"
            }, {
            "lastvalue": "0.1753",
            "name": "内存使用百分比",
            "instanceId": "3110aa6f-d6c2-46b6-b01a-042ad84e117c",
            "valuetype": "float",
            "lastclock": "2015-03-10 17:28:47",
            "units": "%",
            "instanceName": "redistest",
            "id": "35863",
            "metric": "mos.redis.memory_used_ratio"
            }, {
            "lastvalue": "1882224.0000",
            "name": "内存使用量",
            "instanceId": "3110aa6f-d6c2-46b6-b01a-042ad84e117c",
            "valuetype": "float",
            "lastclock": "2015-03-10 17:28:47",
            "units": "Bytes",
            "instanceName": "redistest",
            "id": "35865",
            "metric": "mos.redis.used_memory"
            }]
         }
    }
}

CreateRedisAlarm

创建Redis指标监控

请求参数:

参数名 类型 可选 说明
RedisId string 必须 Redis ID或名称
Metric string 必须 监控指标key
Operator string 必须 判断操作符,支持GT,EQ,LT
Threshold string 必须 阈值
Description string 可选 描述

返回数据:

成功则返回值result为”创建成功”;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RedisId=3110aa6f-d6c2-46b6-b01a-042ad84e117c&
    Metric=mos.guest.memory_used_ratio&
    Operator=GT&
    Threshold=80&
    Action=CreateRedisAlarm&
    Description=测试
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateRedisAlarmResponse>
    <result>创建成功</result>
</CreateRedisAlarmResponse>

json响应

{"CreateRedisAlarmResponse":
    {"result": "创建成功"
    }
}

DeleteRedisAlarm

删除Redis指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DeleteRedisAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteRedisAlarmResponse>
    <return>True</return>
</DeleteRedisAlarmResponse>

json响应

{"DeleteRedisAlarmResponse":
    {"return": "True"
    }
}

EnableMetricAlarm

启用Redis指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=EnableRedisAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<EnableRedisAlarmResponse>
    <return>True</return>
</EnableRedisAlarmResponse>

json响应

{"EnableRedisAlarmResponse":
    {"return": True
    }
}

DisableRedisAlarm

禁用Redis指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲禁用的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=monitorid&
    Action=DisableRedisAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DisableRedisAlarmResponse>
    <return>True</return>
</DisableRedisAlarmResponse>

json响应

{"DisableRedisAlarmResponse":
    {"return": True
    }
}

DescribeRedisMetrics

查看Redis指标监控

请求参数:

返回数据:

返回RedisAlarmSet字段,包括:

字段名 类型 说明
MetricAlarm complexType 返回指标监控信息

MetricAlarm包含如下信息:

字段名 类型 说明
monitorId string 监控项ID
RedisId string Redis的ID
RedisName string Redis名称
RedisIPs string Redis的ip
description string 描述
status string 指标监控项启用状态
value string 指标监控项监控状态
expression string 指标监控描述

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeRedisAlarms&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRedisAlarmsResponse>
    <RedisAlarmSet>
        <RedisAlarm>
            <status>已启用</status>
            <monitorId>redischeck::3110aa6f-d6c2-46b6-b01a-042ad84e117c::mos.redis.used_memory:GT:1::MOS</monitorId>
            <description>redischeck: mos.redis.used_memory&gt;1</description>
            <redisIPs>10.0.233.253</redisIPs>
            <value>正常</value>
            <redisId>3110aa6f-d6c2-46b6-b01a-042ad84e117c</redisId>
            <redisName>redistest</redisName>
            <expression>mos.redis.used_memory&gt;1</expression>
        </RedisAlarm>
    </RedisAlarmSet>
</DescribeRedisAlarmsResponse>

json响应

{"DescribeRedisAlarmsResponse": {
    "RedisAlarmSet": {
        "RedisAlarm": [{
            "status": "已启用",
            "monitorId": "redischeck::3110aa6f-d6c2-46b6-b01a-042ad84e117c::mos.redis.used_memory:GT:1::MOS",
            "description": "redischeck: mos.redis.used_memory>1",
            "redisIPs": "10.0.233.253",
            "value": "正常",
            "redisId": "3110aa6f-d6c2-46b6-b01a-042ad84e117c",
            "redisName": "redistest",
            "expression": "mos.redis.used_memory>1"
            }]
        }
    }
}

RDS API

CreateRDS

创建RDS实例

请求参数:

字段名 类型 可选 说明
RDSType string 必选 创建的RDS类型ID或名称
ExtraExtDisksize integer 必选 指定创建的RDS使用的数据盘,单位为GB
Engine string 必选 指定创建的RDS使用的引擎
RDSUsername string 必选 指定创建的RDS的用户名
RDSPassword string 必选 指定创建的RDS的用户密码
RDSName string 必选 指定创建的RDS的名称
AvailabilityZoneId string 必选 指定创建的RDS所在的可用区域(AvailabilityZone)
Duration string 可选 指定创建的RDS的续费周期,单位:’H’(小时)、’M’(月),缺省为‘1M’,即一个月

返回数据:

如果成功,返回生成的RDS信息,包含如下字段:

字段名 类型 说明
rdsId string RDS的ID
rdsName string RDS的名称
rdsType string RDS的类型
volume integer RDS的数据盘大小i,单位为GB
engine string RDS使用的引擎
status string RDS的状态
ipAddress string RDS的IP地址
availabilityZone string RDS所在的可用区域
createdAt datetime RDS的创建时间

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSType=C1_M1&
    ExtraExtDisksize=10&
    Engine=mysql-5.5&
    RDSUsername=test&
    RDSPassword=test&
    RDSName=rdstest&
    AvailabilityZoneId=zone0&
    Duration=1M&
    Action=CreateRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateRDSResponse>
    <RDS>
        <rdsId>484728e4-9688-4640-a771-30400c05523e</rdsId>
        <rdsName>rdstest</rdsName>
        <rdsType>C1_M1</rdsType>
        <volume>10</volume>
        <engine>mysql-5.5</engine>
        <status>init</status>
        <ipAddress>10.0.233.252</ipAddress>
        <availabilityZone>zone0</availabilityZone>
        <createdAt>2015-05-21T03:26:13Z</createdAt>
    </RDS>
</CreateRDSResponse>

json响应

{"CreateRDSResponse": {
    "RDS": {
        "rdsId": "484728e4-9688-4640-a771-30400c05523e",
        "rdsName": "rdstest",
        "rdsType": "C1_M1",
        "volume": "10",
        "engine": "mysql-5.5",
        "status": "init",
        "ipAddress": "10.0.233.252",
        "availabilityZone": "zone0",
        "createdAt": "2015-05-21T03:26:13Z"
        }
    }
}

DescribeRDS

列出所有或指定的用户RDS实例

请求参数

参数名 类型 可选 说明
RDSId.n string 可选 指定RDS的ID,n从1开始
RDSName.n string 可选 指定RDS的Name,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name, status
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回RDSSet包含如下字段:

字段名 类型 说明
RDS complexType 返回的RDS信息
Total integer 满足查询条件的RDS个数
Limit integer 实际返回的RDS个数
Offset integer RDS的偏移量

RDS包含的字段:

字段名 类型 说明
rdsId string RDS的ID
rdsName string RDS的名称
rdsType string RDS的类型
volume integer RDS的数据盘大小i,单位为GB
engine string RDS使用的引擎
status string RDS的状态
ipAddress string RDS的IP地址
availabilityZone string RDS所在的可用区域
createdAt string RDS的创建时间

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRDSResponse>
    <RDSSet>
        <RDS>
            <rdsId>484728e4-9688-4640-a771-30400c05523e</rdsId>
            <rdsName>rdstest</rdsName>
            <rdsType>C1_M1</rdsType>
            <volume>10</volume>
            <engine>mysql-5.5</engine>
            <status>init</status>
            <ipAddress>10.0.233.252</ipAddress>
            <availabilityZone>zone0</availabilityZone>
            <createdAt>2015-05-21T03:26:13Z</createdAt>
        </RDS>
    </RDSSet>
</DescribeRDSResponse>

json响应

{"DescribeRDSResponse": {
    "RDSSet": {
        "RDS": [{
            "rdsId": "484728e4-9688-4640-a771-30400c05523e",
            "rdsName": "rdstest",
            "rdsType": "C1_M1",
            "volume": "10",
            "engine": "mysql-5.5",
            "status": "init",
            "ipAddress": "10.0.233.252",
            "availabilityZone": "zone0",
            "createdAt": "2015-05-21T03:26:13Z"
            }]
        }
    }
}

StartRDS

启动指定RDS实例。RDS在ready状态时才能成功启动。

请求参数:

参数名 类型 可选 说明
RDSId string 必须 启动的RDS ID或名称

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    Action=StartRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StartRDSResponse>
    <return>True</return>
</StartRDSResponse>

json响应

{"StartRDSResponse":
    {"return": "True"
    }
}

StopRDS

停止指定RDS实例。只有RDS在running状态时才能成功停止RDS。如果指定强制停止,则RDS进程立即退出,可能会造成RDS内部数据丢失。

请求参数:

参数名 类型 可选 说明
RDSId string 必须 指定的RDS ID
Force boolean 可选 是否强制立即停止

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    Action=StopRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StopRDSResponse>
    <return>True</return>
</StopRDSResponse>

json响应

{"StopRDSResponse":
    {"return": "True"
    }
}

RestartRDS

重启指定RDS实例。

请求参数:

参数名 类型 可选 说明
RDSId string 必须 指定RDS ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    Action=RestartRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RestartRDSResponse>
    <return>True</return>
</RestartRDSResponse>

json响应

{"RestartRDSResponse":
    {"return": "True"
    }
}

TerminateRDS

删除指定RDS实例。

请求参数:

参数名 类型 可选 说明
RDSId string 必须 删除的RDS ID或名称

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    Action=TerminateRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<TerminateRDSResponse>
    <return>True</return>
</TerminateRDSResponse>

json响应

{"TerminateRDSResponse":
    {"return": "True"
    }
}

ChangeRDSType

更改指定RDS实例的类型。注意:该操作涉及帐户扣费,请保证帐户有足够余额,否则将更改失败

字段名 类型 可选 说明
RDSId string 必选 更改类型的RDS ID或名称
RDSType string 必选 更改的RDS类型
ExtraExtDisksize integer 必选 指定创建的RDS使用的数据盘,单位为GB
Duration string 可选 更改的RDS的续费周期,单位:’H’(小时)、’M’(月),缺省为‘1M’,即一个月

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    RDSType=C2_M2&
    ExtraExtDisksize=20&
    Duration=1M&
    Action=ChangeRDSType&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ChangeRDSTypeResponse>
    <return>True</return>
</ChangeRDSTypeResponse>

json响应

{"ChangeRDSTypeResponse":
    {"return": "True"
    }
}

DescribeRDSTypes

列出所有用户可以使用的RDS套餐类型,在创建RDS,更改RDS类型时,需要相关信息。

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段名为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回RDSTypeSet,包含如下子段:

字段名 类型 说明
RDSType complextype RDS类型定义
Total integer 返回符合条件的RDS类型总量
Limit integer 返回RDS类型的数量
Offset integer 返回RDS类型的偏移量

RDSType包含如下子段:

字段名 类型 说明
rdsTypeId string RDS类型ID
rdsType string RDS类型名称
cpu integer 该类型RDS CPU核数,单位为个
memory integer 该类型RDS内存大小,单位为MB

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Limit=1&
    Action=DescribeRDSTypes&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRDSTypesResponse>
    <RDSTypeSet>
        <Total>5</Total>
        <Limit>1</Limit>
        <RDSType>
            <rdsTypeId>40f2b8bd-ecb4-453e-a6a1-05a57cf7fac0</rdsTypeId>
            <rdsType>C1_M1</rdsType>
            <cpu>1</cpu>
            <memory>1024</memory>
        </RDSType>
    </RDSTypeSet>
</DescribeRDSTypesResponse>

json响应

{"DescribeRDSTypesResponse":
    {"RDSTypeSet":
        {"Total": 5,
         "Limit": 1,
         "RDSType": [
            {"rdsTypeId": "40f2b8bd-ecb4-453e-a6a1-05a57cf7fac0",
            "rdsType": "C1_M1",
            "cpu": 1,
            "memory": 1024
            }
         ]
        }
    }
}

DescribeRDSEngines

列出所有用户可以使用的RDS引擎,在创建RDS时,需要相关信息。

请求参数:

返回数据:

返回RDSEngineSet,包含如下子段:

字段名 引擎 说明
RDSEngine complextype RDS引擎定义

RDSEngine包含如下子段:

字段名 引擎 说明
engineName string RDS引擎名称

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeRDSEngines&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRDSEnginesResponse>
    <RDSEngineSet>
        <RDSEngine>
            <engineName>mysql-5.5</engineName>
        </RDSEngine>
    </RDSEngineSet>
</DescribeRDSEnginesResponse>

json响应

{"DescribeRDSEnginesResponse":
    {"RDSEngineSet":
        {"RDSEngine": [
            {"engineName": "mysql-5.5"
            }
         ]
        }
    }
}

RenewRDS

续期指定RDS实例。注意:该操作涉及帐户扣费,请保证帐户有足够余额,否则将续期失败

请求参数:

参数名 类型 可选 说明
RDSId string 必须 续期的RDS ID或名称
Duration string 可选 指定续期时间,格式为数字+H/M(小时/月),例如1H, 72H或者1M。如果不指定,缺省为1M

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    Duration=72H&
    Action=RenewRDS&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RenewRDSResponse>
    <return>True</return>
</RenewRDSResponse>

json响应

{"RenewRDSResponse":
    {"return": "True"
    }
}

GetRDSContractInfo

获得指定RDS实例的合同时间信息。

请求参数:

参数名 类型 可选 说明
RDSId string 必须 指定RDS ID

返回数据:

返回如下字段:

字段名 类型 说明
startedAt datetime RDS租约开始时间
expireAt datetime RDS租约到期时间
extendTo datetime 如果未按期续费,RDS过期后保留截止时间

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=484728e4-9688-4640-a771-30400c05523e&
    Action=GetRDSContractInfo&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<GetRDSContractInfoResponse>
    <startedAt>2015-05-24T03:26:13Z</startedAt>
    <extendTo>2015-05-25T03:26:13Z</extendTo>
    <expireAt>2015-05-21T03:26:13Z</expireAt>
</GetRDSContractInfoResponse>

json响应

{"GetRDSContractInfoResponse":
    {"startedAt": "2015-05-24T03:26:13Z",
     "extendTo": "2015-05-25T03:26:13Z",
     "expireAt": "2015-05-21T03:26:13Z"
    }
}

CreateRDSAlarm

创建RDS指标监控

请求参数:

返回数据:

成功则返回值result为”创建成功”;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    RDSId=b2a2240e-7d5e-4b60-a147-4c95e4208187&
    Metric=mos.guest.cpu.percent&
    Operator=GT&
    Threshold=50&
    Action=CreateRDSAlarm&
    Description=测试
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateRDSAlarmResponse>
    <result>创建成功</result>
</CreateRDSAlarmResponse>

json响应

{"CreateRDSAlarmResponse":
    {"result": "创建成功"
    }
}

DeleteRDSAlarm

删除RDS指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=rdscheck::a3897da4-6887-43cf-a020-fafcc01541e0::mos.guest.cpu.percent:GT:50::MOS&
    Action=DeleteRDSAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteRDSAlarmResponse>
    <return>True</return>
</DeleteRDSAlarmResponse>

json响应

{"DeleteRDSAlarmResponse":
    {"return": "True"
    }
}

EnableMetricAlarm

启用RDS指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=rdscheck::a3897da4-6887-43cf-a020-fafcc01541e0::mos.guest.cpu.percent:GT:50::MOS&
    Action=EnableRDSAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<EnableRDSAlarmResponse>
    <return>True</return>
</EnableRDSAlarmResponse>

json响应

{"EnableRDSAlarmResponse":
    {"return": True
    }
}

DisableRDSAlarm

禁用RDS指标监控

请求参数:

参数名 类型 可选 说明
MonitorId string 必须 欲禁用的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    MonitorId=rdscheck::a3897da4-6887-43cf-a020-fafcc01541e0::mos.guest.cpu.percent:GT:50::MOS&
    Action=DisableRDSAlarm&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DisableRDSAlarmResponse>
    <return>True</return>
</DisableRDSAlarmResponse>

json响应

{"DisableRDSAlarmResponse":
    {"return": True
    }
}

DescribeRDSMetrics

查看RDS指标监控

请求参数:

返回数据:

返回RDSAlarmSet字段,包括:

字段名 类型 说明
MetricAlarm complexType 返回指标监控信息

MetricAlarm包含如下信息:

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeRDSAlarms&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeRDSAlarmsResponse>
    <RDSAlarmSet>
        <RDSAlarm>
            <status>已启用</status>
            <monitorId>rdscheck::a3897da4-6887-43cf-a020-fafcc01541e0::mos.guest.cpu.percent:GT:50::MOS</monitorId>
            <description>rdscheck: mos.guest.cpu.percent&gt;50</description>
            <rdsIPs>172.16.8.209</rdsIPs>
            <value>正常</value>
            <rdsId>a3897da4-6887-43cf-a020-fafcc01541e0</rdsId>
            <rdsName>rdstest</redisName>
            <expression>rdscheck: mos.guest.cpu.percent&gt;50</expression>
        </RDSAlarm>
    </RDSAlarmSet>
</DescribeRDSAlarmsResponse>

json响应

{"DescribeRDSAlarmsResponse": {
    "RDSAlarmSet": {
        "RDSAlarm": [{
            "status": "已启用",
            "monitorId": "rdscheck::a3897da4-6887-43cf-a020-fafcc01541e0::mos.guest.cpu.percent:GT:50::MOS",
            "description": "rdscheck: mos.guest.cpu.percent>50",
            "rdsIPs": "172.16.8.209",
            "value": "正常",
            "rdsId": "a3897da4-6887-43cf-a020-fafcc01541e0",
            "rdsName": "rdstest",
            "expression": "rdscheck: mos.guest.cpu.percent>50"
            }]
        }
    }
}

ELB API

CreateLoadBalancer

新建ELB实例。

请求参数:

参数名 类型 可选 说明
Name string 必须 ELB的名称,以字母开头,仅包含字母、数字或中划线的3-40个字符。
AllocationId string 可选 指定与ELB绑定的浮动IP的AllocationId
Bandwidth int 可选 指定ELB外网服务的带宽值

返回数据:

字段名 类型 说明
loadBalancerId string ELB的实例ID
allocationId string 所绑定浮动IP的ID
name string ELB的自定义名称
status string ELB当前状态
bandwidth string ELB的带宽限制

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Name=test4&
    Action=CreateLoadBalancer&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateLoadBalancerResponse>
    <LoadBalancer>
        <status>init</status>
        <name>test4</name>
        <loadBalancerId>ef1faca5-22ec-4a3f-94b9-a57ed771f221</loadBalancerId>
    </LoadBalancer>
</CreateLoadBalancerResponse>

json响应

{
  "CreateLoadBalancerResponse": {
    "LoadBalancer": {
      "status": "init",
      "name": "test2",
      "loadBalancerId": "c95dfdfa-801e-4bde-9e57-4e90952b965a"
    }
  }
}

ModifyLoadBalancerAttributes

配置ELB实例信息。

请求参数:

参数名 类型 可选 说明
LoadBalancerId string 必须 指定ELB的实例ID
Name string 可选 变更自定义名称
Bandwidth integer 可选 变更ELB带宽
AllocationId string 可选 变更ELB绑定浮动IP的ID(或者IP)

返回数据:

字段名 类型 说明
loadBalancerId string ELB的实例ID
allocationId string 所绑定浮动IP的ID
name string ELB的自定义名称
status string ELB当前状态
bandwidth string ELB的带宽限制

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ModifyLoadBalancerAttributes&
    Name=t2&
    Bandwidth=200&
    LoadBalancerId=6bb09022-40b9-4f59-8080-c0fc595354a1&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ModifyLoadBalancerAttributesResponse>
    <LoadBalancer>
        <status>running</status>
        <bandwidth>200</bandwidth>
        <allocationId>c0970ecb-f779-4348-9e54-1362fcc44848</allocationId>
        <name>t2</name>
        <loadBalancerId>6bb09022-40b9-4f59-8080-c0fc595354a1</loadBalancerId>
    </LoadBalancer>
</ModifyLoadBalancerAttributesResponse>

json响应

{
  "ModifyLoadBalancerAttributesResponse": {
    "LoadBalancer": {
      "status": "running",
      "bandwidth": 200,
      "loadBalancerId": "6bb09022-40b9-4f59-8080-c0fc595354a1",
      "allocationId": "c0970ecb-f779-4348-9e54-1362fcc44848",
      "name": "t2"
    }
  }
}

DeleteLoadBalancer

删除指定的ELB实例。

请求参数:

参数名 类型 可选 说明
LoadBalancerId string 必须 指定ELB的实例ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DeleteLoadBalancer&
    LoadBalancerId=4937c398-70d0-4e47-aa3e-68b6668e1e77&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteLoadBalancerResponse>
    <return>True</return>
</DeleteLoadBalancerResponse>

json响应

{"DeleteLoadBalancerResponse": {"return": true}}

DescribeLoadBalancers

获取指定或全部ELB实例信息列表。

请求参数:

参数名 类型 可选 说明
LoadBalancerId.n string 可选 指定ELB的实例ID,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

字段名 类型 说明
loadBalancerId string ELB的实例ID
allocationId string 所绑定浮动IP的ID
name string ELB的自定义名称
status string ELB当前状态
bandwidth string ELB的带宽限制

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeLoadBalancers&
    LoadBalancerId.1=6bb09022-40b9-4f59-8080-c0fc595354a1&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeLoadBalancersResponse>
    <LoadBalancerSet>
        <LoadBalancer>
            <status>running</status>
            <bandwidth>10</bandwidth>
            <allocationId>c0970ecb-f779-4348-9e54-1362fcc44848</allocationId>
            <name>l1</name>
            <loadBalancerId>6bb09022-40b9-4f59-8080-c0fc595354a1</loadBalancerId>
        </LoadBalancer>
    </LoadBalancerSet>
</DescribeLoadBalancersResponse>

json响应

{
  "DescribeLoadBalancersResponse": {
    "LoadBalancerSet": {
      "LoadBalancer": [
        {
          "status": "running",
          "bandwidth": 10,
          "loadBalancerId": "6bb09022-40b9-4f59-8080-c0fc595354a1",
          "allocationId": "c0970ecb-f779-4348-9e54-1362fcc44848",
          "name": "l1"
        },
        {
          "status": "init",
          "bandwidth": 10,
          "name": "l2",
          "loadBalancerId": "4937c398-70d0-4e47-aa3e-68b6668e1e77"
        }
      ]
    }
  }
}

CreateLoadBalancerListener

新增监听转发策略。

请求参数:

参数名 类型 可选 说明
Alg string 必须 有效值为wrr(加权轮询)、rr(轮询)。转发调度策略
Protocol string 必须 有效值TCP、HTTP、HTTPS。转发协议
FrontendPort integer 必须 监听转发规则的对外服务端口
BackendPort integer 必须 监听转发规则到后端服务器池的端口
EnableSessionSticky boolean 必须 是否打开会话保持
Name string 必须 自定义名称
LoadBalancerId string 必须 ELB实例的ID
CheckInterval integer 可选 默认5。健康检查时间间隔
CheckRise integer 可选 连续健康检查成功多少次后,认为后端服务可用
CheckFall integer 可选 连续健康检查失败多少次后,认为后端服务不可用
CheckTimeout integer 可选 默认3。健康检查超时时间
Domain string 可选 转发规则对应的域名
Location string 可选 转发规则对应的URL location
CookieName string 可选 指定七层会话保持的cookie名称
CheckUrl string 可选 健康检查URL
SessionMode string 可选 会话保持模式
SessionTimeout integer 可选 会话保持超时时间
CertificateId string 可选 Https类型转发对应的证书ID

返回数据:

字段名 类型 说明
listenerId string 转发监听策略的ID
name string 转发监听策略的名称
loadBalancerId string ELB的实例ID
frontendPort integer 监听端口
backendPort integer 后端转发端口
alg string 转发调度策略
protocol string 转发协议
enableSessionSticky boolean 是否打开回话保持
sessionMode string 会话保持模式
sessionTimeout integer 会话保持超时时间
checkFall integer 健康检查失败次数阈值
checkRise integer 健康检查成功次数阈值
checkTimeout integer 健康检查超时时间
checkInterval integer 健康检查时间间隔
cookieName string 指定会话保持cookie名称
location string 转发规则对应的URL

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    EnableSessionSticky=True&
    Protocol=TCP&
    Name=lB&
    BackendPort=8080&
    LoadBalancerId=6bb09022-40b9-4f59-8080-c0fc595354a1&
    Alg=rr&
    Action=CreateLoadBalancerListener&
    FrontendPort=8090&
    SessionMode=insert&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateLoadBalancerListenerResponse>
    <Listener>
        <sessionMode>insert</sessionMode>
        <enableSessionSticky>1</enableSessionSticky>
        <checkFall>3</checkFall>
        <protocol>TCP</protocol>
        <checkTimeout>3</checkTimeout>
        <checkInterval>5</checkInterval>
        <alg>rr</alg>
        <backendPort>8080</backendPort>
        <listenerId>14b64007-ffcf-489f-ab08-3a1d35e77c49</listenerId>
        <cookieName>SRVID</cookieName>
        <sessionTimeout>600</sessionTimeout>
        <location>/</location>
        <loadBalancerId>6bb09022-40b9-4f59-8080-c0fc595354a1</loadBalancerId>
        <frontendPort>8090</frontendPort>
        <checkRise>3</checkRise>
        <name>lB</name>
    </Listener>
</CreateLoadBalancerListenerResponse>

json响应

{
  "CreateLoadBalancerListenerResponse": {
    "Listener": {
      "enableSessionSticky": 1,
      "checkFall": 3,
      "protocol": "TCP",
      "checkTimeout": 3,
      "checkInterval": 5,
      "alg": "rr",
      "backendPort": 8080,
      "listenerId": "eeb18d70-d22a-40ea-8936-8dc510c605fa",
      "cookieName": "SRVID",
      "sessionTimeout": 600,
      "location": "\/",
      "loadBalancerId": "6bb09022-40b9-4f59-8080-c0fc595354a1",
      "frontendPort": 8091,
      "checkRise": 3,
      "sessionMode": "insert",
      "name": "lC"
    }
  }
}

DescribeLoadBalancerListeners

获取指定或全部监听转发策略列表。

请求参数:

参数名 类型 可选 说明
ListenerId.n string 可选 指定Listener的ID,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

字段名 类型 说明
listenerId string 转发监听策略的ID
name string 转发监听策略的名称
loadBalancerId string ELB的实例ID
frontendPort integer 监听端口
backendPort integer 后端转发端口
alg string 转发调度策略
protocol string 转发协议
enableSessionSticky boolean 是否打开回话保持
sessionMode string 会话保持模式
sessionTimeout integer 会话保持超时时间
checkFall integer 健康检查失败次数阈值
checkRise integer 健康检查成功次数阈值
checkTimeout integer 健康检查超时时间
checkInterval integer 健康检查时间间隔
cookieName string 指定会话保持cookie名称
location string 转发规则对应的URL

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeLoadBalancerListeners&
    ListenerId.1=7bc312d1-01ea-4693-b10c-b6cf018c1e30&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeLoadBalancerListenersResponse>
    <ListenerSet>
        <Listener>
            <sessionMode>insert</sessionMode>
            <enableSessionSticky>True</enableSessionSticky>
            <checkFall>3</checkFall>
            <protocol>TCP</protocol>
            <checkTimeout>3</checkTimeout>
            <checkInterval>5</checkInterval>
            <alg>rr</alg>
            <backendPort>8080</backendPort>
            <listenerId>7bc312d1-01ea-4693-b10c-b6cf018c1e30</listenerId>
            <cookieName>SRVID</cookieName>
            <sessionTimeout>600</sessionTimeout>
            <location>/</location>
            <loadBalancerId>6bb09022-40b9-4f59-8080-c0fc595354a1</loadBalancerId>
            <frontendPort>8080</frontendPort>
            <checkRise>3</checkRise>
            <name>lA</name>
        </Listener>
    </ListenerSet>
</DescribeLoadBalancerListenersResponse>

json响应

{
  "DescribeLoadBalancerListenersResponse": {
    "ListenerSet": {
      "Listener": [
        {
          "enableSessionSticky": true,
          "checkFall": 3,
          "protocol": "TCP",
          "checkTimeout": 3,
          "checkInterval": 5,
          "alg": "rr",
          "backendPort": 8080,
          "listenerId": "7bc312d1-01ea-4693-b10c-b6cf018c1e30",
          "cookieName": "SRVID",
          "sessionTimeout": 600,
          "location": "\/",
          "loadBalancerId": "6bb09022-40b9-4f59-8080-c0fc595354a1",
          "frontendPort": 8080,
          "checkRise": 3,
          "sessionMode": "insert",
          "name": "lA"
        },
        {
          "enableSessionSticky": true,
          "checkFall": 3,
          "protocol": "TCP",
          "checkTimeout": 3,
          "checkInterval": 5,
          "alg": "rr",
          "backendPort": 8080,
          "listenerId": "2710ffa6-1942-4438-9cda-dded3e26ae41",
          "cookieName": "SRVID",
          "sessionTimeout": 600,
          "location": "\/",
          "loadBalancerId": "6bb09022-40b9-4f59-8080-c0fc595354a1",
          "frontendPort": 80,
          "checkRise": 3,
          "sessionMode": "insert",
          "name": "listenerA"
        }
      ]
    }
  }
}

ConfigLoadBalancerListeners

配置指定的监听转发策略。

请求参数:

参数名 类型 可选 说明
ListenerId string 必须 转发调度策略的ID
Alg string 可选 有效值为wrr(加权轮询)、rr(轮询)。转发调度策略
Protocol string 可选 有效值TCP、HTTP、HTTPS。转发协议
FrontendPort integer 可选 监听转发规则的对外服务端口
BackendPort integer 可选 监听转发规则到后端服务器池的端口
EnableSessionSticky boolean 可选 是否打开会话保持
Name string 可选 自定义名称
CheckInterval integer 可选 默认5。健康检查时间间隔
CheckRise integer 可选 连续健康检查成功多少次后,认为后端服务可用
CheckFall integer 可选 连续健康检查失败多少次后,认为后端服务不可用
CheckTimeout integer 可选 默认3。健康检查超时时间
Domain string 可选 转发规则对应的域名
Location string 可选 转发规则对应的URL location
CookieName string 可选 指定七层会话保持的cookie名称
CheckUrl string 可选 健康检查URL
SessionMode string 可选 会话保持模式
SessionTimeout integer 可选 会话保持超时时间
CertificateId string 可选 Https类型转发对应的证书ID

返回数据:

字段名 类型 说明
listenerId string 转发监听策略的ID
name string 转发监听策略的名称
loadBalancerId string ELB的实例ID
frontendPort integer 监听端口
backendPort integer 后端转发端口
alg string 转发调度策略
protocol string 转发协议
enableSessionSticky boolean 是否打开回话保持
sessionMode string 会话保持模式
sessionTimeout integer 会话保持超时时间
checkFall integer 健康检查失败次数阈值
checkRise integer 健康检查成功次数阈值
checkTimeout integer 健康检查超时时间
checkInterval integer 健康检查时间间隔
cookieName string 指定会话保持cookie名称
location string 转发规则对应的URL

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ConfigLoadBalancerListener&
    Name=change&
    ListenerId=7bc312d1-01ea-4693-b10c-b6cf018c1e30&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ConfigLoadBalancerListenerResponse>
    <Listener>
        <sessionMode>insert</sessionMode>
        <enableSessionSticky>True</enableSessionSticky>
        <checkFall>3</checkFall>
        <protocol>TCP</protocol>
        <checkTimeout>3</checkTimeout>
        <checkInterval>5</checkInterval>
        <alg>rr</alg>
        <backendPort>8080</backendPort>
        <listenerId>7bc312d1-01ea-4693-b10c-b6cf018c1e30</listenerId>
        <cookieName>SRVID</cookieName>
        <sessionTimeout>600</sessionTimeout>
        <location>/</location>
        <loadBalancerId>6bb09022-40b9-4f59-8080-c0fc595354a1</loadBalancerId>
        <frontendPort>8080</frontendPort>
        <checkRise>3</checkRise>
        <name>change2</name>
    </Listener>
</ConfigLoadBalancerListenerResponse>

json响应

{
  "ConfigLoadBalancerListenerResponse": {
    "Listener": {
      "enableSessionSticky": true,
      "checkFall": 3,
      "protocol": "TCP",
      "checkTimeout": 3,
      "checkInterval": 5,
      "alg": "rr",
      "backendPort": 8080,
      "listenerId": "7bc312d1-01ea-4693-b10c-b6cf018c1e30",
      "cookieName": "SRVID",
      "sessionTimeout": 600,
      "location": "\/",
      "loadBalancerId": "6bb09022-40b9-4f59-8080-c0fc595354a1",
      "frontendPort": 8080,
      "checkRise": 3,
      "sessionMode": "insert",
      "name": "change"
    }
  }
}

DeleteLoadBalanacerListener

删除指定的监听转发策略。

请求参数:

参数名 类型 可选 说明
ListenerId string 必须 监听转发策略的ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    ListenerId=7bc312d1-01ea-4693-b10c-b6cf018c1e30&
    Action=DeleteLoadBalancerListener&
    AUTHDATA

xml响应

<DeleteLoadBalancerListenerResponse>
    <return>True</return>
</DeleteLoadBalancerListenerResponse>

json响应

{"DeleteLoadBalancerListenerResponse": {"return": true}}

RegisterBackendWithListener

给Listener添加后端转发。

请求参数:

参数名 类型 可选 说明
ListenerId string 必须 添加到的Listener ID
ServerId string 必须 待添加的Server ID
Name string 必须 Server的自定义名称
Weight integer 可选 变更转发权重
Port integer 可选 变更转发端口

返回数据:

字段名 类型 说明
backendId string backend的ID
name string backend的名称
weight integer 转发权重
ip string backend的IP地址
listenerId string 对应的listener ID
serverId string 对应的serverId

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Name=backA&
    ListenerId=eeb18d70-d22a-40ea-8936-8dc510c605fa&
    Action=RegisterBackendWithListener&
    ServerId=886d7b8b-23e0-484e-ae54-f17c6becd1b4&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<RegisterBackendWithListenerResponse>
    <Backend>
        <name>lC-dev-2</name>
        <weight>1</weight>
        <ip>10.0.233.7</ip>
        <listenerId>eeb18d70-d22a-40ea-8936-8dc510c605fa</listenerId>
        <backendId>4187bb20-6d8e-4ce6-b09b-c3900f93c351</backendId>
        <serverId>886d7b8b-23e0-484e-ae54-f17c6be4d1b4</serverId>
    </Backend>
</RegisterBackendWithListenerResponse>

json响应

{
   "RegisterBackendWithListenerResponse": {
     "Backend": {
       "name": "lC-dev-1",
       "weight": 100,
       "ip": "10.0.233.6",
       "listenerId": "eeb18d70-d22a-40ea-8936-8dc510c605fa",
       "backendId": "fd63f97a-c430-4900-bcaa-8ef8e2acd202",
       "serverId": "886d7b8b-23e0-484e-ae54-f17c6becd1b4"
     }
   }
 }

ConfigListenerBackend

给Listener添加后端转发。

请求参数:

参数名 类型 可选 说明
BackendId string 必须 待配置的Backend ID
Weight integer 可选 变更转发权重
Port integer 可选 变更转发端口
ListenerId string 可选 变化Backend关联的Listener

返回数据:

字段名 类型 说明
backendId string backend的ID
name string backend的名称
weight integer 转发权重
ip string backend的IP地址
listenerId string 对应的listener ID
serverId string 对应的serverId

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Weight=20&
    BackendId=4187bb20-6d8e-4ce6-b09b-c3900f93c351&
    Action=ConfigListenerBackend&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ConfigListenerBackendResponse>
    <Backend>
        <name>lC-dev-2</name>
        <weight>20</weight>
        <ip>10.0.233.7</ip>
        <listenerId>eeb18d70-d22a-40ea-8936-8dc510c605fa</listenerId>
        <backendId>4187bb20-6d8e-4ce6-b09b-c3900f93c351</backendId>
        <serverId>886d7b8b-23e0-484e-ae54-f17c6be4d1b4</serverId>
        <port>20</port>
    </Backend>
</ConfigListenerBackendResponse>

json响应

{
  "ConfigListenerBackendResponse": {
    "Backend": {
      "name": "lC-dev-2",
      "weight": "20",
      "ip": "10.0.233.7",
      "listenerId": "eeb18d70-d22a-40ea-8936-8dc510c605fa",
      "backendId": "4187bb20-6d8e-4ce6-b09b-c3900f93c351",
      "serverId": "886d7b8b-23e0-484e-ae54-f17c6be4d1b4"
    }
  }
}

DescribeListenerBackends

获取一个Listener对应的一组或全部后端转发

请求参数:

参数名 类型 可选 说明
ListenerId string 必须 Listener ID
BackendId.n string 可选 指定与Listener绑定的Backend ID
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

字段名 类型 说明
backendId string backend的ID
name string backend的名称
weight integer 转发权重
ip string backend的IP地址
listenerId string 对应的listener ID
serverId string 对应的serverId

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    ListenerId=eeb18d70-d22a-40ea-8936-8dc510c605fa&
    Action=DescribeListenerBackends&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
 <DescribeListenerBackendsResponse>
     <BackendSet>
         <Backend>
             <name>lC-dev-2</name>
             <weight>1</weight>
             <ip>10.0.233.7</ip>
             <listenerId>eeb18d70-d22a-40ea-8936-8dc510c605fa</listenerId>
             <backendId>4187bb20-6d8e-4ce6-b09b-c3900f93c351</backendId>
             <serverId>886d7b8b-23e0-484e-ae54-f17c6be4d1b4</serverId>
         </Backend>
         <Backend>
             <name>lC-dev-1</name>
             <weight>100</weight>
             <ip>10.0.233.6</ip>
             <listenerId>eeb18d70-d22a-40ea-8936-8dc510c605fa</listenerId>
             <backendId>fd63f97a-c430-4900-bcaa-8ef8e2acd202</backendId>
             <serverId>886d7b8b-23e0-484e-ae54-f17c6becd1b4</serverId>
         </Backend>
     </BackendSet>
 </DescribeListenerBackendsResponse>

json响应

{
   "DescribeListenerBackendsResponse": {
     "BackendSet": {
       "Backend": [
         {
           "name": "lC-dev-2",
           "weight": 1,
           "ip": "10.0.233.7",
           "listenerId": "eeb18d70-d22a-40ea-8936-8dc510c605fa",
           "backendId": "4187bb20-6d8e-4ce6-b09b-c3900f93c351",
           "serverId": "886d7b8b-23e0-484e-ae54-f17c6be4d1b4"
         }
       ]
     }
   }
 }

DeregisterBackendWithListener

删除指定的后端。

请求参数:

参数名 类型 可选 说明
BackendId string 必须 后端的ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BackendId=4187bb20-6d8e-4ce6-b09b-c3900f93c351&
    Action=DeregisterBackendWithListener&
    AUTHDATA

xml响应

<DeregisterBackendWithListenerResponse><
    return>True</return>
</DeregisterBackendWithListenerResponse>

json响应

{"DeregisterBackendWithListenerResponse": {"return": true}}

BigData API

DescribeBDSystems

获取所有的BigDataSystem实例信息

请求参数:

参数名 类型 可选 说明
BigDataSystemId.n string 可选 指定BigDataSystem的ID,n从1开始
BigDataSystemName.n string 可选 指定BigDataSystem的Name,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name, status
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始
ZoneId string 可选 查询对应zone下面的BigDataSystem

返回数据:

返回BigDataSystemSet包含如下字段:

字段名 类型 说明
BigDataSystem complexType 返回的BigDataSystem信息
Total integer 满足查询条件的虚拟机个数
Limit integer 实际返回的虚拟机个数
Offset integer 虚拟机的偏移量

BigDataSystem包含的字段:

字段名 类型 说明
ZoneId string 集群所在zone的ID
Status string 集群所处状态
SlaveCount integer 集群规模
BigDataSystemName string 集群名称
BigDataSystemVersion string 集群版本号
BigDataSystemId string 集群ID
CreateAt string 集群创建时间
BillingType string 付费类型
BigDataSystemType string BigDataSystem类型ID
Architecture string 集群的架构类型
Description string 描述信息
Parameters dict 一些配置参数

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    OrderBy=status&Filter.1.Name=name&
    Limit=3&Action=DescribeBDSystems&
    Filter.1.Value.1=mos1230&Order=desc&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeBDSystemsResponse>
    <BigDataSystemSet>
        <BigDataSystem>
            <Status>running</Status>
            <BillingType>postpay</BillingType>
            <BigDataSystemName>mos1230</BigDataSystemName>
            <BigDataSystemId>6c4665ab-1b1a-46a4-86db-cec8dceb3f99</BigDataSystemId>
            <ZoneId>e3a48484-ce57-4377-8ad5-dc6245c8a628</ZoneId>
            <BigDataSystemNodes>3</BigDataSystemNodes>
            <BigDataSystemVersion>BigData-1.0.5</BigDataSystemVersion>
            <Architecture>single_master</Architecture>
            <CreatedAt>2016-09-06T09:56:53Z</CreatedAt>
            <BigDataSystemType>BDS::C2_M4</BigDataSystemType>
        </BigDataSystem>
    </BigDataSystemSet>
</DescribeBDSystemsResponse>

json响应

{
    "DescribeBDSystemsResponse": {
        "BigDataSystemSet": {
            "BigDataSystem": [
                {
                    "Status": "running",
                    "BillingType": "postpay",
                    "BigDataSystemName": "mos1230",
                    "BigDataSystemId": "6c4665ab-1b1a-46a4-86db-cec8dceb3f99",
                    "ZoneId": "e3a48484-ce57-4377-8ad5-dc6245c8a628",
                    "BigDataSystemType": "BDS::C2_M4",
                    "CreatedAt": "2016-09-06T09:56:53Z",
                    "Architecture": "single_master",
                    "BigDataSystemNodes": 3,
                    "BigDataSystemVersion": "BigData-1.0.5"
                }
            ]
        }
    }
}

StartBDSystem

启动一个BDSystem实例

请求参数:

参数名 类型 可选 说明
BigDataSystemId string 必须 集群ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BigDataSystemId=b4d7e2ce-a222-403e-a7e9-3de0f7dbf9c5&
    Action=StartBDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StartBDSystemResponse>
    <return>True</return>
</StartBDSystemResponse>

json响应

{"StartBDSystemResponse": {"return": true}}

StopBDSystem

停止一个BDSystem实例

请求参数:

参数名 类型 可选 说明
BigDataSystemId string 必须 集群ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BigDataSystemId=b4d7e2ce-a222-403e-a7e9-3de0f7dbf9c5&
    Action=StartBDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StopBDSystemResponse>
    <return>True</return>
</StopBDSystemResponse>

json响应

{"StopBDSystemResponse": {"return": true}}

ScaleUpBDSystem

扩容一个BDSystem实例

请求参数:

参数名 类型 可选 说明
BigDataSystemId string 必须 集群ID
Delta integer 必须 扩容数量

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BigDataSystemId=b4d7e2ce-a222-403e-a7e9-3de0f7dbf9c5&
    delta=3&Action=ScaleUpBDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ScaleUpBDSystemResponse>
    <return>True</return>
</ScaleUpBDSystemResponse>

json响应

{"ScaleUpBDSystemResponse": {"return": true}}

ScaleDownBDSystem

缩容一个BDSystem实例

请求参数:

参数名 类型 可选 说明
BigDataSystemId string 必须 集群ID
Delta integer 必须 缩容数量

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BigDataSystemId=b4d7e2ce-a222-403e-a7e9-3de0f7dbf9c5&
    delta=3&Action=ScaleDownBDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ScaleDownBDSystemResponse>
    <return>True</return>
</ScaleDownBDSystemResponse>

json响应

{"ScaleDownBDSystemResponse": {"return": true}}

DeleteBDSystem

删除一个BDSystem实例

请求参数:

参数名 类型 可选 说明
BigDataSystemId string 必须 集群ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BigDataSystemId=b4d7e2ce-a222-403e-a7e9-3de0f7dbf9c5&
    Action=DeleteBDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteBDSystemResponse>
    <return>True</return>
</DeleteBDSystemResponse>

json响应

{"DeleteBDSystemResponse": {"return": true}}

CreateBDSystem

创建一个BDSystem实例

请求参数:

参数名 类型 可选 说明
BigDataSystemName string 必须 集群名称
Architecture string 必须 集群的架构类型,目前支持”single_master”
SlaveCount integer 必须 集群规模
BigDataSystemType string 必须 类型名称,通过DescribeBDSTypes获取
Zone string 必须 集群所在zone的ID或名称
AdminPassword string 必须 管理员密码
Description string 可选 集群描述信息

返回数据:

字段名 类型 说明
ZoneId string 集群所在zone的ID
Status string 集群所处状态
SlaveCount integer 集群规模
BigDataSystemName string 集群名称
BigDataSystemVersion string 集群版本号
BigDataSystemId string 集群ID
CreateAt string 集群创建时间
BillingType string 付费类型
BigDataSystemType string BigDataSystem类型ID
Architecture string 集群的架构类型
Description string 描述信息
Parameters dict 一些配置参数

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    BigDataSystemName=show_demo_json&
    Zone=e3a48484-ce57-4377-8ad5-dc6245c8a628&AdminPassword=myroot&
    SlaveCount=3&Architecture=single_master&Action=CreateBDSystem&
    BigDataSystemType=BDS%3A%3AC2_M4&Description=this+is+just+for+testing.&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateBDSystemResponse>
    <BigDataSystem>
        <Status>init</Status>
        <BillingType>postpay</BillingType>
        <Description>this is just for testing.</Description>
        <Parameters>
            <admin_pass>myroot</admin_pass>
        </Parameters>
        <BigDataSystemId>73d33c87-78eb-481e-8f07-c537c33ce67d</BigDataSystemId>
        <SlaveCount>3</SlaveCount>
        <ZoneId>e3a48484-ce57-4377-8ad5-dc6245c8a628</ZoneId>
        <Architecture>single_master</Architecture>
        <BigDataSystemVersion>BigData-1.0.5</BigDataSystemVersion>
        <BigDataSystemType>BDS::C2_M4</BigDataSystemType>
        <CreatedAt>2016-09-09T07:06:04Z</CreatedAt>
        <BigDataSystemName>show_demo_json</BigDataSystemName>
    </BigDataSystem>
</CreateBDSystemResponse>

json响应

{
    "CreateBDSystemResponse": {
        "BigDataSystem": {
            "Status": "init",
            "BigDataSystemName": "show_demo_json",
            "BillingType": "postpay",
            "Description": "this is just for testing.",
            "Parameters": {
                "admin_pass": "myroot"
            },
            "BigDataSystemId": "41adfa90-8b27-4525-8d2d-c78729dc1237",
            "SlaveCount": "3",
            "ZoneId": "e3a48484-ce57-4377-8ad5-dc6245c8a628",
            "Architecture": "single_master",
            "BigDataSystemType": "BDS::C2_M4",
            "CreatedAt": "2016-09-09T02:41:46Z",
            "BigDataSystemVersion": "BigData-1.0.5"
        }
    }
}

DescribeBDSTypes

列出所有用户可以使用的BDS套餐类型,在创建BDS需要相关信息。

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段名为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回BDSTypeSet,包含如下子段:

字段名 类型 说明
BDSType complextype BDS类型定义
Total integer 返回符合条件的BDS类型总量
Limit integer 返回BDS类型的数量
Offset integer 返回BDS类型的偏移量

BDSType包含如下子段:

字段名 类型 说明
BDSTypeId string BDS类型ID
BDSType string BDS类型名称
Cpu integer 该类型BDS CPU核数,单位为个
Memory integer 该类型BDS内存大小,单位为MB

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeBDSTypes&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeBDSTypesResponse>
    <BDSTypeSet>
        <BDSType>
            <BDSType>BDS::C1_M1</BDSType>
            <Memory>1024</Memory>
            <Cpu>1</Cpu>
            <BDSTypeId>0e66e1a7-28d7-475b-bb6e-6ef47b7dd0e7</BDSTypeId>
        </BDSType>
        <BDSType>
            <BDSType>BDS::C2_M4</BDSType>
            <Memory>4096</Memory>
            <Cpu>2</Cpu>
            <BDSTypeId>14c2cee1-217a-4f80-b1de-e25ce49980fb</BDSTypeId>
        </BDSType>
    </BDSTypeSet>
</DescribeBDSTypesResponse>

json响应

{
    "DescribeBDSTypesResponse": {
        "BDSTypeSet": {
            "BDSType": [
                {
                    "BDSType": "BDS::C1_M1",
                    "BDSTypeId": "0e66e1a7-28d7-475b-bb6e-6ef47b7dd0e7",
                    "Cpu": 1,
                    "Memory": 1024
                },
                {
                    "BDSType": "BDS::C2_M4",
                    "BDSTypeId": "14c2cee1-217a-4f80-b1de-e25ce49980fb",
                    "Cpu": 2,
                    "Memory": 4096
                }
            ]
        }
    }
}

DescribeSDSystems

获取所有的SDSystem实例信息

请求参数:

参数名 类型 可选 说明
StreamingSystemId.n string 可选 指定StreamingSystem的ID,n从1开始
StreamingSystemName.n string 可选 指定StreamingSystem的Name,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段为:name, status
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始
ZoneId string 可选 查询对应zone下面的StreamingSystem

返回数据:

返回StreamingSystemSet包含如下字段:

字段名 类型 说明
StreamingSystem complexType 返回的StreamingSystem信息
Total integer 满足查询条件的虚拟机个数
Limit integer 实际返回的虚拟机个数
Offset integer 虚拟机的偏移量

StreamingSystem包含的字段:

字段名 类型 说明
ZoneId string 集群所在zone的ID
Status string 集群所处状态
SlaveCount integer 集群规模
StreamingSystemName string 集群名称
StreamingSystemVersion string 集群版本号
StreamingSystemId string 集群ID
CreateAt string 集群创建时间
BillingType string 付费类型
StreamingSystemType string StreamingSystem类型ID
Architecture string 集群的架构类型
Description string 描述信息
Parameters dict 一些配置参数

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Filter.1.Name=id&Action=DescribeSDSystems&
    Filter.1.Value.1=efd7b860-ff72-4536-81c7-c233848a7e8f&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeSDSystemsResponse>
    <StreamingSystemSet>
        <StreamingSystem>
            <Status>running</Status>
            <BillingType>postpay</BillingType>
            <StreamingSystemName>show_demo_json</StreamingSystemName>
            <StreamingSystemVersion>Streaming-1.0.1</StreamingSystemVersion>
            <SlaveCount>3</SlaveCount>
            <ZoneId>e3a48484-ce57-4377-8ad5-dc6245c8a628</ZoneId>
            <Architecture>single_master</Architecture>
            <StreamingSystemType>SDS::C2_M4</StreamingSystemType>
            <CreatedAt>2016-09-09T07:06:05Z</CreatedAt>
            <StreamingSystemId>efd7b860-ff72-4536-81c7-c233848a7e8f</StreamingSystemId>
        </StreamingSystem>
    </StreamingSystemSet>
</DescribeSDSystemsResponse>

json响应

{
    "DescribeSDSystemsResponse": {
        "StreamingSystemSet": {
            "StreamingSystem": [
                {
                    "Status": "running",
                    "BillingType": "postpay",
                    "StreamingSystemName": "show_demo_json",
                    "StreamingSystemVersion": "Streaming-1.0.1",
                    "SlaveCount": 3,
                    "ZoneId": "e3a48484-ce57-4377-8ad5-dc6245c8a628",
                    "Architecture": "single_master",
                    "StreamingSystemType": "SDS::C2_M4",
                    "CreatedAt": "2016-09-09T07:06:05Z",
                    "StreamingSystemId": "efd7b860-ff72-4536-81c7-c233848a7e8f"
                }
            ]
        }
    }
}

StartSDSystem

启动一个SDSystem实例

请求参数:

参数名 类型 可选 说明
StreamingSystemId string 必须 集群ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    StreamingSystemId=6ce97a7e-0231-4006-ae59-423f7ad6117d&
    Action=StartSDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StartSDSystemResponse>
    <return>True</return>
</StartSDSystemResponse>

json响应

{"StartSDSystemResponse": {"return": true}}

StopSDSystem

停止一个SDSystem实例

请求参数:

参数名 类型 可选 说明
StreamingSystemId string 必须 集群ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    StreamingSystemId=6ce97a7e-0231-4006-ae59-423f7ad6117d&
    Action=StopSDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<StopSDSystemResponse>
    <return>True</return>
</StopSDSystemResponse>

json响应

{"StopSDSystemResponse": {"return": true}}

ScaleUpSDSystem

扩容一个SDSystem实例

请求参数:

参数名 类型 可选 说明
StreamingSystemId string 必须 集群ID
Delta integer 必须 缩容数量

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    StreamingSystemId=6ce97a7e-0231-4006-ae59-423f7ad6117d&
    Delta=3&Action=ScaleUpSDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ScaleUpSDSystemResponse>
    <return>True</return>
</ScaleUpSDSystemResponse>

json响应

{"ScaleUpSDSystemResponse": {"return": true}}

ScaleDownSDSystem

缩容一个SDSystem实例

请求参数:

参数名 类型 可选 说明
StreamingSystemId string 必须 集群ID
Delta integer 必须 缩容数量

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    StreamingSystemId=6ce97a7e-0231-4006-ae59-423f7ad6117d&
    Delta=3&Action=ScaleDownSDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<ScaleDownSDSystemResponse>
    <return>True</return>
</ScaleDownSDSystemResponse>

json响应

{"ScaleDownSDSystemResponse": {"return": true}}

DeleteSDSystem

删除一个SDSystem实例

请求参数:

参数名 类型 可选 说明
StreamingSystemId string 必须 集群ID

返回数据:

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    StreamingSystemId=6ce97a7e-0231-4006-ae59-423f7ad6117d&
    Action=DeleteSDSystem&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DeleteSDSystemResponse>
    <return>True</return>
</DeleteSDSystemResponse>

json响应

{"DeleteSDSystemResponse": {"return": true}}

CreateSDSystem

创建一个SDSystem实例

请求参数:

参数名 类型 可选 说明
StreamingSystemName string 必须 集群名称
Architecture string 必须 集群的架构类型,目前支持”single_master”
SlaveCount integer 必须 集群规模
StreamingSystemType string 必须 类型名称,通过DescribeSDSTypes获取
Zone string 必须 集群所在zone的ID或名称
AdminPassword string 必须 管理员密码
Description string 可选 集群描述信息

返回数据:

字段名 类型 说明
ZoneId string 集群所在zone的ID
Status string 集群所处状态
SlaveCount integer 集群规模
StreamingSystemName string 集群名称
StreamingSystemVersion string 集群版本号
StreamingSystemId string 集群ID
CreateAt string 集群创建时间
BillingType string 付费类型
StreamingSystemType string StreamingSystem类型ID
Architecture string 集群的架构类型
Description string 描述信息
Parameters dict 一些配置参数

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    StreamingSystemName=show_demo_json&
    Zone=e3a48484-ce57-4377-8ad5-dc6245c8a628&AdminPassword=myroot&
    SlaveCount=3&StreamingSystemType=SDS%3A%3AC2_M4&
    Architecture=single_master&Action=CreateSDSystem&
    Description=this+is+just+for+testing.&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<CreateSDSystemResponse>
    <StreamingSystem>
        <Status>init</Status>
        <BillingType>postpay</BillingType>
        <StreamingSystemName>show_demo_json</StreamingSystemName>
        <Parameters>
            <admin_pass>myroot</admin_pass>
        </Parameters>
        <StreamingSystemVersion>Streaming-1.0.1</StreamingSystemVersion>
        <Description>this is just for testing.</Description>
        <SlaveCount>3</SlaveCount>
        <ZoneId>e3a48484-ce57-4377-8ad5-dc6245c8a628</ZoneId>
        <StreamingSystemId>efd7b860-ff72-4536-81c7-c233848a7e8f</StreamingSystemId>
        <StreamingSystemType>SDS::C2_M4</StreamingSystemType>
        <CreatedAt>2016-09-09T07:06:05Z</CreatedAt>
        <Architecture>single_master</Architecture>
    </StreamingSystem>
</CreateSDSystemResponse>

json响应

{
    "CreateSDSystemResponse": {
        "StreamingSystem": {
            "Status": "init",
            "BillingType": "postpay",
            "Description": "this is just for testing.",
            "Parameters": {
                "admin_pass": "myroot"
            },
            "StreamingSystemVersion": "Streaming-1.0.1",
            "SlaveCount": "3",
            "Architecture": "single_master",
            "ZoneId": "e3a48484-ce57-4377-8ad5-dc6245c8a628",
            "StreamingSystemId": "81a07dba-9ced-447a-8b15-3425871af608",
            "StreamingSystemType": "SDS::C2_M4",
            "CreatedAt": "2016-09-09T02:43:29Z",
            "StreamingSystemName": "show_demo_json"
        }
    }
}

DescribeSDSTypes

列出所有用户可以使用的SDS套餐类型,在创建SDS需要相关信息。

请求参数:

参数名 类型 可选 说明
Limit integer 可选 本次请求返回的数量
Offset integer 可选 本次请求返回的偏移量
Filter.n.Name string 可选 过滤字段名称,n从1开始。支持字段名为:name
Filter.n.Value.m string 可选 对应Filter.n.Name的过滤字段的匹配值,m从1开始

返回数据:

返回SDSTypeSet,包含如下子段:

字段名 类型 说明
SDSType complextype SDS类型定义
Total integer 返回符合条件的SDS类型总量
Limit integer 返回SDS类型的数量
Offset integer 返回SDS类型的偏移量

SDSType包含如下子段:

字段名 类型 说明
SDSTypeId string SDS类型ID
SDSType string SDS类型名称
Cpu integer 该类型SDS CPU核数,单位为个
Memory integer 该类型SDS内存大小,单位为MB

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeSDSTypes&
    AUTHDATA

xml响应

<?xml version="1.0" encoding="utf-8"?>
<DescribeSDSTypesResponse>
    <SDSTypeSet>
        <SDSType>
            <SDSTypeId>a0278cf8-0495-4c59-92de-022709a891aa</SDSTypeId>
            <SDSType>SDS::C2_M4</SDSType>
            <Cpu>2</Cpu>
            <Memory>4096</Memory>
        </SDSType>
    </SDSTypeSet>
</DescribeSDSTypesResponse>

json响应

{
    "DescribeSDSTypesResponse": {
        "SDSTypeSet": {
            "SDSType": [
                {
                    "SDSTypeId": "a0278cf8-0495-4c59-92de-022709a891aa",
                    "SDSType": "SDS::C2_M4",
                    "Cpu": 2,
                    "Memory": 4096
                }
            ]
        }
    }
}

消息队列 API

DescribeMQ

获取指定或全部MQ实例信息列表。

请求参数:

字段名 类型 可选 说明
Ids.n string 可选 n表示参数编号,value是具体的资源ID,n从1开始
Limit integer 可选 本次请求返回的最多数量
Offset integer 可选 本次请求返回的偏移量

返回数据:

返回MQSet包含如下字段:

字段名 类型 说明
rdsId string RDS的ID
rdsName string RDS的名称
RabbitMQ complexType 返回MQ信息
Total integer 满足查询条件的虚拟机个数
Limit integer 实际返回的虚拟机个数
Offset integer 虚拟机的偏移量

MQ包含的字段:

字段名 类型 说明
Status string 运行状态
MQType string MQ的配置类型
Name string 名称
Zone string 分区的name
Created_at string 创建时间(UTC时间)
Driver string 驱动类型
Port string 端口号
Ips string MQ的IP
MasterCount integer MQ的主节点个数
ID string MQ的ID唯一标识

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DescribeMQ&
    AUTHDATA

xml响应

<DescribeMQResponse><RabbitMQSet><RabbitMQ><Status>running</Status><MQType>Rabbitmq::C1_M1</MQType><Name>zhekou</Name><Zone></Zone><Created_at>2016-09-27T14:10:33Z</Created_at><Driver>Rabbitmq</Driver><Port>5672</Port><IPs>172.26.240.163</IPs><MasterCount>1</MasterCount><ID>1c20fbf6-c9aa-41cc-8962-3392337e508e</ID></RabbitMQ></RabbitMQSet></DescribeMQResponse>

json响应

OrderedDict([(u'RabbitMQSet', OrderedDict([(u'RabbitMQ', OrderedDict([(u'Status', u'running'), (u'MQType', u'Rabbitmq::C1_M1'), (u'Name', u'zhekou'), (u'Zone', None), (u'Created_at', u'2016-09-27T14:10:33Z'), (u'Driver', u'Rabbitmq'), (u'Port', u'5672'), (u'IPs', u'172.26.240.163'), (u'MasterCount', u'1'), (u'ID', u'1c20fbf6-c9aa-41cc-8962-3392337e508e')]))]))])

CreateMQ

创建Redis实例

请求参数:

字段名 类型 可选 说明
Name integer 必选 指定创建的MQ的名称
MQType string 必选 MQ类型(如:Rabbitmq::C1_M1)
Driver string 必选 驱动(rabbitmq)
AvailabilityZoneId string 可选 指定创建的MQ所在的可用区域(AvailabilityZone),默认3区
Description string 可选 描述

返回数据:

如果成功返回生成的Redis信息,包含如下字段:

字段名 类型 说明
Status string 运行状态
MQType string MQ的配置类型
Name string 名称
Zone string 分区的name
Created_at string 创建时间(UTC时间)
Driver string 驱动类型
Port string 端口号
Ips string MQ的IP
MasterCount integer MQ的主节点个数
ID string MQ的ID唯一标识

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=CreateMQ&
    Name=ec2-test-2&
    MQType=Rabbitmq::C1_M4&
    Driver=rabbitmq&
    AUTHDATA

xml响应

<CreateMQResponse><RabbitMQ><Status>start_create</Status><MQType>Rabbitmq::C1_M4</MQType><Name>ec2-test-2</Name><Zone></Zone><Created_at>2016-09-28T05:08:20Z</Created_at><Driver>Rabbitmq</Driver><Port>5672</Port><MasterCount>1</MasterCount><ID>20c7c48f-ed1c-492f-8d78-0afc6dbd74dc</ID></RabbitMQ></CreateMQResponse>

json响应

OrderedDict([(u'RabbitMQ', OrderedDict([(u'Status', u'start_create'), (u'MQType', u'Rabbitmq::C1_M4'), (u'Name', u'ec2-test-2'), (u'Zone', None), (u'Created_at', u'2016-09-28T05:08:20Z'), (u'Driver', u'Rabbitmq'), (u'Port', u'5672'), (u'MasterCount', u'1'), (u'ID', u'20c7c48f-ed1c-492f-8d78-0afc6dbd74dc')]))])

ChangeMQType

更改指定MQ实例的类型。

请求参数:

字段名 类型 可选 说明
Id string 必选 更改类型的MQ ID或名称
MQType string 必选 MQ类型(如:Rabbitmq::C1_M1)

返回数据:

如果成功返回生成的MQ信息,包含如下字段:

字段名 类型 说明
return string 返回值

成功则返回值return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=ChangeMQType&
    Id=20c7c48f-ed1c-492f-8d78-0afc6dbd74dc&
    MQType=Rabbitmq::C1_M5&
    AUTHDATA

xml响应

<ChangeMQTypeResponse><return>True</return></ChangeMQTypeResponse>

json响应

OrderedDict([(u'return', u'True')])

DeleteMQ

删除MQ实例。

请求参数:

字段名 类型 可选 说明
Id string 必选 欲删除的监控项ID

返回数据:

成功则返回return为True;否则返回错误信息。

示例:

请求URL

https://mosapi.meituan.com/mcs/v1?
    Action=DeleteMQ&
    Id=20c7c48f-ed1c-492f-8d78-0afc6dbd74dc&
    AUTHDATA

xml响应

<ChangeMQTypeResponse><return>True</return></ChangeMQTypeResponse>

json响应

OrderedDict([(u'return', u'True')])