Kubernetes CalculateNodeLabelPriority不起作用

时间:2016-02-17 06:30:06

标签: kubernetes

我需要根据给定的节点标签优先在节点上创建pod。我使用CalculateNodeLabelPriority来强制执行我需要的规则。但是,当我启动kube-scheduler时,我得到以下错误

F0217 10:52:18.020751    3198 plugins.go:198] Invalid configuration: Priority type not found for CalculateNodeLabelPriority

我看了一下master,我可以看到CalculateNodeLabelPriority优先级没有在defaultPriorities中注册

https://github.com/kubernetes/kubernetes/blob/master/plugin/pkg/scheduler/algorithmprovider/defaults/defaults.go

为什么它没有注册,虽然在优先级中提到。有没有办法注册呢?

1 个答案:

答案 0 :(得分:0)

通过添加参数变量来管理以解决问题。代码检查参数对象以接受Priority对象 https://github.com/kubernetes/kubernetes/blob/release-1.1/plugin/pkg/scheduler/factory/plugins.go#L98

{
   "predicates": [
     {
        "name": "HostName"
     },
     {
        "name": "MatchNodeSelector"
     },
     {
        "name": "PodFitsResources"
     }
   ],
   "priorities": [
     {
        "name": "NewNodeLabelPriority",
        "weight": 1,
        "argument": {
           "labelPreference": {
               "label": "pdc",
               "presence": true
           }
        }
     }
   ]
}