つくって学ぶKubebuilder

本資料ではKubernetesを拡張するカスタムコントローラの実装を通して、Kubebuilderの利用方法やKubernetesプログラミングについて学びます。

Kubebuilderとは

Kubebuilderは、Kubernetesを拡張するためのカスタムコントローラや、Admission Webhookなどを開発するためのフレームワークです。

Kubernetes向けのカスタムコントローラは、Kubernetesが公式に提供しているkubernetes/client-goを利用するだけでも開発することができます。 しかしそのためにはKubernetesの設計コンセプトを正しく理解する必要があり、たくさんのマニフェストを記述する必要もあるため、それほど簡単ではありません。

そこでKubebuilderでは、client-goを使いやすく抽象化したライブラリと、マニフェストを自動生成するツール群を提供することで、簡単にカスタムコントローラを開発できるようになっています。

Kubebuilderは、下記のツールとライブラリから構成されています。

  • kubebuilder
    • カスタムコントローラのプロジェクトの雛形を生成するツール
  • controller-tools
    • Goのソースコードからマニフェストを生成するツール
  • controller-runtime
    • カスタムコントローラを実装するためのライブラリ

本資料ではカスタムコントローラをつくりながらこれらのツールの使い方を学んでいきます。

results matching ""

    No results matching ""