第10章 イベント設定のチューニング
10.1. Knative Eventing システムのデプロイメント設定のオーバーライド リンクのコピーリンクがクリップボードにコピーされました!
KnativeEventing カスタムリソース (CR) の deployments 仕様を変更することで、特定のデプロイメントのデフォルト設定を上書きできます。現在、デフォルトの構成設定のオーバーライドは、eventing-controller、eventing-webhook、および imc-controller フィールド、およびプローブの readiness フィールドと liveness フィールドでサポートされています。
replicas の仕様は、Horizontal Pod Autoscaler (HPA) を使用するデプロイのレプリカの数をオーバーライドできず、eventing-webhook デプロイでは機能しません。
デフォルトでデプロイメントに定義されているプローブのみをオーバーライドできます。
Knative Serving デプロイメントはすべて、以下の例外を除き、デフォルトで readiness および liveness プローブを定義します。
-
net-kourier-controllerおよび3scale-kourier-gatewayは readiness プローブのみを定義します。 -
net-istio-controllerおよびnet-istio-webhookはプローブを定義しません。
10.1.1. デプロイメント設定のオーバーライド リンクのコピーリンクがクリップボードにコピーされました!
現在、デフォルトの構成設定のオーバーライドは、eventing-controller、eventing-webhook、および imc-controller フィールド、およびプローブの readiness フィールドと liveness フィールドでサポートされています。
replicas の仕様は、Horizontal Pod Autoscaler (HPA) を使用するデプロイのレプリカの数をオーバーライドできず、eventing-webhook デプロイでは機能しません。
次の例では、KnativeEventing CR が eventing-controller デプロイメントをオーバーライドして、次のようにします。
-
readinessプローブのタイムアウトeventing-controllerは 10 秒に設定されています。 - デプロイメントには、CPU およびメモリーのリソース制限が指定されています。
- デプロイメントには 3 つのレプリカがあります。
-
example-label:labellabelが追加されました。 -
example-annotation: annotationが追加されます。 -
nodeSelectorフィールドは、disktype: hddラベルを持つノードを選択するように設定されます。
KnativeEventing CR の例
apiVersion: operator.knative.dev/v1beta1
kind: KnativeEventing
metadata:
name: knative-eventing
namespace: knative-eventing
spec:
deployments:
- name: eventing-controller
readinessProbes:
- container: controller
timeoutSeconds: 10
resources:
- container: eventing-controller
requests:
cpu: 300m
memory: 100Mi
limits:
cpu: 1000m
memory: 250Mi
replicas: 3
labels:
example-label: label
annotations:
example-annotation: annotation
nodeSelector:
disktype: hdd
- 1
readinessおよびlivenessプローブオーバーライドを使用して、プローブハンドラーに関連するフィールド (exec、grpc、httpGet、およびtcpSocket) を除き、Kubernetes API で指定されているデプロイメントのコンテナー内のプローブのすべてのフィールドをオーバーライドできます。
KnativeEventing CR ラベルおよびアノテーション設定は、デプロイメント自体と結果として生成される Pod の両方のデプロイメントのラベルおよびアノテーションを上書きします。