<aside> 💡 해당 내용은 Cert-Manager와 let’s encrypt를 사용하여 적용하는 내용입니다. DNS는 가비아(유료)를 사용하고 있습니다.
</aside>
Cert-Manager는 Kubernetes 환경에서 SSL/TLS 인증서를 자동으로 발급, 갱신, 관리하는 오픈소스 도구입니다. (https://cert-manager.io/docs/)
쿠버네티스에 Cert-Manager를 설치하는 방법 중에서 Helm을 이용해서 설치해보도록 하겠습니다. (설치 버전은 1.14.4 입니다.)
$ helm repo add jetstack <https://charts.jetstack.io>
$ helm repo update
$ helm install cert-manager jetstack/cert-manager --namespace cert-manager --create-namespace
$ kubectl get po -n cert-manager
NAME READY STATUS RESTARTS AGE
cert-manager-6dc66985d4-msfrf 1/1 Running 0 1d
cert-manager-cainjector-c7d4dbdd9-ds6ll 1/1 Running 0 1d
cert-manager-webhook-847d7676c9-fk5vq 1/1 Running 0 1d
cert-manager의 Issuer는 인증서 발급을 관리하고 자동화하는 데 사용되는 리소스입니다.
Issuer는 인증서를 발급하기 위한 설정을 정의하며, cert-manager가 Kubernetes 클러스터 내에서 인증서를 요청하고 갱신하는 데 필요한 정보와 규칙을 제공합니다.
Cert-Manager에서는 2가지 Issuer를 제공합니다.