問題タブ [operator-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - オペレータ コントローラは相関リソースを削除できませんでした
Kubernetes と Operator-sdk では、CRD (Custom Resource Definition) と CR (Custom Resource) を定義できます。オペレーター コントローラーでは、CR が初期化されると、新しい展開とサービスを作成します。
CR オブジェクトを削除すると、関連するリソース (デプロイやサービスなど) も同時に削除されます。CR
またはファイナライザーで行う必要があることは理解していますがCRD
、これは私の推測です。
オペレーターのテスト中にenvTest
環境下で問題が発生しました。 を削除するCR
と、関連するリソース (デプロイまたはサービス) が削除されません。
私は混乱しています。ではreal k8s cluster
、 を削除すると、関連付けられたリソース (展開またはサービス) が自動的に削除されることがあります。CR
で、関連付けられたリソースが削除されenvTest environment
ないのはなぜですか?
誰か理由を指摘してくれませんか。
rest - Kubernetes REST API が不可欠な理由
編集: Jonas の応答で述べたように、Kubernetes REST API は実際には宣言型であり、必須ではないと見なすことができます。
Kubernetes は、その宣言型モデルでよく知られています。コントローラーは、目的の状態 (宣言型) を含む ETCD 内のオブジェクトを監視しています。それを現在の状態と比較し、命令型 Kubernetes API への命令型コマンドを生成します。
Kubernetes プロジェクトが宣言型 HTTP API を公開しない理由は何ですか?
したがって、コントローラー/オペレーターに調整を行わせます。
私が見つけた宣言型 REST API の例はF5 AS3です。そして、この宣言型 API の上に構築されたKubernetes オペレーターは非常に単純だと思います。