v2

package
v0.0.12-beta Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 11, 2020 License: Apache-2.0, BSD-2-Clause, BSD-3-Clause Imports: 4 Imported by: 18

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EcsClientBuilder

func EcsClientBuilder() *http_client.HcHttpClientBuilder

func GenReqDefForAddServerGroupMember

func GenReqDefForAddServerGroupMember(request *model.AddServerGroupMemberRequest) *def.HttpRequestDef

func GenReqDefForAttachServerVolume

func GenReqDefForAttachServerVolume(request *model.AttachServerVolumeRequest) *def.HttpRequestDef

func GenReqDefForBatchAddServerNics

func GenReqDefForBatchAddServerNics(request *model.BatchAddServerNicsRequest) *def.HttpRequestDef

func GenReqDefForBatchCreateServerTags

func GenReqDefForBatchCreateServerTags(request *model.BatchCreateServerTagsRequest) *def.HttpRequestDef

func GenReqDefForBatchDeleteServerNics

func GenReqDefForBatchDeleteServerNics(request *model.BatchDeleteServerNicsRequest) *def.HttpRequestDef

func GenReqDefForBatchDeleteServerTags

func GenReqDefForBatchDeleteServerTags(request *model.BatchDeleteServerTagsRequest) *def.HttpRequestDef

func GenReqDefForBatchRebootServers

func GenReqDefForBatchRebootServers(request *model.BatchRebootServersRequest) *def.HttpRequestDef

func GenReqDefForBatchStartServers

func GenReqDefForBatchStartServers(request *model.BatchStartServersRequest) *def.HttpRequestDef

func GenReqDefForBatchStopServers

func GenReqDefForBatchStopServers(request *model.BatchStopServersRequest) *def.HttpRequestDef

func GenReqDefForChangeServerOsWithCloudInit

func GenReqDefForChangeServerOsWithCloudInit(request *model.ChangeServerOsWithCloudInitRequest) *def.HttpRequestDef

func GenReqDefForCreatePostPaidServers

func GenReqDefForCreatePostPaidServers(request *model.CreatePostPaidServersRequest) *def.HttpRequestDef

func GenReqDefForCreateServerGroup

func GenReqDefForCreateServerGroup(request *model.CreateServerGroupRequest) *def.HttpRequestDef

func GenReqDefForCreateServers

func GenReqDefForCreateServers(request *model.CreateServersRequest) *def.HttpRequestDef

func GenReqDefForDeleteServerGroup

func GenReqDefForDeleteServerGroup(request *model.DeleteServerGroupRequest) *def.HttpRequestDef

func GenReqDefForDeleteServerGroupMember

func GenReqDefForDeleteServerGroupMember(request *model.DeleteServerGroupMemberRequest) *def.HttpRequestDef

func GenReqDefForDeleteServerMetadata

func GenReqDefForDeleteServerMetadata(request *model.DeleteServerMetadataRequest) *def.HttpRequestDef

func GenReqDefForDeleteServers

func GenReqDefForDeleteServers(request *model.DeleteServersRequest) *def.HttpRequestDef

func GenReqDefForDetachServerVolume

func GenReqDefForDetachServerVolume(request *model.DetachServerVolumeRequest) *def.HttpRequestDef

func GenReqDefForListFlavors

func GenReqDefForListFlavors(request *model.ListFlavorsRequest) *def.HttpRequestDef

func GenReqDefForListResizeFlavors

func GenReqDefForListResizeFlavors(request *model.ListResizeFlavorsRequest) *def.HttpRequestDef

func GenReqDefForListServerBlockDevices

func GenReqDefForListServerBlockDevices(request *model.ListServerBlockDevicesRequest) *def.HttpRequestDef

func GenReqDefForListServerInterfaces

func GenReqDefForListServerInterfaces(request *model.ListServerInterfacesRequest) *def.HttpRequestDef

func GenReqDefForListServersDetails

func GenReqDefForListServersDetails(request *model.ListServersDetailsRequest) *def.HttpRequestDef

func GenReqDefForNovaAssociateSecurityGroup

func GenReqDefForNovaAssociateSecurityGroup(request *model.NovaAssociateSecurityGroupRequest) *def.HttpRequestDef

func GenReqDefForNovaCreateKeypair

func GenReqDefForNovaCreateKeypair(request *model.NovaCreateKeypairRequest) *def.HttpRequestDef

func GenReqDefForNovaCreateServers

func GenReqDefForNovaCreateServers(request *model.NovaCreateServersRequest) *def.HttpRequestDef

func GenReqDefForNovaDeleteKeypair

func GenReqDefForNovaDeleteKeypair(request *model.NovaDeleteKeypairRequest) *def.HttpRequestDef

func GenReqDefForNovaDeleteServer

func GenReqDefForNovaDeleteServer(request *model.NovaDeleteServerRequest) *def.HttpRequestDef

func GenReqDefForNovaDisassociateSecurityGroup

func GenReqDefForNovaDisassociateSecurityGroup(request *model.NovaDisassociateSecurityGroupRequest) *def.HttpRequestDef

func GenReqDefForNovaListAvailabilityZones

func GenReqDefForNovaListAvailabilityZones(request *model.NovaListAvailabilityZonesRequest) *def.HttpRequestDef

func GenReqDefForNovaListKeypairs

func GenReqDefForNovaListKeypairs(request *model.NovaListKeypairsRequest) *def.HttpRequestDef

func GenReqDefForNovaListServerSecurityGroups

func GenReqDefForNovaListServerSecurityGroups(request *model.NovaListServerSecurityGroupsRequest) *def.HttpRequestDef

func GenReqDefForNovaListServersDetails

func GenReqDefForNovaListServersDetails(request *model.NovaListServersDetailsRequest) *def.HttpRequestDef

func GenReqDefForNovaShowServer

func GenReqDefForNovaShowServer(request *model.NovaShowServerRequest) *def.HttpRequestDef

func GenReqDefForReinstallServerWithCloudInit

func GenReqDefForReinstallServerWithCloudInit(request *model.ReinstallServerWithCloudInitRequest) *def.HttpRequestDef

func GenReqDefForResetServerPassword

func GenReqDefForResetServerPassword(request *model.ResetServerPasswordRequest) *def.HttpRequestDef

func GenReqDefForResizePostPaidServer

func GenReqDefForResizePostPaidServer(request *model.ResizePostPaidServerRequest) *def.HttpRequestDef

func GenReqDefForResizeServer

func GenReqDefForResizeServer(request *model.ResizeServerRequest) *def.HttpRequestDef

func GenReqDefForShowJob

func GenReqDefForShowJob(request *model.ShowJobRequest) *def.HttpRequestDef

func GenReqDefForShowResetPasswordFlag

func GenReqDefForShowResetPasswordFlag(request *model.ShowResetPasswordFlagRequest) *def.HttpRequestDef

func GenReqDefForShowServer

func GenReqDefForShowServer(request *model.ShowServerRequest) *def.HttpRequestDef

func GenReqDefForShowServerLimits

func GenReqDefForShowServerLimits(request *model.ShowServerLimitsRequest) *def.HttpRequestDef

func GenReqDefForShowServerRemoteConsole

func GenReqDefForShowServerRemoteConsole(request *model.ShowServerRemoteConsoleRequest) *def.HttpRequestDef

func GenReqDefForShowServerTags

func GenReqDefForShowServerTags(request *model.ShowServerTagsRequest) *def.HttpRequestDef

func GenReqDefForUpdateServer

func GenReqDefForUpdateServer(request *model.UpdateServerRequest) *def.HttpRequestDef

func GenReqDefForUpdateServerMetadata

func GenReqDefForUpdateServerMetadata(request *model.UpdateServerMetadataRequest) *def.HttpRequestDef

func GenRespForAttachServerVolume

func GenRespForAttachServerVolume() (*model.AttachServerVolumeResponse, *def.HttpResponseDef)

func GenRespForBatchAddServerNics

func GenRespForBatchAddServerNics() (*model.BatchAddServerNicsResponse, *def.HttpResponseDef)

func GenRespForBatchRebootServers

func GenRespForBatchRebootServers() (*model.BatchRebootServersResponse, *def.HttpResponseDef)

func GenRespForBatchStartServers

func GenRespForBatchStartServers() (*model.BatchStartServersResponse, *def.HttpResponseDef)

func GenRespForBatchStopServers

func GenRespForBatchStopServers() (*model.BatchStopServersResponse, *def.HttpResponseDef)

func GenRespForCreateServerGroup

func GenRespForCreateServerGroup() (*model.CreateServerGroupResponse, *def.HttpResponseDef)

func GenRespForCreateServers

func GenRespForCreateServers() (*model.CreateServersResponse, *def.HttpResponseDef)

func GenRespForDeleteServerGroup

func GenRespForDeleteServerGroup() (*model.DeleteServerGroupResponse, *def.HttpResponseDef)

func GenRespForDeleteServers

func GenRespForDeleteServers() (*model.DeleteServersResponse, *def.HttpResponseDef)

func GenRespForDetachServerVolume

func GenRespForDetachServerVolume() (*model.DetachServerVolumeResponse, *def.HttpResponseDef)

func GenRespForListFlavors

func GenRespForListFlavors() (*model.ListFlavorsResponse, *def.HttpResponseDef)

func GenRespForListResizeFlavors

func GenRespForListResizeFlavors() (*model.ListResizeFlavorsResponse, *def.HttpResponseDef)

func GenRespForListServersDetails

func GenRespForListServersDetails() (*model.ListServersDetailsResponse, *def.HttpResponseDef)

func GenRespForNovaCreateKeypair

func GenRespForNovaCreateKeypair() (*model.NovaCreateKeypairResponse, *def.HttpResponseDef)

func GenRespForNovaCreateServers

func GenRespForNovaCreateServers() (*model.NovaCreateServersResponse, *def.HttpResponseDef)

func GenRespForNovaDeleteKeypair

func GenRespForNovaDeleteKeypair() (*model.NovaDeleteKeypairResponse, *def.HttpResponseDef)

func GenRespForNovaDeleteServer

func GenRespForNovaDeleteServer() (*model.NovaDeleteServerResponse, *def.HttpResponseDef)

func GenRespForNovaListKeypairs

func GenRespForNovaListKeypairs() (*model.NovaListKeypairsResponse, *def.HttpResponseDef)

func GenRespForNovaShowServer

func GenRespForNovaShowServer() (*model.NovaShowServerResponse, *def.HttpResponseDef)

func GenRespForResetServerPassword

func GenRespForResetServerPassword() (*model.ResetServerPasswordResponse, *def.HttpResponseDef)

func GenRespForResizeServer

func GenRespForResizeServer() (*model.ResizeServerResponse, *def.HttpResponseDef)

func GenRespForShowJob

func GenRespForShowJob() (*model.ShowJobResponse, *def.HttpResponseDef)

func GenRespForShowServer

func GenRespForShowServer() (*model.ShowServerResponse, *def.HttpResponseDef)

func GenRespForShowServerLimits

func GenRespForShowServerLimits() (*model.ShowServerLimitsResponse, *def.HttpResponseDef)

func GenRespForShowServerTags

func GenRespForShowServerTags() (*model.ShowServerTagsResponse, *def.HttpResponseDef)

func GenRespForUpdateServer

func GenRespForUpdateServer() (*model.UpdateServerResponse, *def.HttpResponseDef)

Types

type EcsClient

type EcsClient struct {
	// contains filtered or unexported fields
}

func NewEcsClient

func NewEcsClient(hcClient *http_client.HcHttpClient) *EcsClient

func (*EcsClient) AddServerGroupMember

将云服务器加入云服务器组。添加成功后,如果该云服务器组是反亲和性策略的,则该云服务器与云服务器组中的其他成员尽量分散地创建在不同主机上。如果该云服务器时故障域类型的,则该云服务器会拥有故障域属性。

func (*EcsClient) AttachServerVolume

func (c *EcsClient) AttachServerVolume(request *model.AttachServerVolumeRequest) (*model.AttachServerVolumeResponse, error)

把磁盘挂载到弹性云服务器上。

func (*EcsClient) BatchAddServerNics

func (c *EcsClient) BatchAddServerNics(request *model.BatchAddServerNicsRequest) (*model.BatchAddServerNicsResponse, error)

给云服务器添加一张或多张网卡。

func (*EcsClient) BatchCreateServerTags

- 为指定云服务器批量添加标签。 - 标签管理服务TMS使用该接口批量管理云服务器的标签。

func (*EcsClient) BatchDeleteServerNics

卸载并删除云服务器中的一张或多张网卡。

func (*EcsClient) BatchDeleteServerTags

- 为指定云服务器批量删除标签。 - 标签管理服务TMS使用该接口批量管理云服务器的标签。

func (*EcsClient) BatchRebootServers

func (c *EcsClient) BatchRebootServers(request *model.BatchRebootServersRequest) (*model.BatchRebootServersResponse, error)

根据给定的云服务器ID列表,批量重启云服务器,一次最多可以重启1000台。

func (*EcsClient) BatchStartServers

func (c *EcsClient) BatchStartServers(request *model.BatchStartServersRequest) (*model.BatchStartServersResponse, error)

根据给定的云服务器ID列表,批量启动云服务器,一次最多可以启动1000台。

func (*EcsClient) BatchStopServers

func (c *EcsClient) BatchStopServers(request *model.BatchStopServersRequest) (*model.BatchStopServersResponse, error)

根据给定的云服务器ID列表,批量关闭云服务器,一次最多可以关闭1000台。

func (*EcsClient) ChangeServerOsWithCloudInit

切换弹性云服务器操作系统。支持弹性云服务器数据盘不变的情况下,使用新镜像重装系统盘。 调用该接口后,系统将卸载系统盘,然后使用新镜像重新创建系统盘,并挂载至弹性云服务器,实现切换操作系统功能。

func (*EcsClient) CreatePostPaidServers

创建一台或多台按需付费方式的云服务器。 弹性云服务器的登录鉴权方式包括两种:密钥对、密码。为安全起见,推荐使用密钥对方式。 - 密钥对 密钥对指使用密钥对作为弹性云服务器的鉴权方式。 接口调用方法:使用key_name字段,指定弹性云服务器登录时使用的密钥文件。 - 密码 密码指使用设置初始密码方式作为弹性云服务器的鉴权方式,此时,您可以通过用户名密码方式登录弹性云服务器,Linux操作系统时为root用户的初始密码,Windows操作系统时为Administrator用户的初始密码。 接口调用方法:使用adminPass字段,指定管理员帐号的初始登录密码。对于镜像已安装Cloud-init的Linux云服务器,如果需要使用密文密码,可以使用user_data字段进行密码注入。 > 对于安装Cloud-init镜像的Linux云服务器云主机,若指定user_data字段,则adminPass字段无效。

func (*EcsClient) CreateServerGroup

func (c *EcsClient) CreateServerGroup(request *model.CreateServerGroupRequest) (*model.CreateServerGroupResponse, error)

创建弹性云服务器组。 与原生的创建云服务器组接口不同之处在于该接口支持企业项目细粒度权限的校验。

func (*EcsClient) CreateServers

func (c *EcsClient) CreateServers(request *model.CreateServersRequest) (*model.CreateServersResponse, error)

创建一台或多台云服务器。 指该接口兼容《弹性云服务器接口参考》创建云服务器v1的功能,同时合入新功能,支持创建包年/包月的弹性云服务器。 弹性云服务器的登录鉴权方式包括两种:密钥对、密码。为安全起见,推荐使用密钥对方式。 - 密钥对 指使用密钥对作为弹性云服务器的鉴权方式。 接口调用方法:使用key_name字段,指定弹性云服务器登录时使用的密钥文件。 - 密码 指使用设置初始密码方式作为弹性云服务器的鉴权方式,此时,您可以通过用户名密码方式登录弹性云服务器,Linux操作系统时为root用户的初始密码,Windows操作系统时为Administrator用户的初始密码。 接口调用方法:使用adminPass字段,指定管理员帐号的初始登录密码。对于镜像已安装Cloud-init的Linux云服务器,如果需要使用密文密码,可以使用user_data字段进行密码注入。 > 对于安装Cloud-init镜像的Linux云服务器云主机,若指定user_data字段,则adminPass字段无效。

func (*EcsClient) DeleteServerGroup

func (c *EcsClient) DeleteServerGroup(request *model.DeleteServerGroupRequest) (*model.DeleteServerGroupResponse, error)

删除云服务器组。 与原生的删除云服务器组接口不同之处在于该接口支持企业项目细粒度权限的校验。

func (*EcsClient) DeleteServerGroupMember

将弹性云服务器移出云服务器组。移出后,该云服务器与云服务器组中的成员不再遵从反亲和策略。

func (*EcsClient) DeleteServerMetadata

删除云服务器指定元数据。

func (*EcsClient) DeleteServers

func (c *EcsClient) DeleteServers(request *model.DeleteServersRequest) (*model.DeleteServersResponse, error)

根据指定的云服务器ID列表,删除云服务器。 系统支持删除单台云服务器和批量删除多台云服务器操作,批量删除云服务器时,一次最多可以删除1000台。

func (*EcsClient) DetachServerVolume

func (c *EcsClient) DetachServerVolume(request *model.DetachServerVolumeRequest) (*model.DetachServerVolumeResponse, error)

从弹性云服务器中卸载磁盘。

func (*EcsClient) ListFlavors

func (c *EcsClient) ListFlavors(request *model.ListFlavorsRequest) (*model.ListFlavorsResponse, error)

查询云服务器规格详情信息和规格扩展信息列表。

func (*EcsClient) ListResizeFlavors

func (c *EcsClient) ListResizeFlavors(request *model.ListResizeFlavorsRequest) (*model.ListResizeFlavorsResponse, error)

变更规格时,部分规格的云服务器之间不能互相变更。您可以通过本接口,通过指定弹性云服务器规格,查询该规格可以变更的规格列表。

func (*EcsClient) ListServerBlockDevices

查询弹性云服务器挂载的磁盘信息。

func (*EcsClient) ListServerInterfaces

查询云服务器网卡信息。

func (*EcsClient) ListServersDetails

func (c *EcsClient) ListServersDetails(request *model.ListServersDetailsRequest) (*model.ListServersDetailsResponse, error)

根据用户请求条件从数据库筛选、查询所有的弹性云服务器,并关联相关表获取到弹性云服务器的详细信息。 该接口支持查询弹性云服务器计费方式,以及是否被冻结。

func (*EcsClient) NovaAssociateSecurityGroup

为弹性云服务器添加一个安全组。 添加多个安全组时,建议最多为弹性云服务器添加5个安全组。

func (*EcsClient) NovaCreateKeypair

func (c *EcsClient) NovaCreateKeypair(request *model.NovaCreateKeypairRequest) (*model.NovaCreateKeypairResponse, error)

创建SSH密钥,或把公钥导入系统,生成密钥对。 创建SSH密钥成功后,请把响应数据中的私钥内容保存到本地文件,用户使用该私钥登录云服务器云主机。为保证云服务器云主机器安全,私钥数据只能读取一次,请妥善保管。

func (*EcsClient) NovaCreateServers

func (c *EcsClient) NovaCreateServers(request *model.NovaCreateServersRequest) (*model.NovaCreateServersResponse, error)

创建一台弹性云服务器。 弹性云服务器创建完成后,如需开启自动恢复功能,可以调用配置云服务器自动恢复的接口,具体使用请参见管理云服务器自动恢复动作。 该接口在云服务器创建失败后不支持自动回滚。若需要自动回滚能力,可以调用POST /v1/{project_id}/cloudservers接口,具体使用请参见创建云服务器(按需)。

func (*EcsClient) NovaDeleteKeypair

func (c *EcsClient) NovaDeleteKeypair(request *model.NovaDeleteKeypairRequest) (*model.NovaDeleteKeypairResponse, error)

根据SSH密钥的名称,删除指定SSH密钥。

func (*EcsClient) NovaDeleteServer

func (c *EcsClient) NovaDeleteServer(request *model.NovaDeleteServerRequest) (*model.NovaDeleteServerResponse, error)

删除一台云服务器。

func (*EcsClient) NovaDisassociateSecurityGroup

移除弹性云服务器中的安全组。

func (*EcsClient) NovaListAvailabilityZones

查询可用域列表。

func (*EcsClient) NovaListKeypairs

func (c *EcsClient) NovaListKeypairs(request *model.NovaListKeypairsRequest) (*model.NovaListKeypairsResponse, error)

查询SSH密钥信息列表。

func (*EcsClient) NovaListServerSecurityGroups

查询指定弹性云服务器的安全组。

func (*EcsClient) NovaListServersDetails

查询云服务器详情信息列表。

func (*EcsClient) NovaShowServer

func (c *EcsClient) NovaShowServer(request *model.NovaShowServerRequest) (*model.NovaShowServerResponse, error)

根据云服务器ID,查询云服务器的详细信息。

func (*EcsClient) ReinstallServerWithCloudInit

重装弹性云服务器的操作系统。支持弹性云服务器数据盘不变的情况下,使用原镜像重装系统盘。 调用该接口后,系统将卸载系统盘,然后使用原镜像重新创建系统盘,并挂载至弹性云服务器,实现重装操作系统功能。

func (*EcsClient) ResetServerPassword

重置弹性云服务器管理帐号(root用户或Administrator用户)的密码。

func (*EcsClient) ResizePostPaidServer

当您创建的弹性云服务器规格无法满足业务需要时,可以变更云服务器规格,升级vCPU、内存。具体接口的使用,请参见本节内容。 变更规格时,部分规格的云服务器之间不能互相变更。 您可以通过接口“/v1/{project_id}/cloudservers/resize_flavors?{instance_uuid,source_flavor_id,source_flavor_name}”查询支持列表。

func (*EcsClient) ResizeServer

func (c *EcsClient) ResizeServer(request *model.ResizeServerRequest) (*model.ResizeServerResponse, error)

变更云服务器规格。 v1.1版本:指该接口兼容v1接口的功能,同时合入新功能,支持变更包年/包月弹性云服务器的规格。 注意事项: - 该接口可以使用合作伙伴自身的AK/SK或者token调用,也可以用合作伙伴子客户的AK/SK或者token来调用。 - 如果使用AK/SK认证方式,示例代码中region请参考[地区和终端节点](https://developer.huaweicloud.com/endpoint)中“弹性云服务 ECS”下“区域”的内容,,serviceName(英文服务名称缩写)请指定为ECS。 - Endpoint请参考[地区和终端节点](https://developer.huaweicloud.com/endpoint)中“弹性云服务 ECS”下“终端节点(Endpoint)”的内容。

func (*EcsClient) ShowJob

func (c *EcsClient) ShowJob(request *model.ShowJobRequest) (*model.ShowJobResponse, error)

查询Job的执行状态。 对于创建云服务器、删除云服务器、云服务器批量操作和网卡操作等异步API,命令下发后,会返回job_id,通过job_id可以查询任务的执行状态。

func (*EcsClient) ShowResetPasswordFlag

查询弹性云服务器是否支持一键重置密码。

func (*EcsClient) ShowServer

func (c *EcsClient) ShowServer(request *model.ShowServerRequest) (*model.ShowServerResponse, error)

查询弹性云服务器的详细信息。 该接口支持查询弹性云服务器的计费方式,以及是否被冻结。

func (*EcsClient) ShowServerLimits

func (c *EcsClient) ShowServerLimits(request *model.ShowServerLimitsRequest) (*model.ShowServerLimitsResponse, error)

查询租户配额信息。

func (*EcsClient) ShowServerRemoteConsole

获取弹性云服务器VNC远程登录地址。

func (*EcsClient) ShowServerTags

func (c *EcsClient) ShowServerTags(request *model.ShowServerTagsRequest) (*model.ShowServerTagsResponse, error)

- 查询指定云服务器的标签信息。 - 标签管理服务TMS使用该接口查询指定云服务器的全部标签数据。

func (*EcsClient) UpdateServer

func (c *EcsClient) UpdateServer(request *model.UpdateServerRequest) (*model.UpdateServerResponse, error)

修改云服务器信息,目前支持修改云服务器名称及描述和hostname。

func (*EcsClient) UpdateServerMetadata

更新云服务器元数据。 - 如果元数据中没有待更新字段,则自动添加该字段。 - 如果元数据中已存在待更新字段,则直接更新字段值。 - 如果元数据中的字段不再请求参数中,则保持不变

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL