본문 바로가기
클라우드/Kubernetes

helm install no matches for kind "Certificate" 에러 해결 & Cert-manager란??

by 정권이 내 2022. 12. 21.

cert-manager

 

no matches for kind "Certificate" 에러 해결 & Cert-manager란??

 

쿠버네티스 클러스터를 새로 구축하고 helm으로 서비스를 실행하려고 하면 다음과 같은 에러가 발생할수 있습니다.

helm install prometheus grafana/kube-prometheus-stack
Error: INSTALLATION FAILED: unable to build kubernetes objects from release manifest: [unable to recognize "": no matches for kind "Certificate" in version "cert-manager.io/v1", unable to recognize "": no matches for kind "Issuer" in version "cert-manager.io/v1"]

 

이 에러는 컨트롤러 웹후크에 대한 TLS 필수요소를 구성하지 않았기 때문에 발생하는데 cert-manager 는 TLS 인증서 관리를 제공하는 Kubernetes 애드온입니다.

 

cert-manager가 k8s내에 설치되지 않았으므로 설치를 위해 다음과 같이 설치를 진행합니다.

 

1. cert-manager YAML 설치

$ kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.5.3/cert-manager.yaml

 

2. cert-manager 설치 확인

$ kubectl get pods --namespace cert-manager
NAME                                       READY   STATUS    RESTARTS      AGE
cert-manager-78795fb855-nfjb4              1/1     Running   3 (22d ago)   89d
cert-manager-cainjector-7d884976db-n4rn5   1/1     Running   8 (22d ago)   89d
cert-manager-webhook-655cbbc867-vdthv      1/1     Running   3 (22d ago)   89d

 

3. helm install 명령으로 서비스 설치

helm install prometheus grafana/kube-prometheus-stack
...
...
Success log...

 

Cert-manager 란?

공식 Github : https://github.com/cert-manager/cert-manager

cert-manager는 k8s 내부에서 HTTPS 인증서를 요청하고 k8s 컨테이너에 배포하며 인증서 갱신을 자동화하고 인증서가 유효하거나 최신인지를 보장하며 만료전 적절한 시기에 인증서 갱신을 하는 역할을 합니다.

Let's Encrypt(ACME), HashiCorp Vault, Venafi TPP/TLS Protect Cloud 등 다양한 소스의 인증서 발급은 물론 로컬 클러스터 내 발급도 지원합니다.

 

cert-manager high level overview diagram

반응형

댓글