このポストは GMOペパボエンジニア Advent Calendar 2020 の11日目の記事です。 最近業務や個人プロジェクトで Kubernetes Controller を書くことがたまにあり、 段々どう書いていけばいいかわかってきたので、書いていきます。 あまり使いこなせていない機能もあるため、自分の理解ベースでお話します。 Custom Controller とは? Kubernetes のリソースの変化に応じて、ワークロードに変更を適用したり、 その他任意の処理を実行するものを指します。 通常、Custom Resource Definition と同時に作成されることが多いです。 istio を試したことがある方は、kubectl get ingressgateway などを実行したことがあるでしょう。 ingressgateway に該当するものが Custom Reso