Failed to create RoleBinding for ### in namespace #######. API server returned error 'admission webhook "admission.vmware.com" denied the request: Users are allowed to create role bindings only for service accounts.'. This operation will be retried.
/var/log/vmware/wcp/wcpsvc.log[YYYY-MM-DDTHH:MM:SS] debug wcp [workload/controller.go:###] [opID=svc-velero-domain-####-workload=svc-velero-domain-####] Reconcile role bindings done map[] [{Severity:ERROR Details:0x#######0}][YYYY-MM-DDTHH:MM:SS] debug wcp [workload/controller.go:###] [opID=svc-velero-domain-####-workload=svc-velero-domain-####] Reconcile role bindings done map[] [{Severity:ERROR Details:0x#######0}][YYYY-MM-DDTHH:MM:SS] debug wcp [workload/controller.go:###] [opID=svc-velero-domain-####-workload=svc-velero-domain-####] Reconcile role bindings done map[] [{Severity:ERROR Details:0x#######0}]
Error from server (Forbidden): pods is forbidden: User "sso:[email protected]" cannot list resource "pods" in API group "" at the cluster scope/etc/vmware/wcp/wcp-schedext-admission-controller-user-whitelist on Supervisor control plane nodes is empty or truncated.This issue occurs because the "/etc/vmware/wcp/wcp-schedext-admission-controller-user-whitelist" file on one or more Supervisor control plane nodes is truncated or empty
wcp-schedext-admission-controller-user-whitelist file, perform the following steps:Retrieve the required values by running these commands on the Supervisor node:
<machine_id> from the output of: grep MACHINE_ID /var/lib/node.cfg<sso_domain> from the output of: grep SSO_DOMAIN /var/lib/node.cfg
cat << EOL > /etc/vmware/wcp/wcp-schedext-admission-controller-user-whitelist# List of user-prefixes whitelisted by schedext admission controller for# creating or updating resources modifying secure annotations or tolerating# master/control plane taint.kubernetes-adminkubeadmsystem:sso:wcp-#####@####vmware-system-EOL
(Note: Replace wcp-#####@#### with the machine_id and sso_domain retrieved in Step 1.)Restart the wcp-schedext container on the Supervisor Control Plane:
crictl ps -a | grep schedext crictl stop <container_id>Wait 10-15 minutes for TKG components to reconcile and return to a healthy state.