创建联邦工作负载 - CreateProxyUnitedWorkload
功能介绍
创建联邦工作负载
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。
URI
POST /v1/clustergroups/{clustergroupid}/unitedworkload
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
clustergroupid |
是 |
String |
容器舰队id |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
X-Auth-Token |
否 |
String |
身份认证信息,调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
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 |
否 |
String |
资源期望状态的代数 |
|
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 |
否 |
String |
仅对NoExecute效果有效,表示Pod能容忍污点的时间 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
schedulerObservedGeneration |
否 |
Integer |
记录调度器当前观察到的资源生成版本代数 |
|
conditions |
否 |
Array of ConditionStatus objects |
资源的各种状态条件 |
响应参数
状态码:200
创建联邦工作负载成功
无
请求示例
创建联邦工作负载
POST 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 |
服务器内部错误 |
错误码
请参见错误码。