EipBp实例
创建带宽包
- 带宽包仅支持绑定预付费资源,目前支持绑定弹性公网Eip和共享带宽
- name字段为可选参数,表示带宽包名称,不填写则自动生成。若填写要求以字母开头,只能包括数字、字母、及- _ . /中的特殊字符,长度不超过65个字符
- eip 和 eipGroup 字段分别表示待绑定资源的 Eip 的IP地址或共享带宽的 id,只能有一个字段生效,若都填写则仅有"eip"字段生效
- eip 只能是单独弹性公网实例的IP地址,不能是属于某个共享带宽资源的IP地址
- bandwidthInMbps字段表示带宽包的公网带宽,要求为大于0的整数,且该值与所绑定资源的带宽总和不大于200Mbps。若带宽包类型为跨境加速包,带宽包带宽值与所绑定的实例的默认跨境带宽之和要小于等于绑定实例的带宽值
- autoReleaseTime为可选参数,表示带宽包自动释放时间。如果设置要求时间格式符合UTC格式(格式形如:”2019-08-03T20:38:43Z”),该时间要介于当前时间和所绑定的预付费实例的到期时间之间,若不填写则随所绑定资源的到期一并释放
- type为可选参数,表示带宽包的类型,包括BandwidthPackage(带宽包)和AccelerationPackage(跨境加速包),其中跨境加速包仅支持中国香港区域,默认为包括BandwidthPackage
函数声明
type CreateEipBpArgs struct {
Name string `json:"name"`
Eip string `json:"eip"`
EipGroupId string `json:"eipGroupId"`
BandwidthInMbps int `json:"bandwidthInMbps"`
Type string `json:"type"`
AutoReleaseTime string `json:"autoReleaseTime"`
ClientToken string `json:"-"`
}
type CreateEipBpResult struct {
Id string `json:"id"`
}
func (c *Client) CreateEipBp(args *CreateEipBpArgs) (*CreateEipBpResult, error)
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/mk0m4ecrk
返回值
操作成功:
{
"id":"bw-xxxxxxxx"
}
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_create_eipbp.go
调整带宽包带宽
- 调整带宽包的带宽大小
- bandwidthInMbps字段表示带宽包的公网带宽,要求为大于0的整数,且该值与所绑定资源的带宽总和不大于200Mbps
- 若带宽包类型为跨境加速包,带宽包带宽值与所绑定的实例的默认跨境带宽之和要小于等于绑定实例的带宽值
函数声明
type ResizeEipBpArgs struct {
BandwidthInMbps int `json:"bandwidthInMbps"`
ClientToken string `json:"-"`
}
func (c *Client) ResizeEipBp(id string, args *ResizeEipBpArgs) error
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/Yk0m4k7im
返回值
操作成功:
无特殊返回参数
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_resize_eipbp.go
查询带宽包详情
- 根据带宽包id查询指定带宽包资源的详细信息
函数声明
type EipBpDetail struct {
Name string `json:"name"`
Id string `json:"id"`
BindType string `json:"bindType"`
BandwidthInMbps int `json:"bandwidthInMbps"`
InstanceId string `json:"instanceId"`
Eips []string `json:"eips"`
InstanceBandwidthInMbps int `json:"instanceBandwidthInMbps"`
CreateTime string `json:"createTime"`
AutoReleaseTime string `json:"autoReleaseTime"`
Type string `json:"type"`
Region string `json:"region"`
}
func (c *Client) GetEipBp(id, clientToken string) (*EipBpDetail, error)
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/hk0m4uwtc
返回值
操作成功:
{
"name": "xxxxx",
"id": "bw-xxxxxxxx",
"bindType": "eip",
"bandwidthInMbps": 199,
"instanceId": "ip-xxxxxxxx",
"eips": [
"x.x.x.x"
],
"instanceBandwidthInMbps": 1,
"createTime": "2023-11-29T11:29:54Z",
"autoReleaseTime": "2023-12-29T08:09:54Z",
"type": "BandwidthPackage",
"region": "bj"
}
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_get_eipbp.go
查询用户带宽包列表信息
- 查询用户账户下所有带宽包的信息
- 支持按带宽包的id、name、bindType进行查询
- 返回结果是多重查询条件的交集
- 结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定
函数声明
type ListEipBpArgs struct {
Id string `json:"id"`
Name string `json:"name"`
Marker string `json:"marker"`
MaxKeys int `json:"maxKeys"`
BindType string `json:"bindType"`
Type string `json:"type"`
}
type ListEipBpResult struct {
Marker string `json:"marker"`
MaxKeys int `json:"maxKeys"`
NextMarker string `json:"nextMarker"`
IsTruncated bool `json:"isTruncated"`
EipGroup []EipBpList `json:"bpList"`
}
type EipBpList struct {
Name string `json:"name"`
Id string `json:"id"`
BindType string `json:"bindType"`
BandwidthInMbps int `json:"bandwidthInMbps"`
InstanceId string `json:"instanceId"`
Eips []string `json:"eips"`
CreateTime string `json:"createTime"`
AutoReleaseTime string `json:"autoReleaseTime"`
Type string `json:"type"`
Region string `json:"region"`
}
func (c *Client) ListEipBp(args *ListEipBpArgs) (*ListEipBpResult, error)
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/Lk0m4n7yr
返回值
操作成功:
{
"marker": "bw-xxxxxxxx",
"maxKeys": 1000,
"nextMarker": "",
"isTruncated": false,
"bpList": [
{
"name": "test_eip_bp",
"id": "bw-xxxxxxxx",
"bindType": "eip",
"bandwidthInMbps": 10,
"instanceId": "ip-xxxxxxxx",
"eips": [
"x.x.x.x",
...
],
"createTime": "2023-11-24T09:46:26Z",
"autoReleaseTime": "2023-12-30T16:45:00Z",
"type": "BandwidthPackage",
"region": "bj"
},
...
]
}
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_list_eipbp.go
更新带宽包自动释放时间
- 更新带宽包的自动释放时间
- autoReleaseTime 表示自动释放时间,要求时间格式符合UTC格式(格式形如:”2019-08-03T20:38:43Z”),该时间要介于当前时间和所绑定的预付费实例的到期时间之间
函数声明
type UpdateEipBpAutoReleaseTimeArgs struct {
AutoReleaseTime string `json:"autoReleaseTime"`
ClientToken string `json:"-"`
}
func (c *Client) UpdateEipBpAutoReleaseTime(id string, args *UpdateEipBpAutoReleaseTimeArgs) error
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/Fk0m4mb1h
返回值
操作成功:
无特殊返回参数
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_update_eipbp_autoreleasetime.go
更新带宽包名称
- 更新带宽包的名称
- name字段要求以字母开头,只能包括数字、字母、及- _ . /中的特殊字符,长度不超过65个字符
函数声明
type UpdateEipBpNameArgs struct {
Name string `json:"name"`
ClientToken string `json:"-"`
}
func (c *Client) UpdateEipBpName(id string, args *UpdateEipBpNameArgs) error
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/lk0m4lk6d
返回值
操作成功:
无特殊返回参数
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_update_eipbp_name.go
释放带宽包
- 根据带宽包id释放指定的带宽包资源
函数声明
func (c *Client) DeleteEipBp(id, clientToken string) error
参数含义
请参考OpenAPI文档:https://cloud.baidu.com/doc/EIP/s/4k0m4hayt
返回值
操作成功:
无特殊返回参数
操作失败:
抛出异常,异常列表参考:https://cloud.baidu.com/doc/EIP/s/nkcu555a4
代码示例
具体代码示例参考:example_eipbp_delete_eipbp.go