Kubernetes
K8s 기초 #7 Namespace와 라벨 — 클러스터 정리법
시리즈를 따라오면서 한 가지 사실이 조용히 지나갔습니다 — 지금까지 만든 Pod, Deployment, Service, ConfigMap, Secret이 전부 default 네임스페이스 한 곳에 들어갔다는 점. 그리고 [#4](/ko/posts/k8s-basics-4) selector부터 라벨도 쭉 보고 있었지만 정리는 안 했습니다. 이번 글은 그 두 도구 — Namespace와 라벨 — 로 클러스터를 사람이 읽을 수 있는 모양으로 정리하는 법, 그리고 시리즈 7편의 도착점에서 다음 트랙(K8s 중급)을 짧게 예고합니다.
K8s 기초 #6 ConfigMap과 Secret — 설정 분리
[#5](/ko/posts/k8s-basics-5)까지 만든 매니페스트에는 한 가지가 어색하게 남아 있습니다 — 이미지 태그,포트,도메인 같은 값이 매니페스트에 직접 적힌 채라는 점. 이번 글은 두 객체 ConfigMap과 Secret을 정리하겠습니다. 12-factor의 "설정은 환경에 둔다"를 K8s에서 푸는 모양, env / envFrom / volume 세 가지 주입 방식, Secret이 진짜로 암호화는 아니라는 한 줄, 설정이 바뀌었을 때 Pod 재시작이 필요한 이유까지 한 사이클 따라가겠습니다.
K8s 기초 #5 Service — ClusterIP / NodePort / LoadBalancer
[#4](/ko/posts/k8s-basics-4)에서 Pod 3개를 띄우는 데까지는 왔지만, 그 3개에 트래픽을 어떻게 흘릴지가 비어 있습니다. Pod IP는 매번 바뀌고, 같은 Deployment의 3개 Pod 사이에 부하 분산도 안 되고, 외부 브라우저에서는 접근이 아예 안 됩니다. 이번 글은 그 문제를 해결하는 추상화 — Service의 안정 IP,DNS, selector,Endpoints의 동작, ClusterIP / NodePort / LoadBalancer 세 타입의 선택 기준까지 한 사이클 따라가겠습니다.
K8s 기초 #4 Deployment와 ReplicaSet — 선언형 배포와 롤링 업데이트
[#3](/ko/posts/k8s-basics-3)의 마지막에서 본 한 줄 — Pod는 mortal, 죽으면 그냥 사라진다 — 의 후속편. 이번 글에서는 처음으로 컨트롤러 매니페스트를 적어 본다. Deployment / ReplicaSet / Pod 세 단의 관계를 잡고, 같은 nginx Pod를 replicas: 3으로 띄우고 한 개를 지웠을 때 어떻게 자동 복구되는지, 이미지 태그를 한 글자 바꾸면 롤링 업데이트가 어떻게 굴러가는지, 그리고 잘못 올라간 버전을 한 줄로 어떻게 되돌리는지를 한 사이클 따라가겠습니다.
K8s 기초 #3 kubectl과 첫 Pod
[#2](/ko/posts/k8s-basics-2)에서 띄운 클러스터 위에 처음으로 워크로드 한 개를 올릴 차례. kubectl 명령 패턴을 한 표로 정리하고, kubectl run으로 명령형으로 첫 Pod를 띄워 본 다음 같은 모양을 YAML 매니페스트로 다시 적어 적용하겠습니다. describe,logs,exec로 Pod 안을 들여다보고, 마지막에는 Pod 한 개로는 왜 부족한지 — 그래서 다음 글의 Deployment가 왜 필요한지를 짚겠습니다.
K8s 기초 #2 로컬 환경 — minikube / kind / Docker Desktop k8s
[#1](/ko/posts/k8s-basics-1)에서 본 control plane / worker 그림을 실제로 마주할 차례. 노트북 한 대 위에 K8s 클러스터를 띄우는 세 가지 길(minikube / kind / Docker Desktop k8s)을 비교하고, kubectl을 설치한 뒤, kind로 첫 클러스터를 띄워 노드와 시스템 파드를 확인하는 흐름까지 한 번에 따라가겠습니다.
K8s 기초 #1 쿠버네티스란 — 왜 컨테이너 오케스트레이터가 필요한가
도커로 컨테이너 한 대를 띄우는 데 익숙해진 다음의 질문 — 그러면 컨테이너 100대는 어떻게 굴리지? 죽으면 누가 다시 살리고, 트래픽이 몰리면 어떻게 늘렸다 줄였다 하지? 이 시리즈의 첫 글에서는 단일 컨테이너의 한계, 컨테이너 오케스트레이터가 푸는 문제, 그리고 쿠버네티스 클러스터의 큰 그림을 정리하겠습니다.