我按照此说明https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/尝试创建在Kubernetes上运行的多个调度程序新的kubernetes调度程序状态为running,但是日志生成此错误,并且使用新调度程序状态的pod的状态为pending
E1129 02:43:22.639372 1 reflector.go:156] k8s.io/client-go/informers/factory.go:135: Failed to list *v1.CSINode: the server could not find the requested resource
这是我的kube-scheduler的clusterrole
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
annotations:
rbac.authorization.kubernetes.io/autoupdate: "true"
creationTimestamp: "2019-11-28T08:29:43Z"
labels:
kubernetes.io/bootstrapping: rbac-defaults
name: system:kube-scheduler
resourceVersion: "74398"
selfLink: /apis/rbac.authorization.k8s.io/v1/clusterroles/system%3Akube-scheduler
uid: 517e8769-911c-4833-a37c-254edf49cbaa
rules:
- apiGroups:
- ""
- events.k8s.io
resources:
- events
verbs:
- create
- patch
- update
- apiGroups:
- ""
resources:
- endpoints
verbs:
- create
- apiGroups:
- ""
resourceNames:
- kube-scheduler
- my-scheduler
resources:
- endpoints
verbs:
- delete
- get
- patch
- update
- apiGroups:
- ""
resources:
- nodes
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- pods
verbs:
- delete
- get
- list
- watch
- apiGroups:
- ""
resources:
- bindings
- pods/binding
verbs:
- create
- apiGroups:
- ""
resources:
- pods/status
verbs:
- patch
- update
- apiGroups:
- ""
resources:
- replicationcontrollers
- services
verbs:
- get
- list
- watch
- apiGroups:
- apps
- extensions
resources:
- replicasets
verbs:
- get
- list
- watch
- apiGroups:
- apps
resources:
- statefulsets
verbs:
- get
- list
- watch
- apiGroups:
- policy
resources:
- poddisruptionbudgets
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- persistentvolumeclaims
- persistentvolumes
verbs:
- get
- list
- watch
- apiGroups:
- authentication.k8s.io
resources:
- tokenreviews
verbs:
- create
- apiGroups:
- authorization.k8s.io
resources:
- subjectaccessreviews
verbs:
- create
- apiGroups:
- storage.k8s.io
resources:
- csinodes
verbs:
- watch
- list
- get
对此问题有什么建议吗?
谢谢
最后,我尝试使用16.3之前的旧版本的kubernetes,使用15.6,现在可以使用– akhmad alimudin
确定,现在我了解您遇到问题的原因。您可能试图在较旧的k8s群集(关键组件为kube-scheduler
)上运行较新的kube-apiserver
版本,但无法完成。如您在official kubernetes documentation中所读:
[因此,您可以使用kube-controller-manager
,kube-scheduler
和cloud-controller-manager
不得更新比他们交流的
示例:kube-apiserver
实例用。它们应该与kube-apiserver
次要版本匹配,但是可能是较早的一个次要版本(以允许实时升级)。
kube-apiserver
位于1.13
kube-controller-manager
,kube-scheduler
和1.13和1.12支持cloud-controller-manager
kube-scheduler
,它比当前部署的kube-apiserver
小一个版本,但不更新。