jdcloud_sdk.services.pod.models package

Submodules

jdcloud_sdk.services.pod.models.CloudDisk module

class jdcloud_sdk.services.pod.models.CloudDisk.CloudDisk(category=None, volumeId=None, snapshotId=None, diskType=None, sizeGB=None, fsType=None, iops=None, autoDelete=None)[source]

Bases: object

Parameters:
  • category – (Optional)
  • volumeId – (Optional) 云盘ID。
  • snapshotId – (Optional) 云盘快照ID。
  • diskType – (Optional) 云盘类型:hdd.std1,ssd.gp1,ssd.io1。
  • sizeGB – (Optional) 云盘size,单位 GB。
  • fsType – (Optional) 指定volume文件系统类型,目前支持[xfs, ext4]。
  • iops – (Optional) 云盘的 iops 值,目前只有 ssd.io1 类型有效。
  • autoDelete – (Optional) 是否随pod删除。

jdcloud_sdk.services.pod.models.CloudDiskSpec module

class jdcloud_sdk.services.pod.models.CloudDiskSpec.CloudDiskSpec(category=None, volumeId=None, name=None, snapshotId=None, diskType=None, sizeGB=None, fsType=None, iops=None, autoDelete=None)[source]

Bases: object

Parameters:
  • category – (Optional) 磁盘类型,cloud 云盘,local 本地盘(需工单申请)
  • volumeId – (Optional) 云盘ID,指定使用已有云盘
  • name – (Optional) 云盘名称
  • snapshotId – (Optional) 云盘快照ID,根据云盘快照创建云盘。
  • diskType – (Optional) 云盘类型:hdd.std1,ssd.gp1,ssd.io1
  • sizeGB – (Optional) 云盘size,单位 GB,要求
  • fsType – (Optional) 指定volume文件系统类型,目前支持[xfs, ext4];如果新创建的盘,不指定文件系统类型默认格式化成xfs
  • iops – (Optional) 云盘的 iops 值,目前只有 ssd.io1 类型有效
  • autoDelete – (Optional) 是否随pod删除。默认:true

jdcloud_sdk.services.pod.models.Container module

class jdcloud_sdk.services.pod.models.Container.Container(name=None, command=None, args=None, env=None, image=None, secret=None, tty=None, workingDir=None, livenessProbe=None, readinessProbe=None, resources=None, systemDisk=None, volumeMounts=None, containerStatus=None)[source]

Bases: object

Parameters:
  • name – (Optional) 容器名称
  • command – (Optional) 容器执行的命令。
  • args – (Optional) 容器执行命令的参数。
  • env – (Optional) 容器执行的环境变量。
  • image – (Optional) 容器镜像名称。
  • secret – (Optional) 容器镜像仓库认证信息。
  • tty – (Optional) 容器是否分配tty。
  • workingDir – (Optional) 容器的工作目录。
  • livenessProbe – (Optional) 容器存活探针配置
  • readinessProbe – (Optional) 容器服务就绪探针配置
  • resources – (Optional) 容器计算资源配置
  • systemDisk – (Optional) 容器计算资源配置
  • volumeMounts – (Optional) 容器计算资源配置
  • containerStatus – (Optional) 容器状态信息

jdcloud_sdk.services.pod.models.ContainerSpec module

class jdcloud_sdk.services.pod.models.ContainerSpec.ContainerSpec(name, image, systemDisk, command=None, args=None, env=None, secret=None, tty=None, workingDir=None, livenessProbe=None, readinessProbe=None, resources=None, volumeMounts=None)[source]

Bases: object

param name:容器名称,符合DNS-1123 label规范,在一个Pod内不可重复、不支持修改
param command:(Optional) 容器执行命令,如果不指定默认是docker镜像的ENTRYPOINT。总长度256个字符。
param args:(Optional) 容器执行命令的参数,如果不指定默认是docker镜像的CMD。总长度2048个字符。
param env:(Optional) 容器执行的环境变量;如果和镜像中的环境变量Key相同,会覆盖镜像中的值。数组范围:[0-100]
param image:镜像名称 </br>

容器镜像名字。 nginx:latest。长度范围:[1-639] 1. Docker Hub官方镜像通过类似nginx, mysql/mysql-server的名字指定 </br> 2. repository长度最大256个字符,tag最大128个字符,registry最大255个字符 </br>

param secret:(Optional) 镜像仓库认证信息。如果目前不传,默认选择dockerHub镜像
param tty:(Optional) 容器是否分配tty。默认不分配
param workingDir:
 (Optional) 容器的工作目录。如果不指定,默认是根目录(/);必须是绝对路径;长度范围:[0-1024]
param livenessProbe:
 (Optional) 容器存活探针配置
param readinessProbe:
 (Optional) 容器服务就绪探针配置
param resources:
 (Optional) 容器计算资源配置
param systemDisk:
 容器计算资源配置
param volumeMounts:
 (Optional) 云盘挂载信息

jdcloud_sdk.services.pod.models.ContainerState module

class jdcloud_sdk.services.pod.models.ContainerState.ContainerState(running=None, terminated=None, waiting=None)[source]

Bases: object

Parameters:
  • running – (Optional) 容器运行的详细信息
  • terminated – (Optional) 容器终止的详细信息
  • waiting – (Optional) 容器等待的详细信息

jdcloud_sdk.services.pod.models.ContainerStateRunning module

class jdcloud_sdk.services.pod.models.ContainerStateRunning.ContainerStateRunning(startedAt=None)[source]

Bases: object

Parameters:startedAt – (Optional) 容器最后一次重启或启动的时间。

jdcloud_sdk.services.pod.models.ContainerStateTerminated module

class jdcloud_sdk.services.pod.models.ContainerStateTerminated.ContainerStateTerminated(signal=None, exitCode=None, reason=None, message=None, finishedAt=None, startedAt=None)[source]

Bases: object

Parameters:
  • signal – (Optional) 容器被终止的信号。
  • exitCode – (Optional) 容器被终止的退出码。
  • reason – (Optional) (简要)容器被终止的原因。
  • message – (Optional) 容器被终止的详细信息。
  • finishedAt – (Optional) 容器被终止的时间。
  • startedAt – (Optional) 容器开始执行的时间。

jdcloud_sdk.services.pod.models.ContainerStateWaiting module

class jdcloud_sdk.services.pod.models.ContainerStateWaiting.ContainerStateWaiting(reason=None, message=None)[source]

Bases: object

param reason:(Optional) (简要)容器还没有运行原因。<br>

eg ContainerCreating

param message:(Optional) 容器还没有运行的详细信息。

jdcloud_sdk.services.pod.models.ContainerStatus module

class jdcloud_sdk.services.pod.models.ContainerStatus.ContainerStatus(name=None, restartCount=None, ready=None, state=None, lastState=None)[source]

Bases: object

Parameters:
  • name – (Optional) 容器名称
  • restartCount – (Optional) 容器被重新启动的次数
  • ready – (Optional) 容器是否通过了就绪探针探测
  • state – (Optional) 关于容器当前状态详细信息
  • lastState – (Optional) 关于容器最后一次termination详细信息

jdcloud_sdk.services.pod.models.DnsConfig module

class jdcloud_sdk.services.pod.models.DnsConfig.DnsConfig(nameservers=None, searches=None, options=None)[source]

Bases: object

Parameters:
  • nameservers – (Optional) DNS服务器IP地址列表。
  • searches – (Optional) DNS搜索域列表,用于主机名查找。
  • options – (Optional) DNS解析器选项列表。

jdcloud_sdk.services.pod.models.ElasticIp module

class jdcloud_sdk.services.pod.models.ElasticIp.ElasticIp(elasticIpId=None, elasticIpAddress=None)[source]

Bases: object

Parameters:
  • elasticIpId – (Optional) 弹性ip的Id
  • elasticIpAddress – (Optional) 弹性ip地址

jdcloud_sdk.services.pod.models.EnvSpec module

class jdcloud_sdk.services.pod.models.EnvSpec.EnvSpec(name, value=None)[source]

Bases: object

Parameters:
  • name – 环境变量名称(ASCII)。范围:[1-64]。必须为字母、数字、下划线(_),正则为`^[a-zA-Z0-9]*$`。
  • value – (Optional) 环境变量取值。范围:[0-1024]

jdcloud_sdk.services.pod.models.Exec module

class jdcloud_sdk.services.pod.models.Exec.Exec(command=None)[source]

Bases: object

Parameters:command – (Optional) 执行的命令。

jdcloud_sdk.services.pod.models.Hg module

class jdcloud_sdk.services.pod.models.Hg.Hg(scheme=None, host=None, port=None, path=None, httpHeader=None)[source]

Bases: object

Parameters:
  • scheme – (Optional) 默认值:http。
  • host – (Optional) 连接到pod的host信息。
  • port – (Optional) 端口号。
  • path – (Optional) HTTP的路径。
  • httpHeader – (Optional) 自定义Http headers

jdcloud_sdk.services.pod.models.Hh module

class jdcloud_sdk.services.pod.models.Hh.Hh(name=None, value=None)[source]

Bases: object

Parameters:
  • name – (Optional) http header 键
  • value – (Optional) http header 值

jdcloud_sdk.services.pod.models.HostAlias module

class jdcloud_sdk.services.pod.models.HostAlias.HostAlias(hostnames=None, ip=None)[source]

Bases: object

Parameters:
  • hostnames – (Optional) 域名列表。
  • ip – (Optional) ipv4地址。

jdcloud_sdk.services.pod.models.JDCloudVolumeSource module

class jdcloud_sdk.services.pod.models.JDCloudVolumeSource.JDCloudVolumeSource(volumeId=None, snapshotId=None, diskType=None, sizeGB=None, fsType=None, formatVolume=None, iops=None, autoDelete=None)[source]

Bases: object

Parameters:
  • volumeId – (Optional) 云盘id,使用已有云盘
  • snapshotId – (Optional) 云盘快照id,根据云盘快照创建云盘。
  • diskType – (Optional) 云盘类型:hdd.std1,ssd.gp1,ssd.io1
  • sizeGB – (Optional) 云盘size,单位 GB,要求
  • fsType – (Optional) 指定volume文件系统类型,目前支持[xfs, ext4];如果新创建的盘,不指定文件系统类型默认格式化成xfs
  • formatVolume – (Optional) 随容器自动创建的新盘,会自动格式化成指定的文件系统类型;挂载已有的盘,默认不会格式化,只会按照指定的fsType去挂载;如果希望格式化,必须设置此字段为true
  • iops – (Optional) 云盘的 iops 值,目前只有 ssd.io1 类型有效
  • autoDelete – (Optional) 是否随pod删除。默认:true

jdcloud_sdk.services.pod.models.LogConfig module

class jdcloud_sdk.services.pod.models.LogConfig.LogConfig(logDriver=None)[source]

Bases: object

Parameters:logDriver – (Optional) 日志Driver名称。

jdcloud_sdk.services.pod.models.Logs module

class jdcloud_sdk.services.pod.models.Logs.Logs(content=None)[source]

Bases: object

Parameters:content – (Optional) 容器日志内容,最多返回4KB

jdcloud_sdk.services.pod.models.NetworkInterfaceAttachment module

class jdcloud_sdk.services.pod.models.NetworkInterfaceAttachment.NetworkInterfaceAttachment(autoDelete=None, deviceIndex=None, attachStatus=None, attachTime=None, networkInterface=None)[source]

Bases: object

Parameters:
  • autoDelete – (Optional) 指明删除pod时是否删除网卡。
  • deviceIndex – (Optional) 设备Index,目前pod只支持一个网卡,所以只能设置为1
  • attachStatus – (Optional) 绑定状态
  • attachTime – (Optional) 绑定时间
  • networkInterface – (Optional) 网卡接口规范

jdcloud_sdk.services.pod.models.NetworkInterfaceAttachmentSpec module

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

Bases: object

Parameters:
  • autoDelete – (Optional) 指明删除pod时是否删除网卡,默认True;当前只能是True
  • deviceIndex – (Optional) 设备Index,目前pod只支持一个网卡,所以只能设置为1
  • networkInterface – 网卡接口规范

jdcloud_sdk.services.pod.models.Pod module

class jdcloud_sdk.services.pod.models.Pod.Pod(podId=None, name=None, description=None, az=None, hostname=None, ag=None, instanceType=None, restartPolicy=None, terminationGracePeriodSeconds=None, vpcId=None, subnetId=None, privateIpAddress=None, dnsConfig=None, logConfig=None, hostAliases=None, volumes=None, containers=None, podStatus=None, elasticIp=None, primaryNetworkInterface=None, tags=None, charge=None, createTime=None, resourceGroupId=None)[source]

Bases: object

Parameters:
  • podId – (Optional) pod ID
  • name – (Optional) pod 名称
  • description – (Optional) 描述信息,默认为空。
  • az – (Optional) 可用区
  • hostname – (Optional) 主机名
  • ag – (Optional) 高可用组
  • instanceType – (Optional) pod 所需的计算资源规格
  • restartPolicy – (Optional) pod重启策略
  • terminationGracePeriodSeconds – (Optional) 优雅关闭的时间
  • vpcId – (Optional) 主网卡所属vpcId
  • subnetId – (Optional) 主网卡所属子网的ID
  • privateIpAddress – (Optional) 主网卡主IP地址
  • dnsConfig – (Optional) pod内容器的/etc/resolv.conf配置
  • logConfig – (Optional) 容器日志配置信息;默认会在本地分配10MB的存储空间
  • hostAliases – (Optional) pod内容器的/etc/hosts配置
  • volumes – (Optional) 属于Pod的volume列表,提供挂载到containers上。
  • containers – (Optional) pod内的容器信息
  • podStatus – (Optional) pod状态信息
  • elasticIp – (Optional) 主网卡主IP关联的弹性IP规格
  • primaryNetworkInterface – (Optional) 主网卡配置信息
  • tags – (Optional)
  • charge – (Optional) 计费配置;如不指定,默认计费类型是后付费-按使用时常付费
  • createTime – (Optional) Pod创建时间
  • resourceGroupId – (Optional) 资源组ID

jdcloud_sdk.services.pod.models.PodCondition module

class jdcloud_sdk.services.pod.models.PodCondition.PodCondition(lastProbeTime=None, lastTransitionTime=None, reason=None, status=None, message=None, conditionType=None)[source]

Bases: object

Parameters:
  • lastProbeTime – (Optional) 最后一次探测状态的时间
  • lastTransitionTime – (Optional) 最后一次改变状态的时间
  • reason – (Optional) 最后一次状态改变的简要原因
  • status – (Optional) Status is the status of the condition. Can be True, False, Unknown.
  • message – (Optional) 最后一次状态改变的信息
  • conditionType – (Optional) 状态的条件。目前仅限 Ready.

jdcloud_sdk.services.pod.models.PodDnsConfigOption module

class jdcloud_sdk.services.pod.models.PodDnsConfigOption.PodDnsConfigOption(name=None, value=None)[source]

Bases: object

Parameters:
  • name – (Optional) 长度范围:[1-63],需满足linux resolver限制
  • value – (Optional) 长度范围:[0-100],仅限timeout, attempts, ndots

jdcloud_sdk.services.pod.models.PodSpec module

class jdcloud_sdk.services.pod.models.PodSpec.PodSpec(name, instanceType, az, containers, primaryNetworkInterface, description=None, hostname=None, restartPolicy=None, terminationGracePeriodSeconds=None, dnsConfig=None, logConfig=None, hostAliases=None, volumes=None, charge=None, elasticIp=None, userTags=None, resourceGroupId=None)[source]

Bases: object

Parameters:
  • name – Pod名称,符合DNS-1123 subdomain规范;名称不可重复、不支持修改
  • description – (Optional) 描述信息,默认为空;允许输入UTF-8编码下的全部字符,不超过256字符。
  • hostname – (Optional) 主机名;符合hostname规范,默认值为 podId
  • restartPolicy – (Optional) pod中容器重启策略;Always, OnFailure, Never;默认:Always
  • terminationGracePeriodSeconds – (Optional) 优雅关机宽限时长,如果超时,则触发强制关机。默认:30s,值不能是负数,范围:[0-300]
  • instanceType – 实例类型;参考[文档](https://www.jdcloud.com/help/detail/1992/isCatalog/1)
  • az – Pod所属可用区,指定agId时非必传<br> Pod、已有云盘的az必须相同,且包含在AG中
  • dnsConfig – (Optional) pod内容器的/etc/resolv.conf配置
  • logConfig – (Optional) 容器日志配置信息;默认会在本地分配10MB的存储空间
  • hostAliases – (Optional) 域名和IP映射的信息;</br> 最大10个alias
  • volumes – (Optional) Pod的volume列表,可以挂载到container上。长度范围:[0,7]
  • containers – Pod的容器列表,至少一个容器。长度范围[1,8]
  • charge – (Optional) 计费模式:包年包月预付费(prepaid_by_duration), 按配置后付费(postpaid_by_duration)。默认:按配置后付费
  • elasticIp – (Optional) 主网卡主IP关联的弹性IP规格
  • primaryNetworkInterface – 主网卡配置信息
  • userTags – (Optional) 用户普通标签集合
  • resourceGroupId – (Optional) 资源组ID

jdcloud_sdk.services.pod.models.PodStatus module

class jdcloud_sdk.services.pod.models.PodStatus.PodStatus(phase=None, reason=None, message=None, podIP=None, conditions=None, startTime=None)[source]

Bases: object

Parameters:
  • phase – (Optional) pod当前状态
  • reason – (Optional) (简要)pod处于当前状态的原因
  • message – (Optional) pod处于当前状态原因的详细信息
  • podIP – (Optional) 分配给pod的IP地址。至少在集群内是可路由的。未分配则为空。
  • conditions – (Optional) 目前pod的状态。
  • startTime – (Optional) Pod生命周期开始的时间。

jdcloud_sdk.services.pod.models.Probe module

class jdcloud_sdk.services.pod.models.Probe.Probe(initialDelaySeconds=None, periodSeconds=None, timeoutSeconds=None, failureThreshold=None, successThreshold=None, exec_=None, httpGet=None, tcpSocket=None)[source]

Bases: object

Parameters:
  • initialDelaySeconds – (Optional) 容器启动多久后触发探针。
  • periodSeconds – (Optional) 探测的时间间隔。
  • timeoutSeconds – (Optional) 探测的超时时间。
  • failureThreshold – (Optional) 在成功状态后,连续探活失败的次数,认为探活失败。
  • successThreshold – (Optional) 在失败状态后,连续探活成功的次数,认为探活成功。
  • exec – (Optional) 在容器内执行指定命令;如果命令退出时返回码为 0 则认为诊断成功。
  • httpGet – (Optional) 对指定的端口和路径上的容器的 IP 地址执行 HTTP Get 请求。如果响应的状态码大于等于 200 且小于 400,则认为诊断成功。
  • tcpSocket – (Optional) 对指定端口上的容器的 IP 地址进行 TCP 检查;如果端口打开,则认为诊断成功。

jdcloud_sdk.services.pod.models.ProbeSpec module

class jdcloud_sdk.services.pod.models.ProbeSpec.ProbeSpec(initialDelaySeconds=None, periodSeconds=None, timeoutSeconds=None, failureThreshold=None, successThreshold=None, exec_=None, httpGet=None, tcpSocket=None)[source]

Bases: object

param initialDelaySeconds:
 (Optional) 容器启动多长时间后,触发探针。默认值:10秒;范围:[0-300]
param periodSeconds:
 (Optional) 探测的时间间隔。默认值 10秒,范围:[1-300]
param timeoutSeconds:
 (Optional) 探测的超时时间。默认值 1秒;范围:[1-300]
param failureThreshold:
 (Optional) 在成功状态后,连续探活失败的次数,认为探活失败。默认值 3次;范围:[1-10]
param successThreshold:
 (Optional) 在失败状态后,连续探活成功的次数,认为探活成功。默认值 1次;范围:[1-10]
param exec_:(Optional) 在容器内执行指定命令;如果命令退出时返回码为 0 则认为诊断成功。
param httpGet:(Optional) 对指定的端口和路径上的容器的 IP 地址执行 HTTP Get 请求。<br>

如果响应的状态码大于等于200 且小于 400,则诊断被认为是成功的。

param tcpSocket:
 (Optional) 对指定端口上的容器的 IP 地址进行 TCP 检查;如果端口打开,则诊断被认为是成功的。

jdcloud_sdk.services.pod.models.Quota module

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

Bases: object

Parameters:
  • resourceType – (Optional) 类型
  • limit – (Optional) 配额
  • used – (Optional) 已使用的数目

jdcloud_sdk.services.pod.models.RequestSpec module

class jdcloud_sdk.services.pod.models.RequestSpec.RequestSpec(cpu=None, memoryMB=None)[source]

Bases: object

Parameters:
  • cpu – (Optional) 容器必需的计算资源,例:300m,1000m
  • memoryMB – (Optional) 容器使用计算资源上限,例:1024Mi,16384Mi

jdcloud_sdk.services.pod.models.ResourceRequestsSpec module

class jdcloud_sdk.services.pod.models.ResourceRequestsSpec.ResourceRequestsSpec(requests=None, limits=None)[source]

Bases: object

Parameters:
  • requests – (Optional) 容器必需的计算资源
  • limits – (Optional) 容器使用计算资源上限

jdcloud_sdk.services.pod.models.Secret module

class jdcloud_sdk.services.pod.models.Secret.Secret(name=None, type=None, createdAt=None, data=None)[source]

Bases: object

Parameters:
  • name – (Optional) 镜像仓库认证信息名称
  • type – (Optional) 镜像仓库认证信息类型
  • createdAt – (Optional) 镜像仓库认证信息创建时间
  • data – (Optional) 镜像仓库认证信息数据

jdcloud_sdk.services.pod.models.TcpSocket module

class jdcloud_sdk.services.pod.models.TcpSocket.TcpSocket(port=None)[source]

Bases: object

Parameters:port – (Optional) 端口号,范围:[1-65535]

jdcloud_sdk.services.pod.models.TcpSocketSpec module

class jdcloud_sdk.services.pod.models.TcpSocketSpec.TcpSocketSpec(port)[source]

Bases: object

Parameters:port – 端口号,范围:[1-65535]

jdcloud_sdk.services.pod.models.Volume module

class jdcloud_sdk.services.pod.models.Volume.Volume(name=None, jdcloudDisk=None, cfs=None, configFile=None)[source]

Bases: object

Parameters:
  • name – (Optional) volume名字,在一个Pod唯一。
  • jdcloudDisk – (Optional) 提供给Pod的cloud disk.
  • cfs – (Optional) 提供给Pod的CFS.
  • configFile – (Optional) 提供给Pod的ConfigFile.

jdcloud_sdk.services.pod.models.VolumeMount module

class jdcloud_sdk.services.pod.models.VolumeMount.VolumeMount(name=None, mountPath=None, readOnly=None, subPath=None)[source]

Bases: object

Parameters:
  • name – (Optional) 挂载的云盘在pod中的名称。
  • mountPath – (Optional) 容器内挂载点。
  • readOnly – (Optional) 是否以只读方式挂载。
  • subPath – (Optional) configFile挂载子目录 新增

Module contents