全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

创建容器组

最近更新时间:2024-12-17 20:26:22

CreateContainerGroup(创建容器组)

接口描述

该接口适用于创建容器组

创建容器组前,请先在容器实例的控制台开通容器实例服务。

请求方式

POST(推荐使用)/GET

输入参数

参数

类型

是否必选

描述

ContainerGroupName

String

是

容器组名称,不超过128个字符,只能包含小写字母、数字、和分隔符(“-”,“."),不能以分隔符开头或结尾

SubnetId.N

String

是

容器实例所在的子网,支持1-5个子网,支持通过指定多子网的方式指定多可用区

SecurityGroupId.N

String

是

容器组实例绑定的安全组,最多支持3个

KciType

String

否

容器实例类型,有效值:RBKCI

ChargeType

String

是

容器实例的计费方式,支持按量付费和竞价型实例,有效值:HourlyInstantSettlement、Spot

SpotStrategy

String

否,当ChargeType为Spot时必填

竞价型模式策略,当ChargeType为Spot时生效。目前仅支持系统自动出价,出价为固定折扣乘以列表价,有效值:SpotAsPriceGo

ProjectId

Long

否

指定容器实例的项目ID

InstanceType

String

否,当ChargeType为Spot时必填

选择主机资源套餐类型,目前只支持选择一个套餐,RBKCI支持的套餐请参考支持的云服务器类型和支持的GPU云服务器类型

ImageCacheId

String

否

指定镜像缓存ID。如果指定了镜像缓存ID同时开启了自动匹配镜像缓存,则仍以指定的镜像缓存ID为准,自动匹配镜像缓存的功能不会生效

AutoMatchImageCache

Boolean

否

自动匹配镜像缓存,有效值:
- true:自动匹配
- flase:不开启自动匹配
默认值:false

ImageRegistryCredential.N

Array of ImageRegistryCredential

否

镜像仓库的拉取凭证

RestartPolicy

String

否

容器实例的重启策略,有效值:Always、OnFailure、Never,默认值:Always

Cpu

Float

否

容器组的CPU,单位:核

Memory

Float

否

容器组的内存,单位:GiB

Volume.N

Array of Volume

否

数据卷信息

Container.N

Array of Container

是

容器组中容器的配置信息

HostAliase.N

Array of HostAliase

否

添加容器组域名解析的记录

DnsConfig

DnsConfig数据类型

否

容器组DNS配置

MachineHostAliase.N

Array of HostAliase

否

容器实例底层云主机Host配置

MachineDnsConfig

DnsConfig数据类型

否

容器实例底层云主机DNS配置

RetainIp

Boolean

否

默认值:‘false’。当为true时,为该Pod开启固定IP功能。开启此功能的Pod,当Pod被销毁后默认会保留这个Pod的IP 24小时。24小时内重建同名的Pod,还能使用该IP。24小时以后,该IP有可能被其他Pod抢占。仅对statefulset、rawpod生效

RetainIpHours

String

否

修改Pod固定IP的保留时长,单位是小时。如Pod 销毁之后超过这个时长没有创建回来,IP将被释放。默认是24小时,最大可支持保留一年。仅对statefulset、rawpod生效

EipAllocationId

String

否

指定容器实例绑定的EIP实例ID

AdvanceSettings

AdvanceSettings数据类型

否

容器实例高级属性设置

ImageRegistryCredential

参数

类型

是否必选

描述

Server

String

是

镜像仓库的地址

Username

String

是

镜像仓库用户名

Password

String

是

镜像仓库登陆密码

Volume

目前支持临时目录(EmptyDir)、云硬盘(EBSVolume)和NFS(NFSVolume)、ConfigFile(ConfigFileVolume)作为存储卷。

当使用EmptyDirVolume时,参数如下:

参数

类型

是否必选

描述

Type

String

是

存储卷的类型,有效值:EmptyDirVolume

Name

String

是

存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾

当使用EBSVolume时,参数如下:

参数

类型

是否必选

描述

Type

String

是

存储卷的类型,有效值:EBSVolume

Name

String

是

存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾

EBSVolume

EBSVolume数据类型

是

云硬盘信息

EBSVolume

参数

类型

是否必选

描述

FsType

String

是

文件系统类型,有效值:ext3、ext4、xfs
当云硬盘有文件系统时,则不进行格式化,直接按照指定的文件系统执行挂载;当云盘没有文件系统时,则按照用户指定的文件系统进行格式化,再进行挂载

VolumeId

String

否

已有云硬盘的ID,要求云硬盘:
- 云硬盘是待挂载的状态
- 云硬盘和容器实例在同一可用区
- 云硬盘的计费方式非包年包月和试用,仅支持按量付费的云硬盘实例

Type

String

否,当VolumeId为空时必填

新建云硬盘时,指定云硬盘类型,支持SSD3.0/EHDD/ESSD_PL0/ESSD_PL1/ESSD_PL2。

Size

Integer

否,当VolumeId为空时必填

新建云硬盘时,云硬盘大小,单位为GB。
若云硬盘类型为SSD3.0/EHDD,取值范围为[10,32000];
若云硬盘类型为ESSD_PL0/ESSD_PL1,取值范围为[40,32000];
若云硬盘类型为ESSD_PL2,取值范围为[461,32000]。

SnapshotId

String

否

新建云硬盘时,云硬盘快照ID,支持SSD3.0云硬盘和EHDD高效云盘,以及ESSD_PL0/ESSD_PL1/ESSD_PL2。

DeleteWithInstance

Boolean

否

新建云硬盘时,配置云硬盘是否随pod删除而释放,缺省为false

当使用NFSVolume时,参数如下:

参数

类型

是否必选

描述

Type

String

是

存储卷的类型,有效值:NFSVolume

Name

String

是

存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾

NFSVolume

NFSVolume数据类型

是

NFS挂载点信息

NFSVolume

参数

类型

是否必选

描述

Server

String

是

指定NFS服务器地址

Path

String

是

指定NFS挂载目录

ReadOnly

String

否

是否只读,默认值:false

Options

Array of string

否

其他挂载参数,示例:vers=3,nolock,proto=tcp,noresvport

当使用ConfigFileVolume时,参数如下:

参数

类型

是否必选

描述

Type

String

是

存储卷的类型,有效值:ConfigFileVolume

Name

String

是

存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾

DefaultMode

Int

是

N配置文件的默认权限,采用四位八进制数表示。

例如0644表示权限为-rw-r–r--,0对应-,表示文件类型为普通文件,644对应后续9位字符,表示3组权限,即用户权限为rw-,用户所在组权限为r–,其他用户权限为r–。

权限说明如下:

—:没有任何权限,八进制值为0。

–x:只有执行权限,八进制值为1。

-w-:只有写入权限,八进制值为2。

-wx:有写入和执行权限,八进制值为3。

r–:只有读取权限,八进制值为4。

r-x:有读取和执行权限,八进制值为5。

rw-:有读取和写入权限,八进制值为6。

rwx:具有读取、写入和执行权限,八进制值为7。

默认值:644

ConfigFileToPath.N

Object

否

当Volume.Type=ConfigFileVolume时,该配置必填

ConfigFileToPath.N

参数

类型

是否必选

描述

Path

String

是

相对于挂载目录,配置文件所在的相对文件路径。

Content

String

是

配置文件内容。需要将内容进行Base64编码。

mode

Int

是

配置文件的权限,如果没有设置,则采用ConfigFileVolume.DefaultMode的值。采用四位八进制数表示。

例如0644表示权限为-rw-r–r--,0对应-,表示文件类型为普通文件,644对应后续9位字符,表示3组权限,即用户权限为rw-,用户所在组权限为r–,其他用户权限为r–。

权限说明如下:

—:没有任何权限,八进制值为0。

–x:只有执行权限,八进制值为1。

-w-:只有写入权限,八进制值为2。

-wx:有写入和执行权限,八进制值为3。

r–:只有读取权限,八进制值为4。

r-x:有读取和执行权限,八进制值为5。

rw-:有读取和写入权限,八进制值为6。

rwx:具有读取、写入和执行权限,八进制值为7。

DnsConfig

参数

类型

是否必选

描述

NameServer.N

String

否

DNS 服务器 IP 地址列表

Search.N

String

否

DNS 搜索域列表

Option.N

Array of Option

否

-

Option

参数

类型

是否必选

描述

Name

String

是

DnsConfig中options的Name

Value

String

否

DnsConfig中options的Value

HostAliase

参数

类型

是否必选

描述

Hostname.N

String

是

添加主机名

Ip

String

是

添加IP

Container

参数

类型

是否必选

描述

Name

String

是

容器名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾

Command.N

Array of String

否

容器启动命令

Arg.N

Array of String

否

容器启动参数

EnvironmentVar.N

Array of EnvironmentVar

否

环境变量

Cpu

Float

否

容器的cpu,单位:核,精确到小数点后3位

Memory

Float

否

内存大小,单位:GiB,精确到小数点后3位

Image

String

是

镜像

ImagePullPolicy

String

否

镜像拉取策略。取值范围:
- Alway:总是拉取。每次都拉取镜像。
- IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。
- Never:从不拉取。使用本地镜像,不拉取镜像。

WorkingDir

String

否

工作目录

Port.N

Array of Port

否

端口信息

VolumeMount.N

Array of VolumeMount

否

数据卷挂载信息

EnvironmentVar

参数

类型

是否必选

描述

Key

String

是

变量名,不超过63个字符,只能包含字母、数字及分隔符("-"、"_"、"."),且必须以字母或分隔符开头

Value

String

是

变量值

Port

参数

类型

是否必选

描述

Port

Integer

是

端口号

Protocol

String

否

协议
有效值:TCP、UDP
默认值:TCP

VolumeMount

参数

类型

是否必选

描述

Name

String

是

数据卷名称

MountPath

String

否

挂载路径

ReadOnly

Boolean

否

读写权限,默认值False

AdvanceSettings

参数

类型

是否必选

描述

ImageId

String

否

指定容器实例的基础镜像ID

SystemDisk

SystemDisk数据类型

否

系统盘设置

SystemDisk

参数

类型

是否必选

描述

Type

String

否

系统盘类型,支持四种类型:Local_SSD、SSD3.0、EHDD、ESSD,如不填写会根据机型默认系统盘类型自动适配

Size

Integer

否

云硬盘大小,单位GB。

Local_SSD,取值范围[20,100];
SSD3.0、EHDD,取值范围[20,500];
ESSD_SYSTEM_PL0/ESSD_SYSTEM_PL1,取值范围为[50,500];
ESSD_SYSTEM_PL2取值范围[461,500]。

返回参数

参数

类型

描述

RequestId

String

请求id

ContainerGroupId

String

容器实例的id

调用示例

示例1 创建容器组

输入示例
http://kci.api.ksyun.com/?Action=CreateContainerGroup&Version=2020-07-02
&ContainerGroupName=nginx-kci
&ChargeType=HourlyInstantSettlement
&KciType=RBKCI
&SubnetId=f2ac1919-0e34-4812xxxxxx
&SecurityGroupId.1=d46c7672-7ca9-4f51xxxxxx
&Memory=4
&Cpu=2
&Container.1.Name=nginx-container
&Container.1.Image=hub.kce.ksyun.com/ksyun/nginx:latest
&Container.1.Port.1.Port=80
&Container.1.Port.1.Protocol=TCP
&RestartPolicy=Always
返回示例
{
    "RequestId": "cdc0ab95-34fc-403e-b0b1xxxxxx",
    "ContainerGroupId": "9f0c0be6-f6fe-4e29xxxxxx"
}

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈