jdcloud_sdk.services.pod.apis package

Submodules

jdcloud_sdk.services.pod.apis.AssociateElasticIpRequest module

class jdcloud_sdk.services.pod.apis.AssociateElasticIpRequest.AssociateElasticIpParameters(regionId, podId, elasticIpId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • elasticIpId – 弹性IP ID
class jdcloud_sdk.services.pod.apis.AssociateElasticIpRequest.AssociateElasticIpRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

pod 绑定弹性公网 IP,绑定的是主网卡、主内网IP对应的弹性IP. <br>

一个 pod 只能绑定一个弹性公网 IP(主网卡),若主网卡已存在弹性公网IP,会返回错误。<br> 如果是黑名单中的用户,会返回错误。

jdcloud_sdk.services.pod.apis.AttachRequest module

class jdcloud_sdk.services.pod.apis.AttachRequest.AttachParameters(regionId, podId, containerName)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • containerName – container name
class jdcloud_sdk.services.pod.apis.AttachRequest.AttachRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

将容器连接到本地标准输入输出

jdcloud_sdk.services.pod.apis.CheckPodNameRequest module

class jdcloud_sdk.services.pod.apis.CheckPodNameRequest.CheckPodNameParameters(regionId, podName)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podName – 用户定义的 pod 名称,符合 DNS-1123 subdomain 规范。
setMaxCount(maxCount)[source]
Parameters:maxCount – (Optional) 需要创建的 pod 总数,默认创建一个,不同的总数会对校验结果产生影响。
class jdcloud_sdk.services.pod.apis.CheckPodNameRequest.CheckPodNameRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

podName 是否符合命名规范,以及查询指定 podName 区域内是否已经存在。

jdcloud_sdk.services.pod.apis.CreatePodsRequest module

class jdcloud_sdk.services.pod.apis.CreatePodsRequest.CreatePodsParameters(regionId, podSpec, maxCount)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podSpec – pod 创建参数
  • maxCount – 购买实例数量;取值范围:[1,100]
setClientToken(clientToken)[source]
Parameters:clientToken – (Optional) 保证请求幂等性的字符串;最大长度64个ASCII字符
class jdcloud_sdk.services.pod.apis.CreatePodsRequest.CreatePodsRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

创建一台或多台 pod
  • 创建pod需要通过实名认证

  • 可用区
    • Pod所属的可用区
    • 创建Pod,需要使用中心可用区的相关资源:
      • 具有中心可用区属性的子网
      • 公网IP服务商
  • hostname规范
    • 支持两种方式:以标签方式书写或以完整主机名方式书写
    • 标签规范
      • 0-9,a-z(不分大小写)和-(减号),其他的都是无效的字符串
      • 不能以减号开始,也不能以减号结尾
      • 最小1个字符,最大63个字符
    • 完整的主机名由一系列标签与点连接组成
      • 标签与标签之间使用“.”(点)进行连接
      • 不能以“.”(点)开始,也不能以“.”(点)结尾
      • 整个主机名(包括标签以及分隔点“.”)最多有63个ASCII字符
  • 网络配置
    • 指定主网卡配置信息
      • 必须指定subnetId
      • 可以指定elasticIp规格来约束创建的弹性IP,带宽取值范围[1-100]Mbps,步进1Mbps
      • 可以指定网卡的主IP(primaryIpAddress)和辅助IP(secondaryIpAddresses),此时maxCount只能为1
      • 可以设置网卡的自动删除autoDelete属性,指明是否删除实例时自动删除网卡
      • 安全组securityGroup需与子网Subnet在同一个私有网络VPC内
      • 一个 pod 创建时至多指定5个安全组
      • 主网卡deviceIndex设置为1
  • 存储
    • volume分为container system disk和pod data volume,container system disk的挂载目录是/,data volume的挂载目录可以随意指定

    • container system disk
      • 支持cloud和local
      • 云硬盘类型可以选择hdd.std1、ssd.gp1、ssd.io1
      • 磁盘大小
        • 所有类型:范围[20,100]GB,步长为10G
      • 自动删除
        • 默认自动删除
      • 可以选择已存在的云硬盘
    • data volume
      -cloudDisk
      • 云硬盘类型可以选择hdd.std1、ssd.gp1、ssd.io1
      • 磁盘大小
        • 所有类型:范围[20,2000]GB,步长为10G
      • 自动删除
        • 默认自动删除
      • 可以选择已存在的云硬盘
      • 可以从快照创建磁盘
      -CFS
      • 从zbs去获取数据,挂载到当前的volume
      -configFile
      • 提前创建好configFile相关数据,然后挂载到volume
  • pod 容器日志
    • default:默认在本地分配10MB的存储空间,自动rotate
  • DNS-1123 label规范
    • 支持数字、小写字母、英文中划线“-”,但不支持以“-”作为开始字符和结束字符,1~63字符。
    • 例子: my-name, 123-abc
  • DNS-1123 subdomain规范
    • 由一或多个标签组成,标签之间用’.’分隔;标签可由小写字母、数字、英文中划线’-‘构成,标签首尾不可为’-’;所有字符总长度为1~253。
    • 例子: example.com, registry.docker-cn.com
  • 其他
    • 创建完成后,pod 状态为running
    • maxCount为最大努力,不保证一定能达到maxCount

jdcloud_sdk.services.pod.apis.CreateSecretRequest module

class jdcloud_sdk.services.pod.apis.CreateSecretRequest.CreateSecretParameters(regionId, name, secretType, data)[source]

Bases: object

param regionId:Region ID
param name:机密数据名称,不能重复
param secretType:
 机密数据的类型,目前仅支持:docker-registry 类型,用来和docker registry认证的类型。
param data:机密的数据。<br>

key 的有效字符包括字母、数字、-、_和.; <br> value 是 Base64 编码的字符串,不能包含换行符(在 linux 下使用 base64 -w 0选项),每个value长度上限为4KB,整个data的长度不能超过256KB; <br> 必须包含server、username、password 字段,email 字段是可选的。<br>

class jdcloud_sdk.services.pod.apis.CreateSecretRequest.CreateSecretRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

创建一个 secret,用于存放镜像仓库机密相关信息。

jdcloud_sdk.services.pod.apis.DecribeContainerRequest module

jdcloud_sdk.services.pod.apis.DeletePodRequest module

class jdcloud_sdk.services.pod.apis.DeletePodRequest.DeletePodParameters(regionId, podId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
class jdcloud_sdk.services.pod.apis.DeletePodRequest.DeletePodRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

pod 状态必须为 stopped、running 或 error状态。 <br>

按量付费的实例,如不主动删除将一直运行,不再使用的实例,可通过本接口主动停用。<br> 只能支持主动删除按量计费类型的实例。包年包月过期的 pod 也可以删除,其它的情况还请发工单系统。计费状态异常的容器无法删除。

[MFA enabled]

jdcloud_sdk.services.pod.apis.DeleteSecretRequest module

class jdcloud_sdk.services.pod.apis.DeleteSecretRequest.DeleteSecretParameters(regionId, name)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • name – Secret Name
class jdcloud_sdk.services.pod.apis.DeleteSecretRequest.DeleteSecretRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

删除单个 secret

jdcloud_sdk.services.pod.apis.DescribePodRequest module

class jdcloud_sdk.services.pod.apis.DescribePodRequest.DescribePodParameters(regionId, podId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
class jdcloud_sdk.services.pod.apis.DescribePodRequest.DescribePodRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询一个 pod 的详细信息

jdcloud_sdk.services.pod.apis.DescribePodsRequest module

class jdcloud_sdk.services.pod.apis.DescribePodsRequest.DescribePodsParameters(regionId)[source]

Bases: object

Parameters:regionId – Region ID
setFilters(filters)[source]
param filters:(Optional) podId - pod ID,精确匹配,支持多个

privateIpAddress - 主网卡IP地址,模糊匹配,支持单个 az - 可用区,精确匹配,支持多个 vpcId - 私有网络ID,精确匹配,支持多个 phase - pod 状态,精确匹配,支持多个 name - 实例名称,模糊匹配,支持单个 subnetId - 镜像ID,精确匹配,支持多个 agId - 镜像ID,精确匹配,支持多个

setPageNumber(pageNumber)[source]
Parameters:pageNumber – (Optional) 页码;默认为1
setPageSize(pageSize)[source]
Parameters:pageSize – (Optional) 分页大小;默认为20;取值范围[10, 100]
setTags(tags)[source]
Parameters:tags – (Optional) Tag筛选条件
class jdcloud_sdk.services.pod.apis.DescribePodsRequest.DescribePodsRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

批量查询 pod 的详细信息<br>

此接口支持分页查询,默认每页20条。

jdcloud_sdk.services.pod.apis.DescribeQuotaRequest module

class jdcloud_sdk.services.pod.apis.DescribeQuotaRequest.DescribeQuotaParameters(regionId, resourceType)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • resourceType – resourceType - 资源类型,支持 [container, pod, secret]
class jdcloud_sdk.services.pod.apis.DescribeQuotaRequest.DescribeQuotaRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询资源的配额,支持:原生容器 pod 和 secret.

jdcloud_sdk.services.pod.apis.DescribeSecretRequest module

class jdcloud_sdk.services.pod.apis.DescribeSecretRequest.DescribeSecretParameters(regionId, name)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • name – Secret Name
class jdcloud_sdk.services.pod.apis.DescribeSecretRequest.DescribeSecretRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询单个 secret 详情

jdcloud_sdk.services.pod.apis.DescribeSecretsRequest module

class jdcloud_sdk.services.pod.apis.DescribeSecretsRequest.DescribeSecretsParameters(regionId)[source]

Bases: object

Parameters:regionId – Region ID
setFilters(filters)[source]
Parameters:filters – (Optional) name - secret名称,支持模糊搜索
setPageNumber(pageNumber)[source]
Parameters:pageNumber – (Optional) 页码;默认为1
setPageSize(pageSize)[source]
Parameters:pageSize – (Optional) 分页大小;默认为20;取值范围[10, 100]
class jdcloud_sdk.services.pod.apis.DescribeSecretsRequest.DescribeSecretsRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询 secret 列表。<br>

此接口支持分页查询,默认每页20条。

jdcloud_sdk.services.pod.apis.DisassociateElasticIpRequest module

class jdcloud_sdk.services.pod.apis.DisassociateElasticIpRequest.DisassociateElasticIpParameters(regionId, podId, elasticIpId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • elasticIpId – 弹性IP ID
class jdcloud_sdk.services.pod.apis.DisassociateElasticIpRequest.DisassociateElasticIpRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

pod 解绑公网 IP,解绑的是主网卡、主内网 IP 对应的弹性 IP.

jdcloud_sdk.services.pod.apis.ExecCreateRequest module

class jdcloud_sdk.services.pod.apis.ExecCreateRequest.ExecCreateParameters(regionId, podId, containerName, command)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • containerName – container name
  • command – 执行的命令
setTty(tty)[source]
Parameters:tty – (Optional) 执行命令是否分配tty。默认不分配
class jdcloud_sdk.services.pod.apis.ExecCreateRequest.ExecCreateRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

创建 exec

jdcloud_sdk.services.pod.apis.ExecGetExitCodeRequest module

class jdcloud_sdk.services.pod.apis.ExecGetExitCodeRequest.ExecGetExitCodeParameters(regionId, podId, containerName, execId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • containerName – container name
  • execId
class jdcloud_sdk.services.pod.apis.ExecGetExitCodeRequest.ExecGetExitCodeRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

获取exec退出码

jdcloud_sdk.services.pod.apis.ExecStartRequest module

class jdcloud_sdk.services.pod.apis.ExecStartRequest.ExecStartParameters(regionId, podId, containerName, execId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • containerName – container name
  • execId
class jdcloud_sdk.services.pod.apis.ExecStartRequest.ExecStartRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

执行exec,此接口需要升级Http协议到WebSocket

jdcloud_sdk.services.pod.apis.GetContainerLogsRequest module

class jdcloud_sdk.services.pod.apis.GetContainerLogsRequest.GetContainerLogsParameters(regionId, podId, containerName)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • containerName – container name
setEndTime(endTime)[source]
Parameters:endTime – (Optional) 日志时间下限,不传表示不限时间
setLimitBytes(limitBytes)[source]
Parameters:limitBytes – (Optional) 限制返回的日志文件内容字节数,取值范围 [1-4]KB,最大 4KB.
setSinceSeconds(sinceSeconds)[source]
Parameters:sinceSeconds – (Optional) 返回相对于当前时间之前sinceSeconds之内的日志。
setStartTime(startTime)[source]
Parameters:startTime – (Optional) 日志时间上限,不传表示不限时间
setTailLines(tailLines)[source]
Parameters:tailLines – (Optional) 返回日志文件中倒数 tailLines 行,如不指定,默认从容器启动时或 sinceSeconds 指定的时间读取。
class jdcloud_sdk.services.pod.apis.GetContainerLogsRequest.GetContainerLogsRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询单个容器日志

jdcloud_sdk.services.pod.apis.ModifyPodAttributeRequest module

class jdcloud_sdk.services.pod.apis.ModifyPodAttributeRequest.ModifyPodAttributeParameters(regionId, podId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
setDescription(description)[source]
Parameters:description – (Optional) 修改后的描述
class jdcloud_sdk.services.pod.apis.ModifyPodAttributeRequest.ModifyPodAttributeRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

修改 pod 的描述。

jdcloud_sdk.services.pod.apis.ResizeTTYRequest module

class jdcloud_sdk.services.pod.apis.ResizeTTYRequest.ResizeTTYParameters(regionId, podId, containerName, height, width)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
  • containerName – container name
  • height – tty row,取值范围:[10, 2000]
  • width – tty column,取值范围:[10, 1000]
setExecId(execId)[source]
Parameters:execId – (Optional) exec ID
class jdcloud_sdk.services.pod.apis.ResizeTTYRequest.ResizeTTYRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

设置TTY大小

jdcloud_sdk.services.pod.apis.StartPodRequest module

class jdcloud_sdk.services.pod.apis.StartPodRequest.StartPodParameters(regionId, podId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
class jdcloud_sdk.services.pod.apis.StartPodRequest.StartPodRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

启动处于关闭状态的单个 pod ,处在任务执行中的 pod 无法启动。<br>

pod 实例或其绑定的云盘已欠费时,容器将无法正常启动。<br>

jdcloud_sdk.services.pod.apis.StopPodRequest module

class jdcloud_sdk.services.pod.apis.StopPodRequest.StopPodParameters(regionId, podId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • podId – Pod ID
class jdcloud_sdk.services.pod.apis.StopPodRequest.StopPodRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

停止处于运行状态的单个实例,处于任务执行中的 pod 无法启动。

Module contents