보안 강화와 Tailscale VPN으로 외부 접근 설정하기 (홈랩 k8s 구축기 6편)
지난 편에서 모니터링 스택을 올렸다. 이번 편은 마지막으로, 보안 강화와 외부 접근 설정이다. 보안을 신경 쓰는 이유 홈랩이라고 해도 실제 서비스를 운영하려면 보안을 무시할 수 없다. DB에는 실제 데이터가 들어가고, CI/CD 파이프라인에는 GitHub 토큰 같은 시크릿이 오간다. 클러스터 내부라고 해서 아무 Pod이나 아무 곳에나 접근할 수 있게 두는 것은 좋지 않다. 세 가지를 구성했다. Kyverno로 정책을 적용하고, Network Policy로 네임스페이스 간 트래픽을 격리하고, kube-bench로 현재 보안 상태를 정…
Prometheus, Grafana, Loki로 모니터링 구성하기 (홈랩 k8s 구축기 5편)
지난 편에서 CI/CD 파이프라인을 구성했다. 이번 편은 모니터링이다. 클러스터가 잘 돌아가고 있는지, 어디서 문제가 생겼는지 파악하려면 메트릭과 로그를 봐야 한다. 그리고 이번…
Jenkins, ArgoCD, Harbor로 CI/CD 파이프라인 구성하기 (홈랩 k8s 구축기 4편)
지난 편에서 네트워크와 스토리지를 구성했다. 이번에는 코드를 빌드하고 클러스터에 배포하는 파이프라인을 만드는 차례다. CI/CD를 왜 직접 구성하는가 GitHub Actions를…
MetalLB, ingress-nginx, Longhorn으로 네트워크와 스토리지 구성하기 (홈랩 k8s 구축기 3편)
지난 편에서 Ansible로 Kubernetes 클러스터를 구성했다. 클러스터는 올라왔지만, 이 상태로는 아무것도 할 수 없다. 외부에서 트래픽을 받는 방법도 없고, 데이터를 저장…
Ansible로 Kubernetes 클러스터를 코드 한 줄로 (홈랩 k8s 구축기 2편)
지난 편에서 Terraform으로 VM 3개를 만들었다. 이번에는 그 VM들 위에 Kubernetes 클러스터를 올리는 과정이다. kubeadm으로 클러스터를 직접 구성하고, 그…
Proxmox 설치부터 Terraform으로 VM 찍어내기까지 (홈랩 k8s 구축기 1편)
집에 Kubernetes 클러스터를 구축해 봤습니다에서 전체 구성과 삽질의 개요를 간략하게 정리했다. 이번 편부터는 각 단계를 좀 더 구체적으로 풀어볼 생각이다. 1편의 주제는 P…