55.4. brokerCapacity
cruise Control은 용량 제한을 사용하여 리소스 용량 제한에 대한 최적화 목표를 분류하고 있는지 확인합니다. 이 유형의 목표는 다음 네 가지가 있습니다.
-
DiskCapacityGoal
- 디스크 사용률 용량 -
CpuCapacityGoal
- CPU 사용률 용량 -
NetworkInboundCapacityGoal
- 네트워크 인바운드 사용 용량 -
NetworkOutboundCapacityGoal
- 네트워크 아웃 바운드 사용 용량
Kafka.spec.cruiseControl
의 brokerCapacity
속성에서 Kafka 브로커 리소스에 대한 용량 제한을 지정합니다. 기본적으로 활성화되어 있으며 기본값을 변경할 수 있습니다. 다음 브로커 리소스에 대해 용량 제한을 설정할 수 있습니다.
-
cpu
- 밀리코어 또는 CPU 코어의 CPU 리소스(기본값: 1) -
inboundNetwork
- 초당 바이트 단위로 인바운드 네트워크 처리량 (기본값: 10000KiB/s) -
outboundNetwork
- 초당 바이트 단위의 아웃 바운드 네트워크 처리량 (기본값: 10000KiB/s)
네트워크 처리량의 경우 표준 OpenShift 바이트 단위(K, M, G) 또는 초당 동등한 두 개의 백바이트(Ki, Mi, Gi)가 있는 정수 값을 사용합니다.
디스크 및 CPU 용량 제한은 Apache Kafka용 Streams에서 자동으로 생성되므로 설정할 필요가 없습니다. CPU 목표를 사용할 때 정확한 리밸런스 제안을 보장하기 위해 Kafka.spec.kafka.resources
의 CPU 제한과 동일한 CPU 요청을 설정할 수 있습니다. 이렇게 하면 모든 CPU 리소스가 미리 예약되며 항상 사용할 수 있습니다. 이 구성을 통해 Cruise Control은 CPU 목표를 기반으로 리밸런스 제안을 준비할 때 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 # ...