2장. 관리 브로커 구성

OpenShift에 AMQ Streams를 배포할 때 Kafka 사용자 정의 리소스의 config 속성을 통해 브로커 구성을 지정합니다. 그러나 특정 브로커 구성 옵션은 AMQ Streams에 의해 직접 관리됩니다.

따라서 OpenShift에서 AMQ Streams를 사용하는 경우 다음 옵션을 구성할 수 없습니다.

  • Kafka 브로커의 ID를 지정하는 broker.id
  • 로그 데이터의 log.dirs 디렉터리
  • zookeeper.connect 구성: ZooKeeper와 Kafka를 연결
  • Kafka 클러스터를 클라이언트에 노출하는 리스너
  • 사용자가 실행하는 작업을 허용하거나 거부하기 위한 권한 부여 메커니즘
  • Kafka에 액세스해야 하는 사용자의 ID를 증명하는 인증 메커니즘

브로커 ID는 0(0)부터 시작하여 브로커 복제본 수에 해당합니다. 로그 디렉터리는 Kafka 사용자 정의 리소스의 spec.kafka.storage 구성에 따라 /var/lib/kafka/data/kafka-logIDX 에 마운트됩니다. IDX 는 Kafka 브로커 Pod 인덱스입니다.

제외 목록은 KafkaClusterSpec 스키마 참조 를 참조하십시오.

이러한 제외 사항은 RHEL에서 AMQ Streams를 사용할 때 적용되지 않습니다. 이 경우 브로커를 식별하고 안전한 액세스를 제공하기 위해 기본 브로커 구성에 이러한 속성을 추가해야 합니다.

RHEL에서 AMQ Streams에 대한 브로커 구성의 예

# ...
broker.id = 1
log.dirs = /var/lib/kafka
zookeeper.connect = zoo1.my-domain.com:2181,zoo2.my-domain.com:2181,zoo3.my-domain.com:2181
listeners = internal-1://:9092
authorizer.class.name = kafka.security.auth.SimpleAclAuthorizer
ssl.truststore.location = /path/to/truststore.jks
ssl.truststore.password = 123456
ssl.client.auth = required
# ...