jdcloud_sdk.services.vm.models package

Submodules

jdcloud_sdk.services.vm.models.Ag module

class jdcloud_sdk.services.vm.models.Ag.Ag(name=None, id=None)[source]

Bases: object

Parameters:
  • name – (Optional) 高可用组名称。
  • id – (Optional) 高可用组ID。

jdcloud_sdk.services.vm.models.CopyImage module

class jdcloud_sdk.services.vm.models.CopyImage.CopyImage(destinationImageId=None, sourceImageId=None)[source]

Bases: object

Parameters:
  • destinationImageId – (Optional) 跨区复制产生的目标镜像ID。
  • sourceImageId – (Optional) 源镜像ID。

jdcloud_sdk.services.vm.models.Gpu module

class jdcloud_sdk.services.vm.models.Gpu.Gpu(model=None, number=None)[source]

Bases: object

Parameters:
  • model – (Optional) GPU卡型号。
  • number – (Optional) GPU卡数量。

jdcloud_sdk.services.vm.models.Image module

class jdcloud_sdk.services.vm.models.Image.Image(imageId=None, name=None, platform=None, osVersion=None, architecture=None, systemDiskSizeGB=None, imageSource=None, osType=None, status=None, createTime=None, sizeMB=None, desc=None, ownerPin=None, launchPermission=None, systemDisk=None, dataDisks=None, snapshotId=None, rootDeviceType=None, progress=None, offline=None, serviceCode=None, imported=None, expiredTime=None)[source]

Bases: object

param imageId:(Optional) 镜像ID。
param name:(Optional) 镜像名称。
param platform:(Optional) 镜像的操作系统平台名称。

取值范围:Ubuntu、CentOS、Windows Server、Other Linux、Other Windows

param osVersion:
 (Optional) 镜像的操作系统版本。
param architecture:
 (Optional) 镜像架构。取值范围:x86_64、arm64
param systemDiskSizeGB:
 (Optional) 镜像系统盘大小。
param imageSource:
 (Optional) 镜像来源,取值范围:

public:官方镜像。 thirdparty:镜像市场镜像。 private:用户自己的私有镜像。 shared:其他用户分享的镜像。 community:社区镜像。

param osType:(Optional) 镜像的操作系统类型。取值范围:windows、linux
param status:(Optional) 镜像状态。参考 [镜像状态](https://docs.jdcloud.com/virtual-machines/api/image_status)。
param createTime:
 (Optional) 镜像的创建时间。
param sizeMB:(Optional) 镜像文件的实际大小。
param desc:(Optional) 镜像描述。
param ownerPin:(Optional) 该镜像拥有者的用户PIN。
param launchPermission:
 (Optional) 镜像的使用权限。取值范围:

all:没有限制,所有人均可以使用。 specifiedUsers:只有共享用户可以使用。 ownerOnly:镜像拥有者自己可以使用。

param systemDisk:
 (Optional) 镜像系统盘配置。
param dataDisks:
 (Optional) 镜像数据盘配置列表。
param snapshotId:
 (Optional) 创建云盘系统盘所使用的快照ID。系统盘类型为本地盘的镜像,此参数为空。
param rootDeviceType:
 (Optional) 镜像支持的系统盘类型。取值范围:

localDisk:本地盘系统盘。 cloudDisk:云盘系统盘。

param progress:(Optional) 镜像复制和转换时的进度,仅显示数值,单位为百分比。
param offline:(Optional) 镜像的上下线状态。offline=true 的镜像不再允许创建云主机。
param serviceCode:
 (Optional) 已废弃。
param imported:(Optional) 是否来自导入镜像。
param expiredTime:
 (Optional) 镜像过期时间,空表示永久有效。

jdcloud_sdk.services.vm.models.ImageConstraint module

class jdcloud_sdk.services.vm.models.ImageConstraint.ImageConstraint(imageId=None, imageInstanceTypeConstraint=None)[source]

Bases: object

Parameters:
  • imageId – (Optional) 镜像ID。
  • imageInstanceTypeConstraint – (Optional) 镜像对实例规格的约束信息。

jdcloud_sdk.services.vm.models.ImageInstanceTypeConstraint module

class jdcloud_sdk.services.vm.models.ImageInstanceTypeConstraint.ImageInstanceTypeConstraint(constraintsType=None, instanceTypes=None)[source]

Bases: object

param constraintsType:
 (Optional) 对实例规格的限制类型。取值范围:

excludes:不支持的实例规格,当前只支持 excludes 一种数据。 includes:支持的实例规格。

param instanceTypes:
 (Optional) 实例规格列表。

jdcloud_sdk.services.vm.models.Instance module

class jdcloud_sdk.services.vm.models.Instance.Instance(instanceId=None, instanceName=None, hostname=None, instanceType=None, vpcId=None, subnetId=None, privateIpAddress=None, elasticIpId=None, elasticIpAddress=None, status=None, description=None, imageId=None, systemDisk=None, dataDisks=None, primaryNetworkInterface=None, secondaryNetworkInterfaces=None, launchTime=None, az=None, keyNames=None, charge=None, spotStatus=None, ag=None, faultDomain=None, tags=None, chargeOnStopped=None, policies=None, dedicatedPoolId=None, dedicatedHostId=None, burstInfo=None, resourceGroupId=None, osType=None, cpuTopology=None, osVersion=None, platform=None, architecture=None)[source]

Bases: object

param instanceId:
 (Optional) 云主机ID。
param instanceName:
 (Optional) 云主机名称。
param hostname:(Optional) 云主机hostname。
param instanceType:
 (Optional) 实例规格。
param vpcId:(Optional) 主网卡所属VPC的ID。
param subnetId:(Optional) 主网卡所属子网的ID。
param privateIpAddress:
 (Optional) 主网卡主内网IP地址。
param elasticIpId:
 (Optional) 主网卡主IP绑定弹性IP的ID。
param elasticIpAddress:
 (Optional) 主网卡主IP绑定弹性IP的地址。
param status:(Optional) 云主机状态,参考 [云主机状态](https://docs.jdcloud.com/virtual-machines/api/vm_status)。
param description:
 (Optional) 云主机描述。
param imageId:(Optional) 云主机使用的镜像ID。
param systemDisk:
 (Optional) 系统盘配置。
param dataDisks:
 (Optional) 数据盘配置列表。
param primaryNetworkInterface:
 (Optional) 主网卡主IP关联的弹性公网IP配置。
param secondaryNetworkInterfaces:
 (Optional) 辅助网卡配置列表。
param launchTime:
 (Optional) 云主机实例的创建时间。
param az:(Optional) 云主机所在可用区。
param keyNames:(Optional) 云主机使用的密钥对名称。
param charge:(Optional) 云主机的计费信息。
param spotStatus:
 (Optional) 抢占实例状态机
param ag:(Optional) 云主机关联的高可用组,如果创建云主机使用了高可用组,此处可展示高可用组名称。
param faultDomain:
 (Optional) 高可用组中的错误域。
param tags:(Optional) Tag信息。
param chargeOnStopped:
 (Optional) 停机不计费模式。该参数仅对按配置计费且系统盘为云硬盘的实例生效,并且不是专有宿主机中的实例。

keepCharging:关机后继续计费。 stopCharging:关机后停止计费。

param policies:(Optional) 自动任务策略,关联了自动任务策略时可获取相应信息。
param dedicatedPoolId:
 (Optional) 云主机所属的专有宿主机池。
param dedicatedHostId:
 (Optional) 云主机所属的专有宿主机ID。
param burstInfo:
 (Optional) 突发型实例参数信息
param resourceGroupId:
 (Optional) 资源组ID
param osType:(Optional) 云主机操作系统类型,如linux或者windows
param cpuTopology:
 (Optional) 虚机CPU拓扑
param osVersion:
 (Optional) 云主机操作系统版本,如7.6
param platform:(Optional) 具体操作系统CentOS
param architecture:
 (Optional) 架构信息,如x86_64

jdcloud_sdk.services.vm.models.InstanceDiskAttachment module

class jdcloud_sdk.services.vm.models.InstanceDiskAttachment.InstanceDiskAttachment(diskCategory=None, autoDelete=None, localDisk=None, cloudDisk=None, deviceName=None, status=None)[source]

Bases: object

param diskCategory:
 (Optional) 磁盘类型。

系统盘:取值为:local 本地系统盘 或 cloud 云盘系统盘。 数据盘:取值为:local 本地数据盘 或 cloud 云盘数据盘。

param autoDelete:
 (Optional) 是否随实例一起删除,即删除实例时是否自动删除此磁盘。此参数仅对按配置计费的非多点挂载云硬盘生效。

true:随实例删除。 false:不随实例删除。

param localDisk:
 (Optional) 本地磁盘配置,对应 diskCategory=local
param cloudDisk:
 (Optional) 云硬盘配置,对应 diskCategory=cloud
param deviceName:
 (Optional) 磁盘逻辑挂载点。

系统盘:默认为vda。 数据盘:取值范围:[vdb~vdbm]

param status:(Optional) 磁盘挂载状态。

取值范围:attaching、detaching、attached、detached、error_attach、error_detach

jdcloud_sdk.services.vm.models.InstanceDiskAttachmentSpec module

class jdcloud_sdk.services.vm.models.InstanceDiskAttachmentSpec.InstanceDiskAttachmentSpec(diskCategory=None, autoDelete=None, cloudDiskSpec=None, deviceName=None, noDevice=None)[source]

Bases: object

param diskCategory:
 (Optional) 磁盘类型。

系统盘:此参数无须指定,其类型取决于镜像类型。 数据盘:可选值:cloud:云硬盘,数据盘仅支持云硬盘。

param autoDelete:
 (Optional) 是否随实例一起删除,即删除实例时是否自动删除此磁盘。此参数仅对按配置计费的非多点挂载云硬盘生效。

true:随实例删除。 `false`(默认值):不随实例删除。

param cloudDiskSpec:
 (Optional) 磁盘详细配置。此参数仅针对云硬盘,本地系统盘无须指定且指定无效。
param deviceName:
 (Optional) 磁盘逻辑挂载点。

系统盘:此参数无须指定且指定无效,默认为vda。 数据盘:取值范围:[vdb~vdbm]

param noDevice:(Optional) 排除设备,使用此参数 noDevice 配合 deviceName 一起使用。

创建镜像的场景下:使用此参数可以排除云主机实例中的云硬盘不参与制作快照。 创建实例模板的场景下:使用此参数可以排除镜像中的数据盘。 创建云主机的场景下:使用此参数可以排除实例模板、或镜像中的数据盘。 示例:如果镜像中除系统盘还包含一块或多块数据盘,期望仅使用镜像中的部分磁盘,可通过此参数忽略部分磁盘配置。此参数须配合 deviceName 一起使用。 例:deviceName=vdbnoDevice=true,则表示在使用镜像创建实例时,忽略数据盘vdb配置,不创建磁盘。

jdcloud_sdk.services.vm.models.InstanceDiskAttribute module

class jdcloud_sdk.services.vm.models.InstanceDiskAttribute.InstanceDiskAttribute(diskId=None, autoDelete=None)[source]

Bases: object

param diskId:(Optional) 云硬盘ID。
param autoDelete:
 (Optional) 是否随实例一起删除,即删除实例时是否自动删除此磁盘。此参数仅对按配置计费的非多点挂载云硬盘生效。

true:随实例删除。 `false`(默认值):不随实例删除。

jdcloud_sdk.services.vm.models.InstanceNetworkAttribute module

class jdcloud_sdk.services.vm.models.InstanceNetworkAttribute.InstanceNetworkAttribute(networkInterfaceId=None, autoDelete=None)[source]

Bases: object

param networkInterfaceId:
 (Optional) 弹性网卡ID。
param autoDelete:
 (Optional) 是否随实例一起删除。

true:随实例删除。 `false`(默认值):不随实例删除。

jdcloud_sdk.services.vm.models.InstanceNetworkInterface module

class jdcloud_sdk.services.vm.models.InstanceNetworkInterface.InstanceNetworkInterface(networkInterfaceId=None, macAddress=None, vpcId=None, subnetId=None, securityGroups=None, sanityCheck=None, primaryIp=None, secondaryIps=None)[source]

Bases: object

Parameters:
  • networkInterfaceId – (Optional) 弹性网卡ID。
  • macAddress – (Optional) 弹性网卡MAC地址。
  • vpcId – (Optional) 弹性网卡所属VPC的ID。
  • subnetId – (Optional) 子网ID。
  • securityGroups – (Optional)
  • sanityCheck – (Optional) PortSecurity,源和目标IP地址校验,取值为0或者1。
  • primaryIp – (Optional) 网卡主IP配置。
  • secondaryIps – (Optional) 网卡辅IP地址列表。

jdcloud_sdk.services.vm.models.InstanceNetworkInterfaceAttachment module

class jdcloud_sdk.services.vm.models.InstanceNetworkInterfaceAttachment.InstanceNetworkInterfaceAttachment(deviceIndex=None, autoDelete=None, networkInterface=None)[source]

Bases: object

param deviceIndex:
 (Optional) 网卡设备Index。创建实例时此参数无须指定且指定无效。

对于主网卡默认Index为1,辅助网卡自动分配。

param autoDelete:
 (Optional) 是否随实例一起删除。

true:随实例删除。 `false`(默认值):不随实例删除。

param networkInterface:
 (Optional) 网卡设备详细配置。

jdcloud_sdk.services.vm.models.InstanceNetworkInterfaceAttachmentSpec module

class jdcloud_sdk.services.vm.models.InstanceNetworkInterfaceAttachmentSpec.InstanceNetworkInterfaceAttachmentSpec(deviceIndex=None, autoDelete=None, networkInterface=None)[source]

Bases: object

param deviceIndex:
 (Optional) 网卡设备Index。创建实例时此参数无须指定且指定无效。

对于主网卡默认Index为1,辅助网卡自动分配。

param autoDelete:
 (Optional) 是否随实例一起删除。

true:随实例删除。 `false`(默认值):不随实例删除。

param networkInterface:
 (Optional) 网卡设备详细配置。

jdcloud_sdk.services.vm.models.InstancePrivateIpAddress module

class jdcloud_sdk.services.vm.models.InstancePrivateIpAddress.InstancePrivateIpAddress(instanceId=None, privateIpAddress=None)[source]

Bases: object

Parameters:
  • instanceId – (Optional) 云主机ID。
  • privateIpAddress – (Optional) 内网主IP地址。

jdcloud_sdk.services.vm.models.InstanceSpec module

class jdcloud_sdk.services.vm.models.InstanceSpec.InstanceSpec(name, dedicatedPoolId=None, dedicatedHostId=None, agId=None, instanceTemplateId=None, az=None, instanceType=None, burstSpec=None, imageId=None, hostname=None, password=None, keyNames=None, elasticIp=None, primaryNetworkInterface=None, systemDisk=None, dataDisks=None, charge=None, metadata=None, userdata=None, description=None, noPassword=None, noKeyNames=None, noElasticIp=None, noInstanceTags=None, userTags=None, chargeOnStopped=None, autoImagePolicyId=None, passwordAuth=None, imageInherit=None, resourceGroupId=None, cpuTopology=None)[source]

Bases: object

param dedicatedPoolId:
 (Optional) 实例所属的专有宿主机池,如果指定了dedicatedHostId,则此参数无效
param dedicatedHostId:
 (Optional) 专有宿主机ID
param agId:(Optional) 高可用组ID。指定此参数后,将默认使用高可用组关联的实例模板创建实例,实例模板中的参数不可覆盖替换。实例模板以外的参数(内网IPv4/Ipv6分配方式、名称、描述、标签)可指定。
param instanceTemplateId:
 (Optional) 实例模板ID。指定此参数后,如实例模板中参数不另行指定将默认以模板配置创建实例,如指定则以指定值为准创建。

指定 agId 时此参数无效。

param az:(Optional) 实例所属的可用区。

如不指定 agId 以使用高可用组设置的可用区,此参数为必选。

param instanceType:
 (Optional) 实例规格。可通过 [DescribeInstanceTypes](https://docs.jdcloud.com/virtual-machines/api/describeinstancetypes) 接口查询各地域及可用区下的规格售卖情况。

如不指定 agIdinstanceTemplateId 以使用实例模板中配置的规格,此参数为必选。

param burstSpec:
 (Optional) 突发型实例参数配置
param imageId:(Optional) 镜像ID。可通过 [DescribeImages](https://docs.jdcloud.com/virtual-machines/api/describeimages) 接口获得指定地域的镜像信息。

如不指定 agIdinstanceTemplateId 以使用实例模板中配置的镜像,此参数为必选。

param name:实例名称。长度为2~128个字符,只允许中文、数字、大小写字母、英文下划线(_)、连字符(-)及点(.),不能以(.)作为首尾。

批量创建多台实例时,可在name中非首位位置以[start_number]格式来设置有序name。start_number为起始序号,其位数代表编号字符位数,范围:[0,9999]。 例如:name设置为“instance-[001]-ops”,则第一台主机name为“instance-001o-ps”,第二台主机name为“instance-002-ops”。详情参见[为实例设置有序名称及Hostname]()。

param hostname:(Optional) 实例hostname。若不指定hostname,则默认以实例名称 name 作为hostname,但是会以RFC 952和RFC 1123命名规范做一定转义。

Windows系统:长度为2~15个字符,允许大小写字母、数字或连字符(-),不能以连字符(-)开头或结尾,不能连续使用连字符(-),也不能全部使用数字。不支持点号(.)。 Linux系统:长度为2-64个字符,允许支持多个点号,点之间为一段,每段允许使用大小写字母、数字或连字符(-),但不能连续使用点号(.)或连字符(-),不能以点号(.)或连字符(-)开头或结尾。 批量创建多台实例时,可在hostname中非首位位置以[start_number]格式来设置有序hostname。start_number为起始序号,其位数代表编号字符位数,范围:[0,9999]。。例如:hostname设置为“instance-[000]-ops”,则第一台主机hostname为“instance-000-ops”,第二台主机hostname为“instance-001-ops”。详情参见[为实例设置有序名称及Hostname]()。 批量创建时若不指定序号,则会默认追加从1开始的数字,例如批量创建两台虚拟机,且指定hostname是test,则hostname默认是test1,test2。

param password:(Optional) 实例密码。可用于SSH登录和VNC登录。长度为8~30个字符,必须同时包含大、小写英文字母、数字和特殊符号中的三类字符。特殊符号包括:()`~!@#$%^&*_-+=|{}[ ]:”;’<>,.?/,更多密码输入要求请参见 [公共参数规范](https://docs.jdcloud.com/virtual-machines/api/general_parameters)。

如指定密钥且 passwordAuth 设置为 no ,则密码不会生成注入,否则即使不指定密码系统也将默认自动生成随机密码,并以短信和邮件通知。

param keyNames:(Optional) 密钥对名称。仅Linux系统下该参数生效,当前仅支持输入单个密钥。
param elasticIp:
 (Optional) 主网卡主IP关联的弹性公网IP配置。
param primaryNetworkInterface:
 (Optional) 主网卡配置。
param systemDisk:
 (Optional) 系统盘配置。
param dataDisks:
 (Optional) 数据盘配置。单实例最多可挂载云硬盘(系统盘+数据盘)的数量受实例规格的限制。
param charge:(Optional) 计费配置。

云主机不支持按用量方式计费,默认为按配置计费。 打包创建数据盘的情况下,数据盘的计费方式只能与云主机保持一致。 打包创建弹性公网IP的情况下,若公网IP的计费方式没有指定为按用量计费,那么公网IP计费方式只能与云主机保持一致。 autoChangeChargeMode和autoChangeChargeModeDate字段只有在按配置计费按时间自动转包年包月的场景下有效

param metadata:(Optional) 用户自定义元数据。以key-value键值对形式指定,可在实例系统内通过元数据服务查询获取。最多支持40对键值对,且key不超过256字符,value不超过16KB,不区分大小写。

注意:key不要以连字符(-)结尾,否则此key不生效。

param userdata:(Optional) 自定义脚本。目前仅支持启动脚本,即 launch-script,须 base64 编码且编码前数据长度不能超过16KB。

linux系统:支持 bashpython,编码前须分别以 #!/bin/bash#!/usr/bin/env python 作为内容首行。 Windows系统:支持 batpowershell,编码前须分别以 <cmd></cmd>和<powershell></powershell> 作为内容首、尾行。

param description:
 (Optional) 实例描述。256字符以内。
param noPassword:
 (Optional) 使用实例模板创建实例时,如模板中已设置密码,期望不使用该密码而由系统自动生成时,可通过此参数(true)实现。

可选值: true:不使用实例模板中配置的密码。 false:使用实例模板中配置的密码。 仅在未指定 agId 且指定 instanceTemplateId,且 password 为空时,此参数(true)生效。

param noKeyNames:
 (Optional) 使用实例模板创建实例时,如模板中已设置密钥,期望不使用该密钥仅使用密码作为登录凭证时,可通过此参数(true)实现。

仅在未指定 agId 且指定 instanceTemplateId,且 keyNames 为空时,此参数(true)生效。

param noElasticIp:
 (Optional) 使用实例模板创建实例时,如模板中已设置弹性公网IP,期望不绑定弹性公网IP时,可通过此参数(true)实现。

仅在未指定 agId 且指定 instanceTemplateId,且 elasticIp 为空时,此参数(true)生效。

param noInstanceTags:
 (Optional) 使用实例模板创建实例时,如模板中已设置自定义实例标签,期望不使用自定义实例标签时,可通过此参数(true)实现。

仅在指定 agId 或指定 instanceTemplateId,且 userTags 为空时,此参数(true)生效。

param userTags:(Optional) 自定义实例标签。以key-value键值对形式指定,最多支持10个标签。key不能以 “jrn:” 或“jdc-”开头,仅支持中文、大/小写英文、数字及如下符号:_.,:/=+-@
param chargeOnStopped:
 (Optional) 停机不计费模式。该参数仅对按配置计费且系统盘为云硬盘的实例生效,并且不是专有宿主机中的实例。配置停机不计费且停机后,实例部分将停止计费,且释放实例自身包含的资源(CPU/内存/GPU/本地数据盘)。

可选值: keepCharging`(默认值):停机后保持计费,不释放资源。 `stopCharging:停机后停止计费,释放实例资源。

param autoImagePolicyId:
 (Optional) 自动任务策略ID。
param passwordAuth:
 (Optional) 允许SSH密码登录。

可选值: yes`(默认值):允许SSH密码登录。 `no:禁止SSH密码登录。 仅在指定密钥时此参数有效,指定此参数后密码即使输入也将被忽略,同时会在系统内禁用SSH密码登录。

param imageInherit:
 (Optional) 使用镜像中的登录凭证,无须再指定密码或密钥(指定无效)。

可选值: yes:使用镜像登录凭证。 `no`(默认值):不使用镜像登录凭证。 仅使用私有或共享镜像时此参数有效。

param resourceGroupId:
 (Optional) 资源组ID
param cpuTopology:
 (Optional) 虚机CPU拓扑

jdcloud_sdk.services.vm.models.InstanceStatus module

class jdcloud_sdk.services.vm.models.InstanceStatus.InstanceStatus(instanceId=None, status=None)[source]

Bases: object

Parameters:

jdcloud_sdk.services.vm.models.InstanceTemplate module

class jdcloud_sdk.services.vm.models.InstanceTemplate.InstanceTemplate(id=None, name=None, description=None, instanceTemplateData=None, ags=None, createdTime=None)[source]

Bases: object

Parameters:
  • id – (Optional) 实例模板ID
  • name – (Optional) 实例模板名称。
  • description – (Optional) 实例模板描述。
  • instanceTemplateData – (Optional) 实例模板详细配置。
  • ags – (Optional) 关联的高可用组(ag)信息。
  • createdTime – (Optional) 实例模板创建时间。

jdcloud_sdk.services.vm.models.InstanceTemplateData module

class jdcloud_sdk.services.vm.models.InstanceTemplateData.InstanceTemplateData(instanceType=None, vpcId=None, imageId=None, includePassword=None, systemDisk=None, dataDisks=None, primaryNetworkInterface=None, elasticIp=None, keyNames=None, chargeOnStopped=None, autoImagePolicyId=None, passwordAuth=None, imageInherit=None, burstInfo=None, instanceTags=None)[source]

Bases: object

param instanceType:
 (Optional) 实例规格。
param vpcId:(Optional) 主网卡所属VPC的ID。
param imageId:(Optional) 云主机使用的镜像ID。
param includePassword:
 (Optional) 实例模板中是否包含自定义密码。true:包含自定义密码,false:不包含自定义密码。
param systemDisk:
 (Optional) 系统盘配置。
param dataDisks:
 (Optional) 数据盘配置列表。
param primaryNetworkInterface:
 (Optional) 主网卡配置。
param elasticIp:
 (Optional) 主网卡主IP关联的弹性公网IP配置。
param keyNames:(Optional) 云主机使用的密钥对名称。
param chargeOnStopped:
 (Optional) 停机不计费模式。该参数仅对按配置计费且系统盘为云硬盘的实例生效,并且不是专有宿主机中的实例。

keepCharging:关机后继续计费。 stopCharging:关机后停止计费。

param autoImagePolicyId:
 (Optional) 自动任务策略ID。
param passwordAuth:
 (Optional) 允许SSH密码登录。

yes:允许SSH密码登录。 no:禁止SSH密码登录。 仅在指定密钥时此参数有效,指定此参数后密码即使输入也将被忽略,同时会在系统内禁用SSH密码登录。

param imageInherit:
 (Optional) 使用镜像中的登录凭证,无须再指定密码或密钥(指定无效)。

yes:使用镜像登录凭证。 no:不使用镜像登录凭证。 仅使用私有或共享镜像时此参数有效。

param burstInfo:
 (Optional) 突发型实例参数信息
param instanceTags:
 (Optional) 自定义实例标签。

jdcloud_sdk.services.vm.models.InstanceTemplateDisk module

class jdcloud_sdk.services.vm.models.InstanceTemplateDisk.InstanceTemplateDisk(diskType=None, diskSizeGB=None, snapshotId=None, policyId=None, encrypt=None, iops=None)[source]

Bases: object

param diskType:(Optional) 云硬盘类型。取值范围:ssd、premium-hdd、hdd.std1、ssd.gp1、ssd.io1
param diskSizeGB:
 (Optional) 云硬盘大小。单位为 GiB。

ssd:取值范围[20,1000]GB,步长为10GB。 premium-hdd:取值范围[20,3000]GB,步长为10GB。 hdd.std1、ssd.gp1、ssd.io1:取值范围[20-16000]GB,步长为10GB。

param snapshotId:
 (Optional) 创建云硬盘的快照ID。
param policyId:(Optional) 云盘快照策略ID。
param encrypt:(Optional) 是否是加密云盘。false:(默认)不加密。true:加密。
param iops:(Optional) 云硬盘的最大iops。

jdcloud_sdk.services.vm.models.InstanceTemplateDiskAttachment module

class jdcloud_sdk.services.vm.models.InstanceTemplateDiskAttachment.InstanceTemplateDiskAttachment(diskCategory=None, autoDelete=None, instanceTemplateDisk=None, deviceName=None, noDevice=None)[source]

Bases: object

param diskCategory:
 (Optional) 磁盘类型。

系统盘:取值为:local 本地系统盘 或 cloud 云盘系统盘。 数据盘:取值为:cloud 云盘数据盘。

param autoDelete:
 (Optional) 是否随实例一起删除,即删除实例时是否自动删除此磁盘。此参数仅对按配置计费的非多点挂载云硬盘生效。

true:随实例删除。 false:不随实例删除。

param instanceTemplateDisk:
 (Optional) 云硬盘配置。
param deviceName:
 (Optional) 磁盘逻辑挂载点。

系统盘:默认为vda。 数据盘:取值范围:[vdb~vdbm]

param noDevice:(Optional) 排除设备,使用此参数 noDevice 配合 deviceName 一起使用。

创建镜像的场景下:使用此参数可以排除云主机实例中的云硬盘不参与制作快照。 创建实例模板的场景下:使用此参数可以排除镜像中的数据盘。 创建云主机的场景下:使用此参数可以排除实例模板、或镜像中的数据盘。 示例:如果镜像中除系统盘还包含一块或多块数据盘,期望仅使用镜像中的部分磁盘,可通过此参数忽略部分磁盘配置。此参数须配合 deviceName 一起使用。 例:deviceName=vdbnoDevice=true,则表示在使用镜像创建实例时,忽略数据盘vdb配置,不创建磁盘。

jdcloud_sdk.services.vm.models.InstanceTemplateDiskAttachmentSpec module

class jdcloud_sdk.services.vm.models.InstanceTemplateDiskAttachmentSpec.InstanceTemplateDiskAttachmentSpec(diskCategory=None, autoDelete=None, cloudDiskSpec=None, deviceName=None, noDevice=None)[source]

Bases: object

param diskCategory:
 (Optional) 磁盘类型。

系统盘:此参数无须指定,其类型取决于镜像类型。 数据盘:数据盘仅支持云硬盘`cloud`。

param autoDelete:
 (Optional) 是否随实例一起删除,即删除实例时是否自动删除此磁盘。此参数仅对按配置计费的非多点挂载云硬盘生效。

true:随实例删除。 `false`(默认值):不随实例删除。

param cloudDiskSpec:
 (Optional) 磁盘详细配置。此参数仅针对云硬盘,本地系统盘无须指定且指定无效。
param deviceName:
 (Optional) 磁盘逻辑挂载点。

系统盘:此参数无须指定且指定无效,默认为vda。 数据盘:取值范围:[vdb~vdbm]

param noDevice:(Optional) 排除设备,使用此参数 noDevice 配合 deviceName 一起使用。

创建实例模板的场景下:使用此参数可以排除镜像中的数据盘。 示例:如果镜像中除系统盘还包含一块或多块数据盘,期望仅使用镜像中的部分磁盘,配置`deviceName=vdb`、noDevice=true,则表示在使用实例模板创建实例时,忽略镜像中数据盘vdb配置,不创建磁盘。

jdcloud_sdk.services.vm.models.InstanceTemplateDiskSpec module

class jdcloud_sdk.services.vm.models.InstanceTemplateDiskSpec.InstanceTemplateDiskSpec(diskType=None, diskSizeGB=None, snapshotId=None, policyId=None, encrypt=None, iops=None)[source]

Bases: object

param diskType:(Optional) 云硬盘类型。各类型介绍请参见[云硬盘类型](https://docs.jdcloud.com/cn/cloud-disk-service/instance-type)。

可选值: ssd.gp1:通用型SSD ssd.io1:性能型SSD hdd.std1:容量型HDD

param diskSizeGB:
 (Optional) 云硬盘容量,单位为 GiB,步长10GiB。

取值范围: 系统盘:`[40,500]`GiB,且不能小于镜像系统盘容量 数据盘:`[20,16000]`GiB,如指定`snapshotId`创建云硬盘则不能小于快照容量。

param snapshotId:
 (Optional) 创建云硬盘的快照ID。
param policyId:(Optional) 云硬盘自动快照策略ID。
param encrypt:(Optional) 云硬盘是否加密。

可选值: true:加密 `false`(默认值):不加密

param iops:(Optional) 云硬盘的最大iops。

jdcloud_sdk.services.vm.models.InstanceTemplateElasticIp module

class jdcloud_sdk.services.vm.models.InstanceTemplateElasticIp.InstanceTemplateElasticIp(bandwidthMbps, chargeMode, provider=None)[source]

Bases: object

Parameters:
  • bandwidthMbps – 弹性公网IP的限速(单位:MB)。
  • provider – (Optional) IP服务商,取值范围:BGP、nonBGP
  • chargeMode – 计费类型,支持按带宽计费 bandwith,按流量计费 flow

jdcloud_sdk.services.vm.models.InstanceTemplateElasticIpSpec module

class jdcloud_sdk.services.vm.models.InstanceTemplateElasticIpSpec.InstanceTemplateElasticIpSpec(bandwidthMbps, chargeMode, provider=None)[source]

Bases: object

param bandwidthMbps:
 弹性公网IP的带宽上限,单位:Mbps。

取值范围为:[1-200]

param provider:(Optional) 弹性公网IP线路。中心可用区目前仅提供`BGP`类型IP。
param chargeMode:
 弹性公网IP计费模式。可选值:

bandwith:按带宽计费。 flow:按流量计费。 若指定`chargeSpec=bandwith`则弹性公网IP计费类型同实例(包年包月或按配置)。边缘可用区目前仅支持`flow`计费模式。

jdcloud_sdk.services.vm.models.InstanceTemplateNetworkInterfaceAttachmentSpec module

class jdcloud_sdk.services.vm.models.InstanceTemplateNetworkInterfaceAttachmentSpec.InstanceTemplateNetworkInterfaceAttachmentSpec(networkInterface, deviceIndex=None, autoDelete=None)[source]

Bases: object

param deviceIndex:
 (Optional) 网卡设备Index。创建实例时此参数无须指定且指定无效。

对于主网卡默认Index为1。

param autoDelete:
 (Optional) 是否随实例一起删除。

true:随实例删除。 false:不随实例删除。 主网卡此属性默认为`true`

param networkInterface:
 网卡设备详细配置。

jdcloud_sdk.services.vm.models.InstanceTemplateNetworkInterfaceSpec module

class jdcloud_sdk.services.vm.models.InstanceTemplateNetworkInterfaceSpec.InstanceTemplateNetworkInterfaceSpec(subnetId, securityGroups=None, sanityCheck=None, ipv6AddressCount=None)[source]

Bases: object

Parameters:
  • subnetId – 子网ID。
  • securityGroups – (Optional) 安全组ID列表。
  • sanityCheck – (Optional) 参数已弃用,指定无效。
  • ipv6AddressCount – (Optional) 自动分配的ipv6地址数量,取值范围[0,1],默认为0。

jdcloud_sdk.services.vm.models.InstanceTemplateSpec module

class jdcloud_sdk.services.vm.models.InstanceTemplateSpec.InstanceTemplateSpec(instanceType, imageId, primaryNetworkInterface, password=None, keyNames=None, metadata=None, userdata=None, elasticIp=None, systemDisk=None, dataDisks=None, chargeOnStopped=None, autoImagePolicyId=None, passWordAuth=None, imageInherit=None, burstSpec=None, instanceTags=None)[source]

Bases: object

param instanceType:
 实例规格,可查询 [DescribeInstanceTypes](https://docs.jdcloud.com/virtual-machines/api/describeinstancetypes) 接口获得指定地域或可用区的规格信息。
param imageId:镜像ID,可查询 [DescribeImages](https://docs.jdcloud.com/virtual-machines/api/describeimages) 接口获得指定地域的镜像信息。
param password:(Optional) 实例密码。可用于SSH登录和VNC登录。长度为8~30个字符,必须同时包含大、小写英文字母、数字和特殊符号中的三类字符。特殊符号包括:()`~!@#$%^&*_-+=|{}[ ]:”;’<>,.?/,更多密码输入要求请参见 [公共参数规范](https://docs.jdcloud.com/virtual-machines/api/general_parameters)。

如指定密钥且 passwordAuth 设置为 no,则密码不会生成注入,否则即使不指定密码系统也将默认自动生成随机密码,并以短信和邮件通知。

param keyNames:(Optional) 密钥对名称。仅Linux系统下该参数生效,当前仅支持输入单个密钥。
param metadata:(Optional) 用户自定义元数据。以key-value键值对形式指定,可在实例系统内通过元数据服务查询获取。最多支持20对键值对,且key不超过256字符,value不超过16KB,不区分大小写。

注意:key不要以连字符(-)结尾,否则此key不生效。

param userdata:(Optional) 自定义脚本。目前仅支持启动脚本,即 launch-script,须 base64 编码且编码前数据长度不能超过16KB。

linux系统:支持 bashpython,编码前须分别以 #!/bin/bash#!/usr/bin/env python 作为内容首行。 Windows系统:支持 batpowershell,编码前须分别以 <cmd></cmd>和<powershell></powershell> 作为内容首、尾行。

param elasticIp:
 (Optional) 主网卡主IP关联的弹性公网IP配置。
param primaryNetworkInterface:
 主网卡配置。
param systemDisk:
 (Optional) 系统盘配置。
param dataDisks:
 (Optional) 数据盘配置。单实例最多可挂载云硬盘(系统盘+数据盘)的数量受实例规格的限制。
param chargeOnStopped:
 (Optional) 停机不计费模式。该参数仅对按配置计费且系统盘为云硬盘的实例生效,并且不是专有宿主机中的实例。配置停机不计费且停机后,实例部分将停止计费,且释放实例自身包含的资源(CPU/内存/GPU/本地数据盘)。

可选值: keepCharging`(默认值):停机后保持计费,不释放资源。 `stopCharging:停机后停止计费,释放实例资源。

param autoImagePolicyId:
 (Optional) 自动任务策略ID。
param passWordAuth:
 (Optional) 是否允许SSH密码登录。

yes:允许SSH密码登录。 no:禁止SSH密码登录。 仅在指定密钥时此参数有效,指定此参数后密码即使输入也将被忽略,同时会在系统内禁用SSH密码登录。

param imageInherit:
 (Optional) 是否使用镜像中的登录凭证,不再指定密码或密钥。

yes:使用镜像登录凭证。 `no`(默认值):不使用镜像登录凭证。 仅使用私有或共享镜像时此参数有效。若指定`imageInherit=yes`则指定的密码或密钥将无效。

param burstSpec:
 (Optional) 突发型实例参数配置
param instanceTags:
 (Optional) 自定义实例标签。以key-value键值对形式指定,最多支持10个标签。key不能以 “jrn:” 或“jdc-”开头,仅支持中文、大/小写英文、数字及如下符号:_.,:/=+-@

jdcloud_sdk.services.vm.models.InstanceType module

class jdcloud_sdk.services.vm.models.InstanceType.InstanceType(family=None, instanceType=None, cpu=None, architecture=None, memoryMB=None, nicLimit=None, cloudDiskCountLimit=None, desc=None, state=None, gpu=None, localDisks=None, generation=None, burstInfo=None, cloudDiskTypes=None)[source]

Bases: object

Parameters:
  • family – (Optional) 实例规格族。
  • instanceType – (Optional) 实例规格。
  • cpu – (Optional) cpu个数。
  • architecture – (Optional) 镜像架构。取值范围:x86_64、arm64
  • memoryMB – (Optional) 内存大小。
  • nicLimit – (Optional) 支持绑定的弹性网卡数量,包括主网卡。
  • cloudDiskCountLimit – (Optional) 支持挂载的云硬盘数量,包括云盘系统盘。
  • desc – (Optional) 实例规格描述。
  • state – (Optional) 实例规格售卖状态。已售罄的实例规格无法使用。
  • gpu – (Optional) GPU配置,针对GPU类型的实例规格有效。
  • localDisks – (Optional) 本地数据盘配置(缓存盘),针对GPU类型、或本地存储型的实例规格有效。
  • generation – (Optional) 实例规格代数。
  • burstInfo – (Optional) 突发型规格信息
  • cloudDiskTypes – (Optional) 支持的云盘类型

jdcloud_sdk.services.vm.models.InstanceTypeState module

class jdcloud_sdk.services.vm.models.InstanceTypeState.InstanceTypeState(az=None, inStock=None, availableCount=None)[source]

Bases: object

Parameters:
  • az – (Optional) 可用区。
  • inStock – (Optional) 售卖状态,true:可售卖、false:已售罄不可用。
  • availableCount – (Optional) 可用库存数量,目前该字段为预留阶段,敬请期待。

jdcloud_sdk.services.vm.models.Keypair module

class jdcloud_sdk.services.vm.models.Keypair.Keypair(keyName=None, keyFingerprint=None, createTime=None, instanceIds=None)[source]

Bases: object

Parameters:
  • keyName – (Optional) 密钥对名称。
  • keyFingerprint – (Optional) 密钥对的指纹,根据 RFC4716 定义的公钥指纹格式,采用 MD5 信息摘要算法。
  • createTime – (Optional) 密钥创建时间。
  • instanceIds – (Optional) 绑定了此密钥的云主机ID列表。

jdcloud_sdk.services.vm.models.LocalDisk module

class jdcloud_sdk.services.vm.models.LocalDisk.LocalDisk(diskType=None, diskSizeGB=None)[source]

Bases: object

Parameters:
  • diskType – (Optional) 磁盘类型,取值范围:ssd、premium-hdd、hdd.std1、ssd.gp1、ssd.io1
  • diskSizeGB – (Optional) 磁盘大小。

jdcloud_sdk.services.vm.models.Quota module

class jdcloud_sdk.services.vm.models.Quota.Quota(resourceType=None, limit=None, used=None)[source]

Bases: object

param resourceType:
 (Optional) 资源类型。支持范围:

instance:云主机。 instance_cpu:云主机的CPU。 instance_memory:云主机的内存。 instance_local_disk:云主机的本地盘。 keypair:密钥。 image:镜像。 instanceTemplate:实例模板。 imageShare:共享镜像。

param limit:(Optional) 配额上限。
param used:(Optional) 已用配额。

jdcloud_sdk.services.vm.models.SecurityGroupSimple module

class jdcloud_sdk.services.vm.models.SecurityGroupSimple.SecurityGroupSimple(groupId=None, groupName=None)[source]

Bases: object

Parameters:
  • groupId – (Optional) 安全组ID。
  • groupName – (Optional) 安全组名称。

jdcloud_sdk.services.vm.models.TagFilter module

class jdcloud_sdk.services.vm.models.TagFilter.TagFilter(key=None, values=None)[source]

Bases: object

Parameters:
  • key – (Optional) 标签key。
  • values – (Optional) 标签value。

Module contents