安装kubesphere v3.1.1产生如下报错
Error creating: pods "ks-controller-manager-bb8c78dc7-" is forbidden: error looking up service account kubesphere-system/kubesphere: serviceaccount "kubesphere" not found
[root@kubernetes1 zc]#kubectl describe replicaset.apps/ks-controller-manager-bb8c78dc7 -n kubesphere-system
Name: ks-controller-manager-bb8c78dc7
Namespace: kubesphere-system
Selector: app=ks-controller-manager,pod-template-hash=bb8c78dc7,tier=backend,version=v3.1.1
Labels: app=ks-controller-manager
pod-template-hash=bb8c78dc7
tier=backend
version=v3.1.1
Annotations: deployment.kubernetes.io/desired-replicas: 1
deployment.kubernetes.io/max-replicas: 1
deployment.kubernetes.io/revision: 1
Controlled By: Deployment/ks-controller-manager
Replicas: 0 current / 0 desired
Pods Status: 0 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
Labels: app=ks-controller-manager
pod-template-hash=bb8c78dc7
tier=backend
version=v3.1.1
Service Account: kubesphere
Containers:
ks-controller-manager:
Image: kubesphere/ks-controller-manager:v3.1.1
Ports: 8080/TCP, 8443/TCP
Host Ports: 0/TCP, 0/TCP
Command:
controller-manager
--logtostderr=true
--leader-elect=true
Limits:
cpu: 1
memory: 1000Mi
Requests:
cpu: 30m
memory: 50Mi
Environment: <none>
Mounts:
/etc/kubesphere/ from kubesphere-config (rw)
/etc/localtime from host-time (rw)
/tmp/k8s-webhook-server/serving-certs from webhook-secret (rw)
Volumes:
kubesphere-config:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: kubesphere-config
Optional: false
webhook-secret:
Type: Secret (a volume populated by a Secret)
SecretName: ks-controller-manager-webhook-cert
Optional: false
host-time:
Type: HostPath (bare host directory volume)
Path: /etc/localtime
HostPathType:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedCreate 53m (x17 over 58m) replicaset-controller Error creating: pods "ks-controller-manager-bb8c78dc7-" is forbidden: error looking up service account kubesphere-system/kubesphere: serviceaccount "kubesphere" not found
解决方案如下:
kubectl get serviceaccount -n kubesphere-system
kubectl create serviceaccount kubesphere -n kubesphere-system
kubectl create clusterrolebinding kubesphere-rolebinding \
--clusterrole=cluster-admin \
--serviceaccount=kubesphere-system:kubesphere
kubectl get clusterrolebinding | grep kubesphere-rolebinding