개요
사내에서 Private 환경의 GitLab을 설치하던 중 인증서와 관련된 문제를 맞이하게 됐다.
기존에는 HTTP로 구성하였으나, Self Sign 인증서를 발급해서 적용하는 부분을 간단하게 정리하려고 한다. (금융권, 공공기관 아니면 AWS 사용을 적극 추천하고 싶다.)
설치
💡 KinD를 사용해서 Local Kubernetes Cluster 환경이며 버전은 v1.31.2 입니다.
이름 | 목적 |
---|---|
Cert-Manager | 인증서 발급 및 갱신 |
Trust-Manager | 클러스터 전역에 인증서 Bundle 생성 |
Kyverno | 클러스터 정책을 규정 |
Cert-Manager
- Helm Chart 다운로드
$ helm repo add jetstack https://charts.jetstack.io --force-update
$ helm pull jetstack/cert-manager
$ tar xvfz cert-manager-v1.17.1.tgz
$ cd cert-manager
- Cert-Manager Helm 설치
# Default 값으로 설치
$ helm upgrade cert-manager . -n cert-manager --create-namespace --install
- Cert-manager 확인
$ kubectl get po -n cert-manager
NAME READY STATUS RESTARTS AGE
cert-manager-6794b8d569-8t6vm 1/1 Running 2 (93m ago) 3d21h
cert-manager-cainjector-7f69cd69f7-m4dvn 1/1 Running 3 (5h42m ago) 3d21h
cert-manager-webhook-6cc5dccc4b-d8lkd 1/1 Running 2 (5h43m ago) 3d21h
Trust-Manager
- Helm Chart 다운로드
$ helm pull jetstack/trust-manager
$ tar xvfz trust-manager-v0.16.0.tgz
$ cd trust-manager
- Trust-Manager Helm 설치
# Default 값으로 설치
$ helm upgrade trust-manager . -n trust-manager --create-namespace --install
- Trust-manager 확인
NAME READY STATUS RESTARTS AGE
trust-manager-759cc956b-mmrbq 1/1 Running 2 (5h9m ago) 3d21h
Kyverno
- Helm Chart 다운로드
$ helm repo add kyverno https://kyverno.github.io/kyverno/ --force-update
$ helm pull kyverno/kyverno
$ tar xvfz kyverno-3.3.7.tgz
$ cd kyverno
- Kyverno Helm 설치
$ helm upgrade kyverno . -n kyverno --create-namespace --install
- Kyverno 확인
$ kubectl get po -n kyverno
NAME READY STATUS RESTARTS AGE
kyverno-admission-controller-df7b67cf-7q629 1/1 Running 2 (5h48m ago) 3d21h
kyverno-background-controller-8544847cf-c78hx 1/1 Running 2 (5h48m ago) 3d21h
kyverno-cleanup-controller-5db46d8ddb-5dtz4 1/1 Running 2 (5h48m ago) 3d21h
kyverno-reports-controller-77f95686d4-9mlsm 1/1 Running 2 (5h48m ago) 3d21h
후기
Cert-Manager를 통해서 인증서를 발급 → Trust-Manager를 통해 클러스터 전역에 Bundle로 배포 → Kyverno ClusterPolicy를 사용해서 Admission Webhook 설정으로 진행할 것 같다.
'Kubernetes' 카테고리의 다른 글
Self Sign 인증서 적용하기 - 구성 (1) | 2025.03.24 |
---|---|
인증서를 무료로 관리해보자(Cert-manager + Let’s Encrypt) (0) | 2025.01.12 |
VKE - Vultr Kubernetes Engine (0) | 2025.01.12 |
kind(Kubernetes in Docker) (0) | 2025.01.12 |
Kubernetes Workload Resources(Daemonset) (4) | 2023.12.03 |