创建通用服务
支持通过 SDK 创建通用服务。示例如下: 注意:当前版本不支持配置健康检查探针(livenessProbe)参数from siflow import SiFlow
from siflow.types.generalsvc import CreateGeneralsvcRequest, Image, Instance, Workload
client = SiFlow(
region="cn-beijing",
cluster="auriga",
)
res = client.generalsvc.create(
request=CreateGeneralsvcRequest(
name="testsdk",
ports=[8000],
useBaseUrl=False,
workloads=[
Workload(
version="v1",
replicas=1,
resourcePool="cn-beijing-auriga-ai-infra-reserved-shared",
instances=[
Instance(name="sci.c23-2", countPerPod=1),
],
image=Image(
name="megatron",
version="0.12.1",
url="registry-cn-beijing.siflow.cn/siflow/megatron:0.12.1-a845aa7",
type="preset",
),
cmd="""echo hello world""",
)
]
)
)
参数说明:
CreateGeneralsvcRequest
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| name | str | YES | 服务名称 |
| ports | List[int] | NO | 服务端口 |
| workloads | List[Workload] | NO | 工作负载配置 |
| useBaseUrl | bool | NO | 是否使用 base URL |
Workload
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| versionName | str | NO | 版本名称 |
| version | str | NO | 版本号 |
| replicas | int | NO | 副本数量 |
| resourcePool | str | NO | 资源池名称 |
| instances | List[Instance] | NO | 实例配置 |
| image | Image | NO | 镜像配置 |
| volumes | List[Volume] | NO | 存储卷挂载配置 |
| cmd | str | NO | 启动命令 |
| endpoints | Endpoints | NO | 服务接入点 |
Instance
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| name | str | YES | 实例名称 |
| countPerPod | int | YES | 每个 Pod 的实例数量 |
Volume
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| volumeId | int | NO | 存储卷 ID |
| mountDir | str | NO | 挂载目录 |
Image
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| name | str | YES | 镜像名称 |
| version | str | YES | 镜像版本 |
| url | str | YES | 镜像 URL |
| type | str | YES | 镜像类型 |
获取通用服务列表
支持通过 SDK 查询通用服务列表。使用示例如下:res = client.generalsvc.list()
ListGeneralsvcsResponse(status=True, msg='Success', requestID='8d959bfb3fc8fee891f2a1396aa006a7', traceID='a31db0f49d9e3429ddd160bbd44e709c', data=None, total=1, page=1, pageSize=15, rows=[GeneralsvcBrief(uuid='273b82a7-853c-4ad3-9540-1674360dd2fb', name='testsdk', workloadNum=1, ports=[8000], cronPolicy=CronPolicy(restartTime=CronInfo(actionTime=None, enable=None), onlineTime=CronInfo(actionTime=None, enable=None), offlineTime=CronInfo(actionTime=None, enable=None)), status='NotReady', statusMsg='没有正常运行的工作负载版本', isOnline=True, createTime='2025-09-11T02:56:44Z', updateTime='2025-09-11T02:56:44Z')])
参数说明:
ListGeneralsvcsRequest
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| status | str | NO | 服务状态 |
| name | str | NO | 服务名称 |
| generalsvcUUID | str | NO | 服务 UUID |
| sortBy | str | NO | 排序字段 |
ListGeneralsvcsResponse
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| status | bool | YES | 是否成功 |
| msg | str | YES | 返回信息 |
| requestID | str | NO | 请求 ID |
| traceID | str | NO | 追踪 ID |
| total | int | YES | 总数量 |
| page | int | YES | 当前页码 |
| pageSize | int | YES | 每页数量 |
| rows | List[GeneralsvcBrief] | NO | 服务列表 |
GeneralsvcBrief
| 参数名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| uuid | str | YES | 服务唯一 ID |
| name | str | YES | 服务名称 |
| workloadNum | int | YES | 工作负载数量 |
| ports | List[int] | NO | 服务端口 |
| cronPolicy | CronPolicy | NO | 定时策略 |
| status | str | YES | 当前状态 |
| statusMsg | str | YES | 状态信息 |
| isOnline | bool | YES | 上线状态 |
| createTime | str | YES | 创建时间 |
| updateTime | str | YES | 最后更新时间 |
删除通用服务
支持通过 SDK 删除指定的通用服务。使用示例如下,其中传入的 ID 为通用服务的 UUIDres = client.generalsvc.delete(id='273b82a7-853c-4ad3-9540-1674360dd2fb')
