This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.2.3.2.2. 可配置优先级
您可以在 openshift-config
命名空间中的调度程序策略配置映射中配置这些优先级,以添加可影响优先级工作的标签。
优先级函数的类型由它们所使用的参数来标识。由于它们是可配置的,因此可以组合类型相同(但配置参数不同)的多个优先级,但前提是它们的用户定义名称不同。
有关使用这些优先级的详情,请参考“修改调度程序策略”。
ServiceAntiAffinity
接受一个标签,确保将属于同一服务的 pod 正常地分散到基于标签值的一组节点。它为指定标签值相同的所有节点赋予相同的分数。它将较高的分数给予组内 pod 密度最低的节点。
{ "kind": "Policy", "apiVersion": "v1", "priorities":[ { "name":"<name>", "weight" : 1 "argument":{ "serviceAntiAffinity":{ "label": "<label>" } } } ] }
{
"kind": "Policy",
"apiVersion": "v1",
"priorities":[
{
"name":"<name>",
"weight" : 1
"argument":{
"serviceAntiAffinity":{
"label": "<label>"
}
}
}
]
}
例如:
{ "kind": "Policy", "apiVersion": "v1", "priorities": [ { "name":"RackSpread", "weight" : 1, "argument": { "serviceAntiAffinity": { "label": "rack" } } } ] }
{
"kind": "Policy",
"apiVersion": "v1",
"priorities": [
{
"name":"RackSpread",
"weight" : 1,
"argument": {
"serviceAntiAffinity": {
"label": "rack"
}
}
}
]
}
在某些情况下,基于自定义标签的 ServiceAntiAffinity
参数不能按预期分散 pod。请参考此红帽解决方案。
labelPreference
参数根据指定的标签赋予优先级。如果节点上存在该标签,则该节点被赋予优先级。如果未指定标签,则为没有标签的节点赋予优先级。如果设置了带 labelPreference
参数的多个优先级,则所有优先级都必须具有相同的权重。
{ "kind": "Policy", "apiVersion": "v1", "priorities":[ { "name":"<name>", "weight" : 1 "argument":{ "labelPreference":{ "label": "<label>", "presence": true } } } ] }
{
"kind": "Policy",
"apiVersion": "v1",
"priorities":[
{
"name":"<name>",
"weight" : 1
"argument":{
"labelPreference":{
"label": "<label>",
"presence": true
}
}
}
]
}