Operatorを使用したKnativeの設定¶
Operatorは、KnativeServing
およびKnativeEventing
カスタムリソースからシステムConfigMapに値を伝播させるなど、Knativeインストールの設定を管理します。
手動で適用されたConfigMapの更新は、Operatorによって上書きされます。ただし、Knativeカスタムリソースを変更することで、これらのConfigMapの値を設定できます。
Knativeには、プレフィックスconfig-
で名前付けされた複数のConfigMapがあります。
すべてのKnative ConfigMapは、適用されるカスタムリソースと同じ名前空間に作成されます。たとえば、KnativeServing
カスタムリソースがknative-serving
名前空間に作成されている場合、すべてのKnative Serving ConfigMapもこの名前空間に作成されます。
Knativeカスタムリソースのspec.config
には、config-<name>
という名前のConfigMapごとに1つの<name>
エントリがあり、ConfigMapのdata
に使用される値が含まれています。
例¶
KnativeServing
カスタムリソースがconfig-domain
ConfigMapを使用するように指定できます。
apiVersion: operator.knative.dev/v1beta1
kind: KnativeServing
metadata:
name: knative-serving
namespace: knative-serving
spec:
config:
domain:
example.org: |
selector:
app: prod
example.com: ""
複数のConfigMapに値を適用できます。この例では、config-autoscaler
ConfigMapでstable-window
を60sに設定し、config-domain
ConfigMapも指定しています。
apiVersion: operator.knative.dev/v1beta1
kind: KnativeServing
metadata:
name: knative-serving
namespace: knative-serving
spec:
config:
domain:
example.org: |
selector:
app: prod
example.com: ""
autoscaler:
stable-window: "60s"