태그: #kubernetes
GPU·LLM·MLOps·쿠버네티스, 그리고 마음가짐에 관한 글 · 260 편
CloudNativePG로 쿠버네티스에 Postgres 띄우고 죽여보기 — 페일오버 23초 실측
실제 8노드 쿠버네티스 클러스터에 CloudNativePG(CNPG) v1.30.0을 설치하고, 3인스턴스 Postgres 클러스터를 띄운 뒤, 정말로 프라이머리를 죽여봤습니다. 부트스트랩부터 복제 확인, 프라이머리 강제 삭제 후 페일오버(23.1초 만에 레플리카 승격, 데이터 무손실), 그리고 죽은 노드가 레플리카로 자가 복구되어 3/3으로 돌아오기까지 — 전 과정을 실측 로그와 함께 기록
2026-07-11 · 9 분 읽기 #cloudnativepg#postgresql#kubernetes#operator#databaseKubeVirt GPU 패스스루 VM은 왜 112일간 스케줄되지 못했나 — 실제 클러스터 부검
Rust 오퍼레이터가 "GPU 노드 4개 전부 NotReady"라는 진단을 내린 뒤, 그 죽음의 원인을 실제 8노드 클러스터(GPU Operator v25.3.0, KubeVirt v1.7.0)에서 끝까지 추적했습니다. gpu-fedora와 rhel9-gpu-vm이 112일간 ErrorUnschedulable로 멈춰 있던 진짜 이유는 화려한 GPU 설정이 아니라 kubelet 한 줄 에러 —
2026-07-11 · 8 분 읽기 #kubevirt#gpu#kubernetes#nvidia#devopsRust로 쿠버네티스 GPU 오퍼레이터 만들기 — kube-rs로 실제 클러스터를 진단하다
8노드 실운영 홈랩 클러스터(k8s v1.32.5)를 상대로, kube-rs를 써서 GPU 오퍼레이터를 Rust로 직접 만들어 돌렸습니다. GpuInventory 커스텀 리소스를 정의하고, 두 개의 컨트롤러(노드 스캔→CR 상태 기록, 노드 감시→ConfigMap 갱신)를 한 바이너리로 띄워 클러스터 밖에서 실행했습니다. 그리고 오퍼레이터가 실제로 뱉은 결과 — GPU 노드 4개 중 Read
2026-07-11 · 10 분 읽기 #rust#kubernetes#operator#gpu#kube-rsGPU Operator × KubeVirt 총정리 — 구성요소·설정·버전, 부분 MIG와 수동 MIG까지
쿠버네티스 GPU 인프라의 두 기둥을 한 장에 정리합니다. GPU Operator의 오퍼랜드 구성과 ClusterPolicy 설정, 버전 체계와 함께, 노드의 일부 GPU에만 MIG를 적용하는 커스텀 설정과 nvidia-smi로 MIG를 수동 생성·삭제하는 방법을 다루고, VM을 쿠버네티스에서 돌리는 KubeVirt의 4대 컴포넌트(virt-operator·controller·handler·
2026-07-09 · 14 분 읽기 #kubernetes#gpu#kubevirt#mig#nvidiaNVIDIA GPU Operator 완전 정복 — 설치·배포부터 MIG 분할 설정까지
쿠버네티스에서 GPU 노드를 손으로 셋업하는 시대는 끝났습니다. NVIDIA GPU Operator가 드라이버부터 디바이스 플러그인, 모니터링까지 전부 오퍼레이터 패턴으로 관리하는 원리와 Helm 설치·검증 방법, 그리고 A100/H100 한 장을 하드웨어 격리된 여러 GPU로 쪼개 쓰는 MIG의 개념·single/mixed 전략·노드 라벨 기반 설정·커스텀 프로필·운영 주의사항까지, 실제
2026-07-07 · 15 분 읽기 #kubernetes#gpu#nvidia#mig#devops쿠버네티스 아키텍처 시각화 — 컨트롤 플레인부터 파드까지
쿠버네티스의 아키텍처를 컨트롤 플레인과 노드 구성요소, 오브젝트와 컨트롤러 루프, 스케줄링 흐름, 네트워킹과 스토리지까지 ASCII 다이어그램으로 풀어냅니다. 요청 처리와 파드 생성 시퀀스를 단계별로 시각화하며, 버전별 차이가 있을 수 있는 부분은 일반화합니다.
2026-06-27 · 19 분 읽기 #kubernetes#architecture#control-plane#scheduling#networkingRust로 쿠버네티스 Operator 만들기 (kube-rs)
쿠버네티스 Operator는 운영 지식을 코드로 옮긴 컨트롤러입니다. 이 글은 Operator 패턴(CRD + 컨트롤러 + reconcile 루프)의 원리부터 kube-rs로 실제 오퍼레이터를 만드는 법까지 다룹니다. CustomResource 파생 매크로로 CRD 정의, Api와 Controller, watcher, reconcile 함수와 requeue, 파이널라이저(finalizer)로
2026-06-25 · 22 분 읽기 #rust#kubernetes#operator#kube-rsDB 마이그레이션 자동화 — CI/CD와 GitOps로 스키마를 코드처럼
스키마 변경을 손으로 적용하던 시대는 끝났습니다. 마이그레이션을 파이프라인에 통합해 PR에서 린트하고 드라이런하며, 환경별로 자동 적용하고, 드리프트를 감지하고, 롤백까지 자동화하는 전체 그림을 GitHub Actions와 Flyway/Liquibase/Atlas 예제로 정리합니다.
2026-06-16 · 25 분 읽기 #database#migration#cicd#gitops#flywayOperator vs Helm vs GitOps — 무엇을 언제 쓰나
같은 듯 다른 세 가지 운영 도구를 본질부터 구분합니다. Helm은 패키징, GitOps는 선언적 동기화, Operator는 능동적 컨트롤러입니다. 정적 배포와 지속적 reconcile의 차이, Day-1과 Day-2의 경계, 셋을 조합하는 실전 패턴, 의사결정 테이블과 마이그레이션 경로까지 깊이 있게 다룹니다.
2026-06-15 · 35 분 읽기 #kubernetes#operator#helm#gitops#argocdOperator 보안 — 최소권한 RBAC, 멀티테넌시, 공급망
Operator는 클러스터 전역에서 강력한 권한으로 동작하기 때문에 한 번 탈취되면 클러스터 전체가 위험해집니다. RBAC 마커로 최소권한을 생성하는 방법, Role과 ClusterRole 선택 기준, kube-rbac-proxy 제거 이후의 메트릭 보안, 웹훅 TLS, 권한 상승 방지, 멀티테넌시 격리, 이미지 서명과 SBOM, Secret 처리와 감사까지 Operator 보안 전반을 깊이
2026-06-15 · 38 분 읽기 #kubernetes#operator#rbac#security#supply-chainOperator 관측성 — 메트릭, 이벤트, 로깅, 그리고 SLO
Kubebuilder 기반 Operator의 관측성을 메트릭, 이벤트, 로깅, 트레이싱, status/conditions, 그리고 SLO 관점에서 깊이 있게 다룹니다. controller-runtime 기본 메트릭의 의미부터 커스텀 메트릭 추가, Prometheus/Grafana 연동, 알림 규칙, 그리고 reconcile가 동작하지 않을 때의 디버깅 런북까지 실무 코드와 함께 정리합니다.
2026-06-15 · 32 분 읽기 #kubernetes#operator#observability#prometheus#controller-runtimeCRD 설계와 버저닝 — 스키마, 검증, conversion webhook
CustomResourceDefinition은 한 번 설계하면 오래 살아남는 API 계약입니다. OpenAPI v3 스키마 설계와 CEL 검증, 다중 버전 전략과 storage version, conversion webhook 구현, 하위호환과 마이그레이션까지 운영 가능한 CRD를 만드는 전 과정을 깊이 있게 다룹니다.
2026-06-15 · 27 분 읽기 #kubernetes#operator#crd#versioning#conversion-webhookCRD 없는 컨트롤러 — 기존 리소스를 자동화하는 패턴
모든 자동화에 CRD가 필요한 것은 아닙니다. 빌트인 리소스를 watch하는 컨트롤러만으로 ConfigMap/Secret 동기화, 네임스페이스 부트스트랩, 노드 라벨링 같은 사내 운영을 자동화할 수 있습니다. controller-runtime로 CRD 없이 구현하는 코드, Operator와 단순 컨트롤러의 구분, admission webhook 정책, 그리고 권한과 루프 같은 함정을 다룹니다
2026-06-15 · 23 분 읽기 #kubernetes#controller#controller-runtime#automation#client-goOperator 프로덕션 업그레이드와 마이그레이션 — 무중단으로 진화시키기
Operator를 프로덕션에서 안전하게 업그레이드하는 전체 흐름을 다룹니다. 컨트롤러 Deployment 롤링과 리더 선출, 다중 버전 CRD와 conversion webhook, 관리 워크로드의 단계적 롤아웃, 롤백 전략, 대규모 CR 마이그레이션, 그리고 장애 대응까지 working code와 함께 정리했습니다.
2026-06-15 · 36 분 읽기 #kubernetes#operator#kubebuilder#controller-runtime#crdReconcile 루프 심화 — 멱등성, 에러 처리, 큐, 그리고 성능
reconcile 요청 흐름(informer→workqueue→reconcile), Result와 requeue, 멱등 구현 패턴, status와 conditions, predicate 이벤트 필터, rate limiting과 동시성, 캐시와 클라이언트, 관측, 흔한 버그, 성능 튜닝까지 reconcile 루프를 깊이 있게 해부합니다.
2026-06-15 · 33 분 읽기 #kubernetes#operator#reconcile#controller-runtime#performanceGo 말고도 — Kopf, Metacontroller, Shell Operator로 Operator 만들기
Operator는 반드시 Go와 kubebuilder로 만들어야 한다는 통념을 깹니다. Python의 Kopf, 선언적 훅 방식의 Metacontroller, shell-operator와 Ansible Operator까지 비-Go 선택지를 코드와 함께 비교합니다. 프로토타이핑과 프로덕션의 경계, 언어 선택 기준, 마이그레이션, 생태계 성숙도와 함정을 다룹니다.
2026-06-15 · 35 분 읽기 #kubernetes#operator#kopf#metacontroller#pythonOperator 베스트 프랙티스와 안티패턴
좋은 Operator의 특징과 흔한 안티패턴을 코드 수준에서 정리합니다. 작은 API와 멱등 reconcile, 관측 가능성, 안전한 업그레이드 같은 원칙부터 부수효과 남발·status 오용·무한 requeue·광범위 RBAC 같은 함정, 멀티테넌시와 보안, 리소스 효율, 테스트 문화, SRE 관점 운영, 성숙도 로드맵과 체크리스트까지 다룹니다.
2026-06-15 · 25 분 읽기 #kubernetes#operator#best-practices#reconcile#rbacKubebuilder로 첫 Operator 만들기 — 프로젝트 생성부터 배포까지
Kubebuilder로 실제 동작하는 Operator를 처음부터 끝까지 만듭니다. 사전 준비, init/create api 흐름, API 타입 정의, Deployment·Service를 조정하는 reconcile 전체 코드, RBAC 마커, CRD 생성, 로컬 실행과 클러스터 배포, 테스트 개념, 흔한 실수까지 다룹니다.
2026-06-15 · 16 분 읽기 #kubernetes#kubebuilder#operator#controller-runtime#goOperator 테스트와 배포 — envtest, e2e, OLM, 번들 패키징
Kubernetes Operator를 안전하게 테스트하고 배포하는 방법을 다룹니다. 테스트 피라미드(unit reconcile·envtest·e2e)부터 OLM의 CSV·번들·카탈로그, 업그레이드 그래프, 최소권한 RBAC, 멀티테넌트 설치 모드, 프로덕션 체크리스트까지 코드와 함께 정리합니다.
2026-06-15 · 25 분 읽기 #kubernetes#operator#testing#envtest#olmOperator로 만들 수 있는 것들 — 실전 사례 카탈로그
Operator가 빛나는 영역을 데이터베이스부터 메시징, 캐시, 모니터링, 인증서, 시크릿, GitOps, 백업, 서비스메시, ML까지 카탈로그로 정리합니다. 각 사례의 동작 원리와 대표 CRD 예시, 무엇을 자동화하는지 비교 테이블, 직접 만들 만한 사내 Operator 아이디어 10선, 그리고 만들 가치를 판단하는 기준까지 한 번에 훑습니다.
2026-06-15 · 21 분 읽기 #kubernetes#operator#crd#cncf#platform-engineering