해당 에러는 Helm v2에서만 발생하는 에러입니다.
Helm v3 에서는 잠재적인 보안 문제를 방지하기 위해, Tiller를 사용하지 않도록 변경되었습니다.
이제는, kubeconfig 파일의 RBAC 권한을 따라가게 되어, Tiller를 사용할 필요가 없어졌습니다.
문제
Helm을 통해 Jenkins 차트를 설치하려던 중 다음과 같은 에러가 발생
Error: release jenkins failed: namespaces "dev" is forbidden: User "system:serviceaccount:kube-system:default" cannot get resource "namespaces" in API group "" in the namespace "dev"
Tiller : 클러스터에서 Helm Chart들의 통합 관리와 설치를 위해 사용하는 Pod
원인
내가 생성한 dev 라는 네임스페이스에 리소스를 설치 할 권한을 부여하지 않았기 때문에 발생
해결
kubectl --namespace kube-system create serviceaccount tiller kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller helm init --service-account tiller --upgrade
'Infra > Kubernetes' 카테고리의 다른 글
[Kubernetes] Self-Managed 쿠버네티스 CI/CD (Jenkins, Spring Cloud, MetalLB) (1) | 2024.09.10 |
---|---|
[Kubernetes] PV & PVC 란? (0) | 2023.07.24 |
[Kubernetes] Self-managed k8s CI/CD 환경 구축 후기 / SSAFY 자율 프로젝트 (1) | 2023.05.30 |
[Kubernetes] EFK - Fluentd 란? (0) | 2023.05.15 |