0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Kubernetesのカスタムコントローラーを開発するためのツール

Posted at

概要

Kubernetesのカスタムコントローラーを開発するためのツールを調べる

前提知識

オペレーター ≒ カスタムリソース + カスタムコントローラー
https://kubernetes.io/ja/docs/concepts/extend-kubernetes/operator/

調査対象の選定

KubebuilderとOperator SDKがよく使われていそう
https://kubernetes.io/ja/docs/concepts/extend-kubernetes/operator/#writing-operator

Kubebuilderの使い方

$ brew install kubebuilder
$ kubebuilder init --domain my.domain --repo my.domain/guestbook
$ kubebuilder create api --group webapp --version v1 --kind Guestbook
$ make manifests install run

Operator SDKの使い方

$ brew install operator-sdk
$ operator-sdk init --domain example.com --repo github.com/example/memcached-operator
$ operator-sdk create api --group cache --version v1alpha1 --kind Memcached
$ make manifests install run

KubebuilderとOperator SDKの比較

  • Operator SDKがKubebuilderをライブラリとして使用している
  • 初期化のコマンドや生成されるコードはほぼ同じ
  • Operator SDKはより複雑なことができる
  • Operator SDKはOperator Lifecycle Managerと組み合わせて使える

まとめ

まずはKubebuilderを使ってみるのが良さそう
複数のコントローラーを運用する場合などではOperator SDKの使用を検討すると良さそう

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?