更新联邦工作负载 - UpdateProxyUnitedWorkload
功能介绍
更新联邦工作负载
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。
URI
PUT /v1/clustergroups/{clustergroupid}/unitedworkload
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| clustergroupid | 是 | String | 容器舰队id |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 否 | String | 身份认证信息,调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值 |
| Content-Type | 是 | String | 消息体的类型(格式),仅支持application/json |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| kind | 否 | String | 资源类型,有以下取值: |
| apiVersion | 否 | String | API版本 |
| metadata | 否 | ObjectMeta object | 工作负载元数据 |
| template | 否 | Object | 要部署的应用模板 |
| propagationPolicy | 否 | PropagationPolicy object | 资源在多个集群间传播的策略 |
| overridePolicy | 否 | OverridePolicy object | 资源覆盖策略 |
| resourceBinding | 否 | ResourceBinding object | 资源与传播策略的绑定关系 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| kind | 否 | String | API类型,固定值“PropagationPolicy” |
| apiVersion | 否 | String | API版本 |
| metadata | 否 | ObjectMeta object | 基本信息 |
| spec | 否 | PropagationSpec object | 传播策略的具体说明 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| resourceSelectors | 否 | Array of ResourceSelector objects | 资源选择器,用于选择要传播的资源 |
| propagateDeps | 否 | Boolean | 是否自动传播引用的资源 |
| placement | 否 | Placement object | 定义资源传播到哪些集群的规则 |
| priority | 否 | Integer | 策略的优先级,默认值为0 |
| schedulerName | 否 | String | 调度器名称,默认值为“default-scheduler” |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| kind | 否 | String | API类型,固定值“OverridePolicy” |
| apiVersion | 否 | String | API版本 |
| spec | 否 | OverrideSpec object | 覆盖策略的具体说明 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| resourceSelectors | 否 | Array of ResourceSelector objects | 资源选择器,限制该覆盖策略适用的资源类型 |
| overriders | 否 | Object | 将应用于资源的覆盖规则 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| apiVersion | 否 | String | 目标资源的API版本 |
| kind | 否 | String | 目标资源的类型 |
| namespace | 否 | String | 目标资源的名称 |
| name | 否 | String | 目标资源所在命名空间 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| kind | 否 | String | API类型,固定值“ResourceBinding” |
| apiVersion | 否 | String | API版本 |
| metadata | 否 | ObjectMeta object | 资源的元数据 |
| spec | 否 | ResourceBindingSpec object | 表示资源绑定的期望行为 |
| status | 否 | ResourceBindingStatus object | 表示资源绑定的当前实际状态 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| uid | 否 | String | 资源ID |
| name | 否 | String | 资源名称 |
| generateName | 否 | String | 当未提供name时,服务器使用的前缀来生成唯一名称 |
| namespace | 否 | String | 命名空间 |
| labels | 否 | Map<String,String> | 标签 |
| annotations | 否 | Map<String,String> | 注解 |
| creationTimestamp | 否 | String | 创建时间 |
| updateTimestamp | 否 | String | 更新时间 |
| resourceVersion | 否 | String | 资源内部版本 |
| generation | 否 | Integer | 资源期望状态的代数 |
| managedFields | 否 | Array of ManagedFieldsEntry objects | 记录哪些字段由哪些工作流管理 |
| ownerReferences | 否 | Array of OwnerReference objects | 用于定义对象间所有权关系,管理对象的依赖关系和垃圾回收机制,支持控制器对资源的管理 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| manager | 否 | String | 管理者的名称 |
| operation | 否 | String | 记录导致此条目创建的操作类型,只能是 Apply 或 Update 两种操作类型 |
| apiVersion | 否 | String | 该管理者定义字段时所依据的资源 API 版本 |
| time | 否 | String | 此管理条目被创建或最后一次更新的时间戳 |
| fieldsType | 否 | String | 固定为 "FieldsV1",标记字段结构格式 |
| fieldsV1 | 否 | Object | 用于存储实际被管理的字段信息 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| apiVersion | 否 | String | 标识引用对象的API版本 |
| kind | 否 | String | 引用对象的类型 |
| name | 否 | String | 引用对象的名称 |
| uid | 否 | String | 引用对象的uid |
| controller | 否 | Boolean | 如果为true,表示该引用指向管理该资源的控制器 |
| blockOwnerDeletion | 否 | Boolean | 当为true且拥有者有名为"foregroundDeletion"的finalizer 时,会阻止拥有者被删除,直到这个引用被移除 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| resource | 否 | Object | 要传播的Kubernetes资源引用 |
| propagateDeps | 否 | Boolean | 是否自动传播相关资源 |
| replicaRequirements | 否 | Object | 定义每个副本的需求 |
| replicas | 否 | Integer | 要创建的副本数量 |
| placement | 否 | Placement object | 集群选择规则 |
| clusters | 否 | Array of TargetCluster objects | 目标成员集群列表 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| clusterAffinity | 否 | ClusterAffinity object | 集群亲和性规则 |
| clusterTolerations | 否 | Array of Toleration objects | 集群容忍规则 |
| replicaScheduling | 否 | Object | 定义如何在成员集群间分配副本 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| clusterNames | 否 | Array of strings | 指定要选择的集群名称列表 |
| exclude | 否 | Array of strings | 指定要排除的集群名称列表 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| key | 否 | String | 表示要容忍的污点键名 |
| operator | 否 | String | 定义Key与Value之间的关系,可选值为Exists或Equal,默认为Equal |
| value | 否 | String | 表示要匹配的污点值,当Operator为Exists时,Value应为空 |
| effect | 否 | String | 指定要匹配的污点效果,可选值为 NoSchedule、PreferNoSchedule或NoExecute,如果为空,表示匹配所有效果 |
| tolerationSeconds | 否 | Integer | 仅对NoExecute效果有效,表示Pod能容忍污点的时间 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| schedulerObservedGeneration | 否 | Integer | 记录调度器当前观察到的资源生成版本代数 |
| conditions | 否 | Array of ConditionStatus objects | 资源的各种状态条件 |
响应参数
状态码:200
更新联邦工作负载成功
无
请求示例
更新联邦工作负载
PUT https://ucs.myhuaweicloud.com/v1/clustergroups/{clustergroupid}/unitedworkload
{
"kind" : "Deployment",
"metadata" : {
"name" : "test",
"namespace" : "default"
},
"template" : {
"apiVersion" : "apps/v1",
"kind" : "Deployment",
"metadata" : {
"labels" : {
"version" : "v1"
},
"name" : "test",
"namespace" : "default"
},
"spec" : {
"selector" : {
"matchLabels" : {
"app" : "test",
"version" : "v1"
}
},
"template" : {
"metadata" : {
"labels" : {
"app" : "test",
"version" : "v1"
}
},
"spec" : {
"containers" : [ {
"name" : "nginx",
"image" : "xxxxxx",
"imagePullPolicy" : "IfNotPresent"
} ],
"terminationGracePeriodSeconds" : 30,
"tolerations" : [ {
"key" : "node.kubernetes.io/not-ready",
"operator" : "Exists",
"effect" : "NoExecute",
"tolerationSeconds" : 300
}, {
"key" : "node.kubernetes.io/unreachable",
"operator" : "Exists",
"effect" : "NoExecute",
"tolerationSeconds" : 300
} ],
"volumes" : [ ],
"initContainers" : [ ]
}
},
"serviceName" : "headless-kd3s6e",
"replicas" : 2,
"revisionHistoryLimit" : 10,
"progressDeadlineSeconds" : 600
}
},
"propagationPolicy" : {
"spec" : {
"placement" : {
"clusterAffinity" : {
"clusterNames" : [ ]
},
"replicaScheduling" : {
"replicaSchedulingType" : "Divided",
"replicaDivisionPreference" : "Weighted",
"weightPreference" : {
"dynamicWeight" : "AvailableReplicas"
}
}
},
"propagateDeps" : true
}
},
"overridePolicy" : { }
} 响应示例
无
状态码
| 状态码 | 描述 |
|---|---|
| 200 | 更新联邦工作负载成功 |
| 400 | 客户端请求错误,服务器无法执行请求 |
| 403 | 服务器拒绝执行请求 |
| 404 | 资源不存在 |
| 500 | 服务器内部错误 |
错误码
请参见错误码。