55.4. brokerCapacity
Cruise Control は、容量制限を使用して、リソース容量制限の最適化目標が破られているかどうかを判断します。このタイプには 4 つのゴールがあります。
-
DiskCapacityGoal
- ディスク使用率容量 -
CpuCapacityGoal
- CPU 使用率容量 -
NetworkInboundCapacityGoal
- ネットワークインバウンド利用容量 -
NetworkOutboundCapacityGoal
- ネットワークの送信利用容量
Kafka ブローカーリソースの容量制限は、Kafka.spec.cruiseControl
の brokerCapacity
プロパティーに指定します。これらはデフォルトで有効になっており、デフォルト値を変更できます。容量制限は、以下のブローカーリソースに設定できます。
-
cpu
- ミリコアまたは CPU コアの CPU リソース (デフォルト: 1) -
inboundNetwork
: バイト毎秒単位のインバウンドネットワークスループット (デフォルトは 10000 KiB/s) -
outboundNetwork
: バイト毎秒単位のアウトバウンドネットワークスループット (デフォルトは 10000 KiB/s)
ネットワークスループットの場合、1 秒あたりの標準の OpenShift バイト単位 (K、M、G) またはそれに相当するビバイト (2 の累乗)(Ki、Mi、Gi) の整数値を使用します。
ディスクと CPU の容量制限は、Streams for Apache Kafka によって自動的に生成されるため、設定する必要はありません。CPU ゴールを使用するときに正確なリバランスの提案を保証するために、Kafka.spec.kafka.resources
で CPU リクエストを CPU 制限と同じに設定できます。これにより、すべての CPU リソースが事前に予約され、常に利用できます。この設定を使用すると、CPU 目標に基づいてリバランス提案を準備するときに Cruise Control が CPU 使用率を適切に評価できます。Kafka.spec.kafka.resources
の CPU 制限と同じ CPU 要求を設定できない場合は、CPU 容量を手動で設定して同じ精度にすることができます。
bibyte 単位での Cruise Control brokerCapacity の設定例
apiVersion: kafka.strimzi.io/v1beta2 kind: Kafka metadata: name: my-cluster spec: # ... cruiseControl: # ... brokerCapacity: cpu: "2" inboundNetwork: 10000KiB/s outboundNetwork: 10000KiB/s # ...