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:
objectParameters: - 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.JDCloudRequestpod 绑定弹性公网 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:
objectParameters: - 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:
objectParameters: - regionId – Region ID
- podName – 用户定义的 pod 名称,符合 DNS-1123 subdomain 规范。
-
class
jdcloud_sdk.services.pod.apis.CheckPodNameRequest.CheckPodNameRequest(parameters, header=None, version='v1')[source]¶ Bases:
jdcloud_sdk.core.jdcloudrequest.JDCloudRequestpodName 是否符合命名规范,以及查询指定 podName 区域内是否已经存在。
jdcloud_sdk.services.pod.apis.CreatePodsRequest module¶
-
class
jdcloud_sdk.services.pod.apis.CreatePodsRequest.CreatePodsParameters(regionId, podSpec, maxCount)[source]¶ Bases:
objectParameters: - regionId – Region ID
- podSpec – pod 创建参数
- maxCount – 购买实例数量;取值范围:[1,100]
-
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:
objectparam 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:
objectParameters: - 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.JDCloudRequestpod 状态必须为 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:
objectParameters: - 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:
objectParameters: - 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:
objectParameters: regionId – Region ID
-
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:
objectParameters: - 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:
objectParameters: - 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:
objectParameters: regionId – Region ID
-
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:
objectParameters: - 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.JDCloudRequestpod 解绑公网 IP,解绑的是主网卡、主内网 IP 对应的弹性 IP.
jdcloud_sdk.services.pod.apis.ExecCreateRequest module¶
-
class
jdcloud_sdk.services.pod.apis.ExecCreateRequest.ExecCreateParameters(regionId, podId, containerName, command)[source]¶ Bases:
objectParameters: - regionId – Region ID
- podId – Pod ID
- containerName – container name
- command – 执行的命令
-
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:
objectParameters: - 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:
objectParameters: - 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:
objectParameters: - regionId – Region ID
- podId – Pod ID
- containerName – container name
-
setLimitBytes(limitBytes)[source]¶ Parameters: limitBytes – (Optional) 限制返回的日志文件内容字节数,取值范围 [1-4]KB,最大 4KB.
-
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:
objectParameters: - regionId – Region ID
- podId – Pod ID
-
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:
objectParameters: - regionId – Region ID
- podId – Pod ID
- containerName – container name
- height – tty row,取值范围:[10, 2000]
- width – tty column,取值范围:[10, 1000]
-
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:
objectParameters: - 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:
objectParameters: - 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 无法启动。