Kubernetes 클러스터의 RBAC(Role-Based Access Control) 설정에 대한 작업을 수행하기 위해 아래와 같은 명령어를 실행하였습니다.( RBAC는 사용자와 서비스 계정에 대한 특정 권한을 부여하거나 거부하는 메커니즘입니다 )
kubectl create clusterrolebinding cluster-admin-binding \
--clusterrole cluster-admin \
--user $(gcloud config get-value account)
위 명령어를 실행하면 아래와 같은 에러 문구가 나오면서 실패하게 되었습니다.
error: failed to create clusterrolebinding:
clusterrolebindings.rbac.authorization.k8s.io is forbidden: User
"1231231243241234132" cannot create resource "clusterrolebindings" in API
group "rbac.authorization.k8s.io" at the cluster scope: requires one of
["container.clusterRoleBindings.create"] permission(s).
해당 오류는 권한 문제로 먼저 gcloud auth list를 통해 현재 어느 사용자가 사용중인지 확인 해줍니다.
저의 경우 기본 쿠버네티스 api 사용자로 로그인 되어 있었는데 해당 아이디는 쿠버네티스에 대한 권한이 부족하기에 위와 같은 에러가 나오게 된 것이였습니다.
이를 해결 하기 위해 iam에서 kubernetes admin 권한을 주었습니다.

이후 다시 명령어를 실행하고 나서 아래와 같은 문구가 나오면 성공입니다.
clusterrolebinding.rbac.authorization.k8s.io/cluster-admin-binding created
kubectl create clusterrolebinding cluster-admin-binding \
--clusterrole cluster-admin \
--user $(gcloud config get-value account)
위 명령어는 아래와 같은 내용을 가지고 있습니다.
kubectl createclusterrolebindingcluster-admin-binding--clusterrole cluster-admin--user $(gcloud config get-value account)