第12章 リソースのスケジューリング
taint と toleration は、どのノードに特定の Pod を配置するかを制御するのに役立ちます。Network Observability コンポーネントの配置を制御するには、これらの手段をノードセレクターとともに使用します。
ノードセレクターは、ノードのカスタムラベルと Pod で指定されたセレクターを使用して定義されるキー/値のペアのマップを指定します。
Pod がノードで実行する要件を満たすには、Pod にはノードのラベルと同じキー/値のペアがなければなりません。
12.1. 特定のノードにおける Network Observability デプロイメント リンクのコピーリンクがクリップボードにコピーされました!
FlowCollector を設定して、特定のノードにおける Network Observability コンポーネントのデプロイメントを制御できます。spec.agent.ebpf.advanced.scheduling、spec.processor.advanced.scheduling、および spec.consolePlugin.advanced.scheduling 仕様で、次の設定が可能です。
-
NodeSelector -
Tolerations -
Affinity -
PriorityClassName
spec.<component>.advanced.scheduling のサンプル FlowCollector リソース
apiVersion: flows.netobserv.io/v1beta2
kind: FlowCollector
metadata:
name: cluster
spec:
# ...
advanced:
scheduling:
tolerations:
- key: "<taint key>"
operator: "Equal"
value: "<taint value>"
effect: "<taint effect>"
nodeSelector:
<key>: <value>
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: name
operator: In
values:
- app-worker-node
priorityClassName: """
# ...