附录
ResourcePoolInfoResult
资源池详情信息,被如下接口引用:资源池详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| resourcePool | ResourcePool | 资源池模型 |
ResourcePool
资源池模型,被如下接口引用:资源池详情、资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| metadata | ResourcePoolMetadata | 资源池元信息 |
| spec | ResourcePoolSpec | 资源池属性 |
| status | ResourcePoolStatus | 资源池状态 |
ResourcePoolMetadata
资源池元信息,被如下接口引用:资源池详情、资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| name | String | 资源池名称 |
| id | String | 资源池Id |
| createdAt | String | 资源池创建时间 |
| updatedAt | String | 资源池修改时间 |
ResourcePoolSpec
资源池属性,被如下接口引用:资源池详情、资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| createdBy | String | 创建人 |
| description | String | 描述 |
| forbidDelete | Boolean | 资源池保护 |
| region | String | 地域 |
| k8sVersion | String | k8s版本 |
| associatedPfsID | String | 关联 PFS ID |
| associatedCpromIDs | Array of String | 关联 Cprom 信息 |
ResourcePoolStatus
资源池状态,被如下接口引用:资源池详情、资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| phase | String | 资源池状态,包括多个状态: pending: 创建 Cluster 时默认状态 provisioning: IaaS 相关资源正在创建中 provisioned: IaaS 相关资源已经 Ready running: 集群运行正常 create_failed: 集群创建失败 deleting: 集群正在删除 deleted: 集群删除完成 delete_failed: 集群删除失败 upgrading: 集群升级中 upgrade_failed: 集群更新失败 eip_opening: 集群apiserver公网访问开启中 eip_open_failed: 集群apiserver公网访问开启失败 eip_closing: 集群apiserver公网访问关闭中 eip_close_failed: 集群apiserver公网访问关闭失败 |
| nodeCount | NodeCount | 资源池节点状态 |
| gpuCount | GPUCount | 资源池计算卡状态 |
NodeCount
资源池节点状态,被如下接口引用:资源池详情、资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| total | Number | 节点总数 |
| used | Number | 已分满节点 |
GPUCount
资源池计算卡状态,被如下接口引用:资源池详情、资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| total | Number | 计算卡总数 |
| used | Number | 已分配 |
ResourcePoolListResult
资源池列表信息,被如下接口引用:资源池列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| resourcePools | ResourcePool | 资源池模型 |
| pageNo | Integer | 页面序号,默认为1 |
| pageSize | Integer | 单页返回的数量,默认为10 |
| orderBy | String | 默认为createdAt |
| order | String | 排序方式,desc为逆序,asc为顺序,默认为逆序 |
| total | Number | 总数 |
ResourcePoolNodeResult
资源池节点列表信息,被如下接口引用:资源池节点列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| nodes | Array of Node | 节点模型 |
| pageNo | Integer | 页面序号,默认为1 |
| pageSize | Integer | 单页返回的数量,默认为10 |
| orderBy | String | 默认为createdAt |
| order | String | 排序方式,desc为逆序,asc为顺序,默认为逆序 |
| total | Number | 总数 |
Node
资源池节点模型,被如下接口引用:资源池节点列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| instanceId | String | BCC 实例短 ID |
| instanceName | String | BCC 实例名称 |
| nodeName | String | CCE 节点名称 |
| intervention | String | 是否干预,枚举:未干预,封锁,污点 枚举值: tainted, cordoned, unintervened |
| gpuType | String | GPU/NPU 类型 |
| gpuTotal | String | GPU/NPU 总卡数 |
| gpuAllocated | String | GPU/NPU 分配卡数 |
| statusPhase | String | 节点状态 |
| chargingType | String | 节点付费方式 |
| zone | String | 可用区 |
QueueResult
队列创建、队列删除、队列更新信息,被如下接口引用:队列创建、队列删除、队列更新
| 参数名称 | 类型 | 说明 |
|---|---|---|
| queueName | String | 队列名称 |
QueueListResult
队列列表信息,被如下接口引用:队列列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| pageNo | Integer | 页面序号,默认为1 |
| pageSize | Integer | 单页返回的数量,默认为10 |
| orderBy | String | 默认为createdAt |
| order | String | 排序方式,desc为逆序,asc为顺序,默认为逆序 |
| total | Number | 总数 |
| queues | Array of Queue | 队列模型 |
Queue
队列模型,被如下接口引用:队列列表、队列详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| allocated | Object | 队列分配情况 |
| capability | Object | 队列上线配额 |
| createdTime | String | 创建时间 |
| description | String | 描述 |
| name | String | 名称 |
| state | String | 状态 |
| queueType | String | 队列类型 |
| parentQueue | String | 父队列,默认为 root 队列 |
| children | Array of Queue | 子队列列表 |
| deserved | Object | 队列申请配额 |
| guarantee | Object | 队列预留配额 |
| disableOversell | Boolean | 超发开关,是否允许超发,默认为 false |
| reclaimable | Boolean | 被抢占开关,是否可被抢占,默认为 false |
QueueInfoResult
队列详情信息,被如下接口引用:队列详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| queue | Array of Queue | 队列模型 |
JobSpec
创建训练任务配置,被如下接口引用:创建训练任务
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| image | String | 是 | 镜像地址,需要包含tag |
| imageConfig | ImageConfig | 否 | 镜像仓库访问配置,仅私有镜像时需要配置 |
| replicas | Integer | 是 | worker副本数 |
| resources | Array of Resource | 否 | 配置资源配额 |
| envs | Array of Env | 否 | worker环境变量,默认注入:worker环境变量,默认注入: 1. AIHC_JOB_NAME ,值为name字段的值 2. NCCL_IB_DISABLE,开启rdma后默认注入,值为0 3. NCCL_DEBUG,nccl日志的级别,值为INFO |
| command | String | 是 | 启动命令 |
| enableRDMA | Boolean | 否 | 是否开启RDMA,默认false,开启后将自动添加NCCL_IB_DISABLE=0的环境变量,添加rdma/hca资源,并配置10GB共享内存到训练节点的容器中 |
| hostNetwork | Boolean | 否 | 是否使用宿主机网络,开启后作业worker将使用宿主机网络,开启RDMA时默认为true |
faultToleranceConfig
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| enabledHangDetection | boolean | 否 | 是否开启hang检测,默认值:false |
| hangDetectionTimeoutMinutes | Integer | 否 | 判断任务hang的时间阈值(分钟 ),当所有的 worker 超过指定时间没有输出日志,就认定当前任务出现 hang 。 |
tensorboardConfig
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| enable | boolean | 否 | 开启Tensorboard |
| logPath | String | 否 | 训练任务Tensorboard日志存储在PFS的绝对路径。为了避免多个任务使用相同的路径,百舸默认会在用户填写的日志存储路径,后面拼接 $AIHC_JOB_ID ,作为最终存储路径 |
ImageConfig
任务镜像配置,被如下接口引用:创建训练任务
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| username | String | 是 | 私有镜像仓库用户名 |
| password | String | 是 | 私有镜像仓库密码 |
Resource
任务资源配置,被如下接口引用:创建训练任务
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| name | String | 是 | 资源名称示例,支持设置GPU/CPU/内存以及共享内存资源,枚举值: baidu.com/a800_80g_cgpu:gpu型号,需要根据型号按照百度的资源描述符填入,上述示例为A800的型号 cpu:cpu配额,单位核 memory:内存配额,单位GB sharedMemory:共享内存配额,单位GB |
| quantity | String | 是 | 资源量 |
Env
环境变量信息,被如下接口引用:创建训练任务、查询训练任务详情
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| name | String | 否 | 环境变量名 |
| value | String | 否 | 环境变量值 |
Label
训练任务标签信息,被如下接口引用:创建训练任务
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| key | String | 是 | 标签名 |
| value | String | 是 | 标签值 |
Datasource
训练任务数据源配置,被如下接口引用:创建训练任务
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| type | string | 是 | 数据源类型,枚举值:pfs/pfsl1/pfsl2/hostpath/bos;(pfsl1/pfsl2将废弃,统一使用pfs) |
| name | string | 是 | 数据源名称,如果type类型为pfs时,此处必须填写pfs实例id / type类型为bos时,默认为空 |
| sourcePath | string | 是 | 源路径:
|
| mountPath | string | 是 | 容器内挂载路径 |
| options | Option | 否 | 数据源参数 |
JobResult
创建/删除更新训练任务的返回信息,被如下接口引用:创建训练任务、删除训练任务、更新训练任务、停止训练任务
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| jobId | String | 是 | 任务ID,全局唯一id |
| jobName | String | 是 | 任务名称,在 更新训练任务 和 停止训练任务 接口中不返回此字段 |
JobListResult
训练任务列表信息,被如下接口引用:查询训练任务列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| total | Integer | 列表总数 |
| jobs | Array of JobInfoResult | 作业详情列表 |
| orderBy | String | 基于哪个来进行排序 |
| order | String | 正序或者逆序 |
| pageNo | Integer | 分页参数,表示第几页 |
| pageSize | Integer | 分页参数,表示单页条目数 |
JobInfoResult
单个训练任务详情信息,被如下接口引用:查询训练任务详情、查询训练任务列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| jobid | String | 任务id |
| name | String | 任务名称 |
| status | String | 任务状态,包括: Created:任务已创建,等待调度阶段,(允许修改优先级),所有实例状态为 排队中 Scheduled: Pod调度完成,实例的状态均为启动中或者包含部分运行中的状态 Running: 实例的状态均为运行中的状态 Stopping: 用户操作停止任务,正在停止任务,正在将实例置为 失败 ManualTermination: 用户任务已经停止,实例状态为 失败 Restarting: 任务容错或者被抢占,任务 Condition 状态设置为Restarting,且所有实例状态为 排队中 Succeeded: 所有实例的状态为 成功 Failed: 任务失败推出,全部实例状态为 失败 |
| resourcePoolId | String | 任务所在资源池Id |
| queue | String | 任务所在资源池队列 |
| podList | PodList | 任务Pod列表,在查询训练任务列表接口中不返回改字段 |
| command | String | 任务的启动命令 |
| createdAt | String | 任务创建时间 |
| datasources | Array of JobInfoDatasource | 任务的数据源配置 |
| enableFaultTolerance | Boolean | 是否开启容错 |
| finishedAt | String | 任务结束时间 |
| labels | Array of Label | 任务标签 |
| priority | String | 任务优先级 |
| enableBccl | Boolean | 任务是否开启了BCCL注入 |
| enableBcclStatus | String | BCCL注入状态,包括: success: 注入成功 failed: 注入失败 unknown: 还未执行注入 |
| enableBcclErrorReason | String | BCCL注入失败原因 |
JobInfoDatasource
训练任务详情-数据卷信息,被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| type | String | 是 |
| name | String | 是 |
| sourcePath | String | 是 |
| mountPath | String | 是 |
| options | Option | 否 |
Option
训练任务详情-数据卷挂载选项信息,被如下接口引用:查询训练任务详情、查询训练任务列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| readOnly | String | 是否以只读模式挂载到容器中 |
| pfsL1ClusterIp | String | pfs实例连接ip(将废弃) |
| pfsL1ClusterPort | String | pfs实例连接port(将废弃) |
| PfsL2MountTargetId | String | pfs挂载点(将废弃) |
| PfsL2HostMountPath | String | pfs挂载路径(将废弃) |
Podlist
训练任务Pod列表,被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| listMeta | ListMeta | none |
| pods | Array of Pod | 任务pod列表 |
ListMeta
被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| totalItems | Number | 列表项总数 |
Pod
Pod详情信息,被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| PodIP | String | Pod IP |
| nodeName | String | 任务pod所在节点的名称 |
| objectMeta | ObjectMeta | pod元数据 |
| podStatus | PodStatus | Pod状态: Pending: 排队中, Pod已经被创建,但是还没有被度到节点上 Starting: 启动中,已调度,镜像拉取、存储挂载、创建容器等过程。 Running: 运行中,实例进入running状态,执行训练代码 Failed: 失败,pod 失败退出,phase failed Succeed: 成功,pod 成功退出, phase: Succeeded Unknown: 异常, pod状态不可知 |
| replicaType | String | 副本类型,任务Pod的副本类型,pytorch中包含master和worker两种副本类型 |
| restartCount | Number | Pod重启次数 |
| envs | Array of Env | Pod环境变量 |
ObjectMeta
Pod元数据,被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| annotations | Object | 任务Pod注释信息,默认会带一些平台注入的信息 |
| creationTimestamp | String | Pod创建时间 |
| labels | Object | 任务标签 |
| name | String | 任务Pod名称 |
| namespace | String | 任务Pod所属命名空间 |
| ownerReferences | Array of OwnerReference | Pod所属任务信息 |
OwnerReference
Pod所属任务信息,被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| apiVersion | String | api版本 |
| blockOwnerDeletion | Boolean | 是否级联删除 |
| controller | Boolean | 是否被控制 |
| kind | String | 所属父资源类型 |
| name | String | 父资源名 |
| uid | String | 父资源id |
PodStatus
Pod状态,被如下接口引用:查询训练任务详情
| 参数名称 | 类型 | 说明 |
|---|---|---|
| status | String | Pod状态 |
| podPhase | String | Pod阶段 |
Event
任务事件信息,被如下接口引用:查询训练任务事件
| 参数说明 | 类型 | 说明 |
|---|---|---|
| reason | String | 原因 |
| message | String | 详细信息 |
| firstTimestamp | String | 首次出现时间 |
| lastTimestamp | String | 最后出现时间 |
| count | Number | 出现次数 |
| type | Number | 事件类型 |
LogResult
查询任务日志返回结果,被如下接口引用:查询训练任务日志
| 参数名称 | 类型 | 说明 |
|---|---|---|
| jobId | String | 任务ID |
| podName | String | 作业节点名称 |
| logs | Array of string | 日志内容 |
| nextMarker | String | 下次查询的日志标识符 |
PodEventResult
查询任务Pod事件返回信息,被如下接口引用:查询训练任务Pod事件
| 参数名称 | 类型 | 说明 |
|---|---|---|
| jobId | String | 任务ID |
| podName | String | 任务Pod名称 |
| events | array of Event | 任务事件 |
MetricsResult
查询任务监控的返回信息,被如下接口引用:查询训练任务监控
| 参数名称 | 类型 | 说明 |
|---|---|---|
| jobId | string | 任务 ID |
| podMetrics | Array of PodMetric | 监控数据,当前支持查询监控数据的指标类型,取值如下: GpuUsage:GPU 使用率; GpuMemoryUsage:GPU Memory 使用率; CpuUsage:CPU 使用率; MemoryUsage:Memory 使用率; DiskReadRate:磁盘读取速率; DiskWriteRate:磁盘写入速率。 |
PodMetric
查询任务Pod的监控数据,被如下接口引用:查询训练任务监控
| 参数名称 | 类型 | 说明 |
|---|---|---|
| podName | String | worker名称 |
| metrics | Array of Metric | 监控数据列表 |
Metric
查询任务Pod的监控数据,被如下接口引用:查询训练任务监控
| 参数名称 | 类型 | 说明 |
|---|---|---|
| time | String | 时间戳(Unix Timestamp),单位为毫秒 |
| value | Number | 监控数据的值。 |
NodeResult
查询任务所在节点列表,被如下接口引用:查询训练任务所在节点列表
| 参数名称 | 类型 | 说明 |
|---|---|---|
| jobId | String | 任务ID |
| nodeName | Array of string | 节点名称 |
WebTerminalResult
获取指定任务容器的web Terminal的返回信息,被如下接口引用:获取训练任务WebTerminal地址
| 参数名称 | 类型 | 说明 |
|---|---|---|
| WebTerminalUrl | String | 进入容器的链接, 链接中包含2个参数:
|
JobFdResult
任务失败诊断结果
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| fdMode | String | 是 | 任务诊断模式: AIAnalysis:智能诊断,基于可观测指标,结合大预言模型的能力进行诊断 ExpertMode:基于内部专家经验进行诊断 |
| expertModeList | Array of ExpertModeList | 否 | 故障诊断匹配的专家经验,仅当fdMode=ExpertMode返回有效值 |
| category | String | 否 | 任务失败分类 |
| originalSegment | String | 是 | 定位到的报错日志,当前仅fdMode=AIAnalysis时返回 |
| reason | String | 是 | 训练失败的原因分析 |
| solution | String | 是 | 解决方案 |
ExpertModeList
专家经验模式匹配的诊断规则信息
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| Name | String | 是 | 专家经验规则名称 |
| instanceName | String | 是 | 训练实例名称 |
| nodeIP | String | 是 | 训练实例所在节点IP |
ScheduleDiagnosisLauncher
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| diagnosisId | String | 是 | 诊断ID |
| jobId | String | 是 | 任务ID |
ScheduleDiagnosisResult
训练任务调度诊断结果,详见:调度诊断项列表
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| ruleType | string | 是 | 训练任务调度诊断命中的规则类别,仅返回命中的规则类别,枚举值如下: 1. QueueQuotaDiagnostics:队列额度诊断 2. NodeAvailabilityDiagnostics:节点可用诊断 3. ResourceCapacityDiagnostics:资源余量诊断 |
| ruleName | string | 是 | 训练任务调度诊断命中的规则类别下的具体规则名称,仅返回命中的规则名称,枚举如下: 1. ResourcePoolQueueQuotaDiagnostics:资源池队列配额诊断,针对于GPU、CPU、内存等资源配额检查 2. ResourcePoolQueueOtherDiagnostics:资源池队列其他诊断,如父队列非法提交、错误队列提交等问题 3. NodeAvailabilityDiagnostics:节点可用性诊断,如节点硬件故障、节点封锁&管理、任务亲和性&反亲和性调度、节点NodeSelector等问题 4. NodeTaintToleranceDiagnostics:节点污点容忍诊断,如存在物理队列、节点污点等问题 5. StorageResourceMountDiagnostics:存储资源挂载诊断 6. EHCAndRDMANICDiagnostics:EHC、RDMA网卡诊断,如非法RDMA申请、无资源申请、跨EHC调度、TOR策略等问题 7. AcceleratorResourceDiagnostics:加速芯片资源诊断,如集群资源碎片、集群资源不足、资源描述符混用等问题 8. SingleNodePodLimitDiagnostics:单节点Pod数上限诊断,如节点上剩余可创建的Pod资源不足 9. OtherResourceDiagnostics:其他资源诊断,如子网ip不足、CPU核数、内存、存储空间等问题 |
| detail | Array of ScheduleDiagnosisDetail | 是 | 诊断结果的详细信息,包含具体的诊断数据 |
ScheduleDiagnosisDetail
诊断结果的详细信息,包含具体的诊断数据
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| queue | string | 是 | 队列名称,标识资源所属队列 |
| namespace | string | 是 | 命名空间 |
| job | string | 是 | 任务名称 |
| pod | string | 否 | Pod名称 |
| node | string | 否 | 节点名称,标识资源所在的节点 |
| detail | string | 否 | 详细原因 |
| resourceName | string | 否 | 资源名称,例如cpu,当资源名称有值时 ,request 和 allocatable也会同步返回具体数值 |
| request | string | 否 | 已经分配的资源+当前任务资源请求量 |
| allocatable | string | 否 | 可分配的资源总量,包含空闲的和已经分配的资源 |
AppConf
创建服务的配置,被如下接口引用:创建服务、更新服务
| 参数名称 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| appName | String | 是 | 服务名称,需满足正则表达式^[a-z][a-z0-9-]*[a-z0-9]$,长度不高于50 |
| chipType | String | 是 | 加速芯片类型 |
| insCount | Int32 | 是 | 部署实例数 |
| resPool | ResPoolConf | 是 | 资源池描述 |
| storage | StorageConf | 否 | 存储卷、共享内存配置 |
| containers | Array of ContainerConf | 是 | 服务容器信息,最少需要1个,最多10个,见containers结构 |
| access | AccessConf | 否 | 服务访问配置信息,默认为内网访问 |
| log | LogConf | 否 | 日志配置 |
| deploy | DeployConf | 否 | 部署配置,默认最大超量和最大不可用均为25% |
| misc | Misc | 否 | 实例label、annotations配置 |
ContainerConf
创建服务的配置,被如下接口引用:创建服务、更新服务
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| name | String | 是 | 容器名称,需满足正则表达式^a-z0-9?$,长度不高于63 |
| cpus | Int32 | 是 | cpu核数 > 0 |
| memory | Int32 | 是 | 内存大小 > 0 ,单位GiB |
| cards | Int32 | 是 | 加速卡数量 >= 0 |
| runCmd | Array of string | 否 | 启动命令 |
| runArgs | Array of string | 否 | 启动参数 |
| ports | Array of PortConf | 否 | []int结构json串,允许容器选择不暴露或暴露多个端口 |
| env | Map<string, string> | 否 | map[string]string结构 |
| image | ImageConf | 是 | 镜像信息,见请求示例 |
| volumeMounts | VolumnMountConf | 否 | 存储挂载,见请求示例 |
| readinessProbe | ProbeConf | 否 | 就绪探针信息 |
| startupsProbe | ProbeConf | 否 | 启动探针信息 |
| livenessProbe | ProbeConf | 否 | 存活探针信息 |
PortConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| port | Int32 | 是 | 端口号 |
ImageConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| imageType | Int32 | 是 | 镜像类型 1:百度云CCR 2:其它 |
| imageAddr | String | 是 | 镜像 |
| imagePullUser | String | 否 | 镜像拉取用户名 |
| imagePullPass | String | 否 | 镜像拉取密码 |
VolumnMountConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| volumnName | String | 是 | 卷名 |
| dstPath | String | 是 | 挂载到容器的地址 |
| readOnly | Bool | 否 | 默认为false |
ProbeConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| initialDelaySeconds | Int32 | 是 | 初始化检查延时,大于等于0 |
| timeoutSeconds | Int32 | 是 | 检查超时时长,大于等于1 |
| periodSeconds | int32 | 是 | 轮询检查时间间隔,大于等于1 |
| successThreshold | Int32 | 是 | 连接成功次数阈值,超过该值可被认为成功,大于等于1 |
| failureThreshold | Int32 | 是 | 连接失败次数阈值,超过该值可被认为失败,大于等于1 |
| handler | ProbeHandlerConf | 是 | 健康检查方法 |
ProbeHandlerConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| ExecAction | ExecAction | 否 | 通过在容器内执行命令判断,exec action、http get action、tcp socket action 有且仅能只有一个 |
| HttpGetAction | HTTPGetAction | 否 | 通过向容器发送HTTP请求判断,exec action、http get action、tcp socket action 有且仅能只有一个 |
| TCPSocketAction | TCPSocketAction | 否 | 通过向容器发起TCP连接判断,exec action、http get action、tcp socket action 有且仅能只有一个 |
ExecAction
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| command | Array of string | 是 | 在容器中执行指定命令,如果执行成功后退出码为0则健康检查成功 |
HTTPGetAction
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| path | String | 是 | 探针的调用路径 |
| port | Int32 | 是 | 探针的调用端口号 |
TCPSocketAction
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| port | Int32 | 是 | 探针的调用端口号 |
AccessConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| publicAccess | Bool | 是 | 是否开启公网访问 |
| eip | String | 否 | 开启公网时填写,选用的EIP IP地址 |
LogConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| persistent | Bool | 是 | 是否开启日志持久化,开启后将持久化容器标准输出日志 |
DeployConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| canaryStrategy | CanaryStrategyConf | 否 | 更新策略,默认maxSurge、maxUnavailable为25% |
CanaryStrategyConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| maxSurge | Int32 | 否 | 滚动更新过程中超出预期的实例数量占预期实例数的百分比,默认为0,和maxUnavailable不能同时为0 |
| maxUnavailable | Int32 | 否 | 滚动更新过程中不可用实例的数量占预期实例数的百分比,默认为0,和maxSurge不能同时为0 |
Misc
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| podLabels | Map<string, string> | 否 | kubernetes pod labels |
| podAnnotations | Map<string, string> | 否 | kubernetes pod annotations,可用于控制自定义监控指标 |
annotations
| 参数名 | 是否必须 | 参数说明 |
|---|---|---|
| prometheus.io/scrape | 否 | 是否开启自定义监控,"true"为开启 |
| prometheus.io/port | 否 | 暴露监控指标的端口 |
ResPoolConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| resPoolId | String | 是 | 资源池ID |
| queue | String | 是 | 队列名 |
StorageConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| shmSize | Int32 | 否 | 共享内存大小,单位GiB,默认为0 |
| volumns | Array of VolumnConf | 否 | 存储卷配置 |
VolumnConf
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| volumeType | String | 是 | 存储卷的类型,可选"pfs"、"hostpath"、"emptydir" |
| volumnName | String | 是 | 存储卷的名字,满足正则表达式^[a-z][a-z0-9-]*[a-z0-9]$,长度不高于50 |
| pfs | PFSConfig | 否 | 存储卷类型为pfs时填写 |
| hostpath | HostPathConfig | 否 | 存储卷类型为hostpath时填写 |
PFSConfig
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| srcPath | String | 是 | 文件在pfs中的路径 |
HostPathConfig
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| srcPath | String | 是 | 文件在节点中的路径 |
AppBriefInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| appId | String | 服务ID |
| appName | String | 服务名称 |
| resPoolId | String | 资源池ID |
| resPoolName | String | 资源池名称 |
| resQueue | String | 队列名 |
| region | String | 资源池所在地域 |
| publicAccess | Bool | 公网访问开关 |
| creator | String | 服务创建人 |
| ctime | Uint32 | 创建时间 |
| mtime | Uint32 | 更新时间 |
AppBriefStat
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| status | Int32 | 服务状态,1:部署中 2:运行中 3:未运行 4:异常 |
| availableIns | Int32 | 可用实例数 |
| totalIns | Int32 | 总实例数 |
AppStatus
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| accessIPs | AccessIPConf | 访问IP |
| accessPorts | Array of AccessPortConf | 访问端口 |
| blbShortId | String | BLB实例ID |
AccessIPConf
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| internal | String | 内网ip |
| external | String | 外网ip |
AccessPortConf
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| name | String | 系统生成的端口号名称 |
| containerPort | Int32 | 容器暴露的端口号 |
| servicePort | Int32 | 对应的访问端口号 |
AppChangeRecord
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| changeId | String | 变更ID |
| prev | String | 前一条变更记录 |
| changeType | Int32 | 变更类型,1:创建 2:更新 3:扩缩容 4:流量接入变更 |
| shortDesc | String | 变更描述 |
| creator | String | 操作人 |
| ctime | Uint32 | 变更创建时间 |
InsInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| insID | String | 实例ID |
| status | InsStauts | 实例状态 |
| containers | ContainerInfo | 容器信息 |
InsStauts
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| blocked | Bool | 是否封锁流量 |
| insStatus | String | 实例状态 Creating:该实例正在创建中,包括调度、运行中但未就绪等情况 Running:该实例所有容器均就绪 Running:该实例所有容器均就绪 Exception:实例处在异常状态 Terminating:该实例正在终止 |
| ctime | Uint32 | 实例创建时间 |
| availableContainers | Int32 | 就绪的容器数量 |
| totalContainers | Int32 | 总容器数 |
| podIP | String | 实例IP |
| nodeIP | String | 实例所在节点IP |
ContainerInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| containerId | String | 系统生成的容器唯一ID,非容器名 |
| container | ContainerConf | 容器信息 |
| status | ContainerStatus | 容器状态 |
ContainerStatus
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| containerStatus | String | 容器状态信息,包括Waiting |
| ctime | Uint32 | 状态开始时间,Running状态和Terminated状态返回 |
| reason | String | 状态原因,容器 Waiting 或 Terminated 时返回 |
ResPoolBriefInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| resPoolId | String | 资源池ID |
| resPoolName | String | 资源池名称 |
| associatedPfsID | String | 资源池关联PFS实例ID |
| clusterType | String | 资源池类别 |
| description | String | 资源池描述 |
| forbidDelete | String | 是否禁止删除 |
| kl8sVersion | String | K8S版本 |
| createdAt | String | 创建时间 |
| updatedAt | String | 更新时间 |
| phase | String | 资源池状态 |
ResPoolInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| meta | ResPoolMeta | 资源池元信息 |
| spec | ResPoolSpec | 资源池规约 |
| status | ResPoolStatus | 资源池状态 |
ResPoolMeta
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| resPoolId | String | 资源池ID |
| resPoolName | String | 资源池名称 |
| createdAt | String | 创建时间 |
| updatedAt | String | 更新时间 |
ResPoolSpec
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| k8sVersion | String | k8s版本 |
| associatedPfsID | String | 关联的pfs实例ID |
| region | String | 地域 |
| associatedCpromIDs | Array of string | 关联的Cprom ID |
| createdBy | String | 创建人 |
| description | String | 描述 |
| forbidDelete | Bool | 是否禁止删除 |
ResPoolStatus
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| GPUCount | ResPoolCountInfo | GPU数量情况 |
| NodeCount | ResPoolCountInfo | 节点数量情况 |
| phase | String | 运行状态 |
ResPoolCountInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| total | Int32 | 总数 |
| used | Int32 | 使用量 |
SubnetModel
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| CIDR | String | CIDR |
| physicalZone | String | 物理区 |
| subnetID | String | 子网ID |
| zoneName | String | 区域名 |
MountInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| mountPath | String | 挂载路径 |
| mountTargetID | String | 挂载点ID |
ResQueueInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| name | String | 队列名 |
| namespace | String | 命名空间 |
| parentQueue | String | 母队列 |
| queueType | String | 队列类型 |
| state | String | 状态 |
| reclaimable | Bool | 是否可重声明 |
| preemptable | Bool | 是否可抢占 |
| capability | Map<string, string> | 容量信息,主要包括CPU/内存/GPU容量信息 |
| allocated | Map<string, string> | 分配信息,主要包括CPU/内存/GPU已分配容量信息 |
| disableOversell | Bool | 是否允许超发 |
| createdTime | String | 创建时间 |
EIPInfo
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| name | String | EIP名称 |
| eip | String | IP地址 |
| eipid | String | 实例ID |
| status | String | 状态 |
| eipInstanceType | String | EIP实例类型 |
| instanceType | String | 实例类型 |
| instanceId | String | 实例ID |
| clusterId | String | 集群ID |
| bandwidthInMbps | String | 带宽 |
| paymentTiming | String | 支付方式 |
| billingMethod | String | 收费方式 |
| createTime | String | 创建时间 |
| expireTime | String | 过期时间 |
ResourcePoolUsers
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| users | []String | 用户bceID组成的数组 |
| groups | String | 用户组bceID组成的数组 |
ResourcePoolQueueUsers
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
| users | []String | 用户bceID组成的数组 |
| groups | String | 用户组bceID组成的数组 |
| managerUsers | []String | 用户bceID组成的数组 |
| managerGroups | String | 用户组bceID组成的数组 |
资源描述符
| GPU卡类型 | 对应资源标识符 |
|---|---|
| NVIDIA A800 | baidu.com/a800_80g_cgpu |
| NVIDIA A100-80GB | baidu.com/a100_80g_cgpu |
| NVIDIA A100-40GB | "baidu.com/a100_40g_cgpu |
| NVIDIA A10 | "baidu.com/a10_24g_cgpu |
| NVIDIA A30 | baidu.com/a30_24g_cgpu |
| NVIDIA V100-32GB | baidu.com/v100_32g_cgpu |
| NVIDIA V100-16GB | baidu.com/v100_16g_cgpu |
| NVIDIA T4 | baidu.com/t4_16g_cgpu |
| NVIDIA H800 | baidu.com/h800_80g_cgpu |
| NVIDIA L20 | baidu.com/l20_cgpu |
| NVIDIA H20 | baidu.com/h20_96g_cgpu |
| NVIDIA H20-3e | baidu.com/h20_141g_cgpu |
| NVIDIA H20Z | baidu.com/h20z_141g_cgpu |
