
  <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
      <title>Chaos and Order</title>
      <link>https://www.youngju.dev/blog</link>
      <description>천천히 올바르게. AI Researcher &amp; DevOps Engineer Youngju&#39;s tech blog. GPU/CUDA, LLM, MLOps, Kubernetes AI workloads, distributed training, and data engineering.</description>
      <language>ko</language>
      <managingEditor>fjvbn2003@gmail.com (Youngju Kim)</managingEditor>
      <webMaster>fjvbn2003@gmail.com (Youngju Kim)</webMaster>
      <lastBuildDate>Mon, 15 Jun 2026 00:00:00 GMT</lastBuildDate>
      <atom:link href="https://www.youngju.dev/tags/controller-runtime/feed.xml" rel="self" type="application/rss+xml"/>
      
  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-building-database-operator-walkthrough.en</guid>
    <title>Building a Database Operator — Backup, Failover, and Scale as Code</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-building-database-operator-walkthrough.en</link>
    <description>A code-driven walkthrough of solving the hard parts of stateful database operations with a reconcile loop. We cover CR spec design, reconciling StatefulSet/Service/PVC, periodic backups, failover and leader-election concepts, sequential rolling upgrades, exposing health via status, and observability. We reference existing Operators while weighing the trade-offs and pitfalls of building your own.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>database</category><category>kubebuilder</category><category>controller-runtime</category><category>statefulset</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-building-database-operator-walkthrough.ja</guid>
    <title>データベースOperatorを作る — バックアップ・フェイルオーバー・スケールをコードで</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-building-database-operator-walkthrough.ja</link>
    <description>ステートフルなデータベース運用の難しさをreconcileループで解いていく過程をコードで追います。CRスペック設計からStatefulSet・Service・PVCの調整、定期バックアップ、フェイルオーバーとリーダー選出の概念、順次ローリングアップグレード、statusによるヘルス公開と観測までを扱います。既存Operatorを参考にしつつ自作のトレードオフと落とし穴も押さえます。</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>database</category><category>kubebuilder</category><category>controller-runtime</category><category>statefulset</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-building-database-operator-walkthrough</guid>
    <title>데이터베이스 Operator 만들기 — 백업·페일오버·스케일을 코드로</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-building-database-operator-walkthrough</link>
    <description>스테이트풀 데이터베이스 운영의 어려움을 reconcile 루프로 풀어내는 과정을 코드로 따라갑니다. CR 스펙 설계부터 StatefulSet·Service·PVC 조정, 주기적 백업, 페일오버와 리더 선출 개념, 순차 롤링 업그레이드, status 헬스 노출과 관측까지 다룹니다. 기성 Operator를 참고하되 직접 구현의 트레이드오프와 함정도 짚습니다.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>database</category><category>kubebuilder</category><category>controller-runtime</category><category>statefulset</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubebuilder-first-operator-tutorial.en</guid>
    <title>Building Your First Operator with Kubebuilder — From Project Creation to Deployment</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubebuilder-first-operator-tutorial.en</link>
    <description>Build a working Operator end to end with Kubebuilder. Covers prerequisites, the init/create api flow, defining API types, the full reconcile code that manages a Deployment and Service, RBAC markers, CRD generation, local run vs. cluster deploy, the testing concept, and common mistakes.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>kubebuilder</category><category>operator</category><category>controller-runtime</category><category>go</category><category>tutorial</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubebuilder-first-operator-tutorial.ja</guid>
    <title>Kubebuilder で初めての Operator を作る — プロジェクト作成からデプロイまで</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubebuilder-first-operator-tutorial.ja</link>
    <description>Kubebuilder で実際に動く Operator を最初から最後まで作ります。事前準備、init/create api の流れ、API 型の定義、Deployment と Service を調整する reconcile の全コード、RBAC マーカー、CRD 生成、ローカル実行とクラスターデプロイ、テストの概念、よくある間違いまで扱います。</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>kubebuilder</category><category>operator</category><category>controller-runtime</category><category>go</category><category>tutorial</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubebuilder-first-operator-tutorial</guid>
    <title>Kubebuilder로 첫 Operator 만들기 — 프로젝트 생성부터 배포까지</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubebuilder-first-operator-tutorial</link>
    <description>Kubebuilder로 실제 동작하는 Operator를 처음부터 끝까지 만듭니다. 사전 준비, init/create api 흐름, API 타입 정의, Deployment·Service를 조정하는 reconcile 전체 코드, RBAC 마커, CRD 생성, 로컬 실행과 클러스터 배포, 테스트 개념, 흔한 실수까지 다룹니다.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>kubebuilder</category><category>operator</category><category>controller-runtime</category><category>go</category><category>tutorial</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubernetes-controller-without-crd.en</guid>
    <title>Controllers Without CRDs — Patterns for Automating Existing Resources</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubernetes-controller-without-crd.en</link>
    <description>Not every automation needs a CRD. A controller that watches built-in resources alone can automate internal operations like ConfigMap/Secret sync, namespace bootstrap, and node labeling. We cover code that implements this with controller-runtime without a CRD, the distinction between an Operator and a simple controller, admission webhook policy, and pitfalls like permissions and loops.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>controller</category><category>controller-runtime</category><category>automation</category><category>client-go</category><category>platform-engineering</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubernetes-controller-without-crd.ja</guid>
    <title>CRD なしのコントローラ — 既存リソースを自動化するパターン</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubernetes-controller-without-crd.ja</link>
    <description>すべての自動化に CRD が必要なわけではありません。ビルトインリソースを watch するコントローラだけで、ConfigMap/Secret 同期、ネームスペースのブートストラップ、ノードラベリングといった社内運用を自動化できます。controller-runtime で CRD なしに実装するコード、Operator と単純コントローラの区別、admission webhook のポリシー、そして権限やループといった落とし穴を扱います。</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>controller</category><category>controller-runtime</category><category>automation</category><category>client-go</category><category>platform-engineering</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubernetes-controller-without-crd</guid>
    <title>CRD 없는 컨트롤러 — 기존 리소스를 자동화하는 패턴</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-kubernetes-controller-without-crd</link>
    <description>모든 자동화에 CRD가 필요한 것은 아닙니다. 빌트인 리소스를 watch하는 컨트롤러만으로 ConfigMap/Secret 동기화, 네임스페이스 부트스트랩, 노드 라벨링 같은 사내 운영을 자동화할 수 있습니다. controller-runtime로 CRD 없이 구현하는 코드, Operator와 단순 컨트롤러의 구분, admission webhook 정책, 그리고 권한과 루프 같은 함정을 다룹니다.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>controller</category><category>controller-runtime</category><category>automation</category><category>client-go</category><category>platform-engineering</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-observability-metrics-events.en</guid>
    <title>Operator Observability — Metrics, Events, Logging, and SLOs</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-observability-metrics-events.en</link>
    <description>A deep dive into observability for Kubebuilder-based Operators across metrics, events, logging, tracing, status/conditions, and SLOs. From the meaning of controller-runtime default metrics to adding custom metrics, wiring up Prometheus/Grafana, alerting rules, and a runbook for when reconcile is not running, all with practical code.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>observability</category><category>prometheus</category><category>controller-runtime</category><category>slo</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-observability-metrics-events.ja</guid>
    <title>Operator の可観測性 — メトリクス、イベント、ロギング、そして SLO</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-observability-metrics-events.ja</link>
    <description>Kubebuilder ベースの Operator の可観測性を、メトリクス、イベント、ロギング、トレーシング、status/conditions、そして SLO の観点から深く掘り下げます。controller-runtime のデフォルトメトリクスの意味から、カスタムメトリクスの追加、Prometheus/Grafana 連携、アラートルール、reconcile が動かないときのデバッグランブックまで、実践的なコードとともに整理します。</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>observability</category><category>prometheus</category><category>controller-runtime</category><category>slo</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-observability-metrics-events</guid>
    <title>Operator 관측성 — 메트릭, 이벤트, 로깅, 그리고 SLO</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-observability-metrics-events</link>
    <description>Kubebuilder 기반 Operator의 관측성을 메트릭, 이벤트, 로깅, 트레이싱, status/conditions, 그리고 SLO 관점에서 깊이 있게 다룹니다. controller-runtime 기본 메트릭의 의미부터 커스텀 메트릭 추가, Prometheus/Grafana 연동, 알림 규칙, 그리고 reconcile가 동작하지 않을 때의 디버깅 런북까지 실무 코드와 함께 정리합니다.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>observability</category><category>prometheus</category><category>controller-runtime</category><category>slo</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-reconcile-loop-deep-dive.en</guid>
    <title>The Reconcile Loop in Depth — Idempotency, Error Handling, Queues, and Performance</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-reconcile-loop-deep-dive.en</link>
    <description>A deep dissection of the reconcile loop: the request flow (informer to workqueue to reconcile), Result and requeue, idempotency patterns, status and conditions, predicate event filters, rate limiting and concurrency, cache vs. client, observability, common bugs, and performance tuning.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>reconcile</category><category>controller-runtime</category><category>performance</category><category>cloud-native</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-reconcile-loop-deep-dive.ja</guid>
    <title>Reconcile ループ深掘り — 冪等性、エラー処理、キュー、そして性能</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-reconcile-loop-deep-dive.ja</link>
    <description>reconcile リクエストの流れ(informer→workqueue→reconcile)、Result と requeue、冪等実装パターン、status と conditions、predicate によるイベントフィルタ、レート制限と並行性、キャッシュとクライアント、観測、よくあるバグ、性能チューニングまで reconcile ループを深く解剖します。</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>reconcile</category><category>controller-runtime</category><category>performance</category><category>cloud-native</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-reconcile-loop-deep-dive</guid>
    <title>Reconcile 루프 심화 — 멱등성, 에러 처리, 큐, 그리고 성능</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-reconcile-loop-deep-dive</link>
    <description>reconcile 요청 흐름(informer→workqueue→reconcile), Result와 requeue, 멱등 구현 패턴, status와 conditions, predicate 이벤트 필터, rate limiting과 동시성, 캐시와 클라이언트, 관측, 흔한 버그, 성능 튜닝까지 reconcile 루프를 깊이 있게 해부합니다.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>reconcile</category><category>controller-runtime</category><category>performance</category><category>cloud-native</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-upgrade-migration-production.en</guid>
    <title>Production Operator Upgrades and Migration — Evolving Without Downtime</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-upgrade-migration-production.en</link>
    <description>A complete walkthrough of safely upgrading an Operator in production. It covers rolling the controller Deployment with leader election, multi-version CRDs and conversion webhooks, phased rollout of managed workloads, rollback strategy, large-scale CR migration, and incident response, all with working code.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>kubebuilder</category><category>controller-runtime</category><category>crd</category><category>production</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-upgrade-migration-production.ja</guid>
    <title>Operator の本番アップグレードとマイグレーション — 無停止で進化させる</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-upgrade-migration-production.ja</link>
    <description>Operator を本番環境で安全にアップグレードする全体の流れを解説します。リーダー選出を伴うコントローラ Deployment のローリング、マルチバージョン CRD と conversion webhook、管理ワークロードの段階的ロールアウト、ロールバック戦略、大規模 CR マイグレーション、障害対応までを動作するコードとともにまとめました。</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>kubebuilder</category><category>controller-runtime</category><category>crd</category><category>production</category>
  </item>

  <item>
    <guid>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-upgrade-migration-production</guid>
    <title>Operator 프로덕션 업그레이드와 마이그레이션 — 무중단으로 진화시키기</title>
    <link>https://www.youngju.dev/blog/kubernetes/2026-06-15-operator-upgrade-migration-production</link>
    <description>Operator를 프로덕션에서 안전하게 업그레이드하는 전체 흐름을 다룹니다. 컨트롤러 Deployment 롤링과 리더 선출, 다중 버전 CRD와 conversion webhook, 관리 워크로드의 단계적 롤아웃, 롤백 전략, 대규모 CR 마이그레이션, 그리고 장애 대응까지 working code와 함께 정리했습니다.</description>
    <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    <author>fjvbn2003@gmail.com (Youngju Kim)</author>
    <category>kubernetes</category><category>operator</category><category>kubebuilder</category><category>controller-runtime</category><category>crd</category><category>production</category>
  </item>

    </channel>
  </rss>
