10.7. Kafka 리스너 인증서


TLS 암호화가 활성화된 모든 리스너에 대한 자체 서버 인증서 및 개인 키를 제공할 수 있습니다. 이러한 사용자 제공 인증서를 Kafka 리스너 인증서 라고 합니다.

Kafka 리스너 인증서를 제공하면 조직의 개인 CA 또는 공용 CA와 같은 기존 보안 인프라를 활용할 수 있습니다. Kafka 클라이언트는 리스너 인증서에 서명하는 데 사용된 CA를 신뢰해야 합니다.

필요한 경우 Kafka 리스너 인증서를 수동으로 갱신해야 합니다.

10.7.1. 자체 Kafka 리스너 인증서 제공

다음 절차에서는 Kafka 리스너 인증서라는 고유한 개인 키와 서버 인증서를 사용하도록 리스너 를 구성하는 방법을 보여줍니다.

클라이언트 애플리케이션은 Kafka 브로커의 ID를 확인하기 위해 CA 공개 키를 신뢰할 수 있는 인증서로 사용해야 합니다.

사전 요구 사항

  • OpenShift 클러스터입니다.
  • Cluster Operator가 실행 중입니다.
  • 각 리스너에 대해 외부 CA에서 서명한 호환 서버 인증서입니다.

절차

  1. 개인 키와 서버 인증서가 포함된 보안을 생성합니다.

    oc create secret generic my-secret --from-file=my-listener-key.key --from-file=my-listener-certificate.crt
    Copy to Clipboard Toggle word wrap
  2. 클러스터의 Kafka 리소스를 편집합니다. configuration.brokerCertAndKey 속성에서 Secret, 인증서 파일 및 개인 키 파일을 사용하도록 리스너를 구성합니다.

    TLS 암호화가 활성화된 로드 밸런서 외부 리스너 구성 예

    # ...
    listeners:
      - name: plain
        port: 9092
        type: internal
        tls: false
      - name: external
        port: 9094
        type: loadbalancer
        tls: true
        authentication:
          type: tls
        configuration:
          brokerCertChainAndKey:
            secretName: my-secret
            certificate: my-listener-certificate.crt
            key: my-listener-key.key
    # ...
    Copy to Clipboard Toggle word wrap

    TLS 리스너 구성 예

    # ...
    listeners:
      - name: plain
        port: 9092
        type: internal
        tls: false
      - name: tls
        port: 9093
        type: internal
        tls: true
        authentication:
          type: tls
        configuration:
          brokerCertChainAndKey:
            secretName: my-secret
            certificate: my-listener-certificate.crt
            key: my-listener-key.key
    # ...
    Copy to Clipboard Toggle word wrap

  3. 새 구성을 적용하여 리소스를 생성하거나 업데이트합니다.

    oc apply -f kafka.yaml
    Copy to Clipboard Toggle word wrap

    Cluster Operator는 Kafka 클러스터의 롤링 업데이트를 시작하여 리스너 구성을 업데이트합니다.

    참고

    TLS 또는 외부 리스너에서 이미 사용하고 있는 Secret 에서 Kafka 리스너 인증서를 업데이트하는 경우에도 롤링 업데이트가 시작됩니다.

10.7.2. Kafka 리스너에 대한 서버 인증서의 대체 대상

자체 Kafka 리스너 인증서와 함께 TLS 호스트 이름 확인을 사용하려면 각 리스너 에 올바른 주체 대체 이름(SAN)을 사용해야 합니다. 인증서 SAN은 다음의 호스트 이름을 지정해야 합니다.

  • 클러스터의 모든 Kafka 브로커
  • Kafka 클러스터 부트스트랩 서비스

CA에서 지원하는 와일드카드 인증서를 사용할 수 있습니다.

10.7.2.1. TLS 리스너 SAN 예

다음 예제를 사용하면 TLS 리스너에 대한 인증서에 SAN의 호스트 이름을 지정하는 데 도움이 됩니다.

와일드카드 예

//Kafka brokers
*.<cluster-name>-kafka-brokers
*.<cluster-name>-kafka-brokers.<namespace>.svc

// Bootstrap service
<cluster-name>-kafka-bootstrap
<cluster-name>-kafka-bootstrap.<namespace>.svc
Copy to Clipboard Toggle word wrap

와일드카드가 아닌 예

// Kafka brokers
<cluster-name>-kafka-0.<cluster-name>-kafka-brokers
<cluster-name>-kafka-0.<cluster-name>-kafka-brokers.<namespace>.svc
<cluster-name>-kafka-1.<cluster-name>-kafka-brokers
<cluster-name>-kafka-1.<cluster-name>-kafka-brokers.<namespace>.svc
# ...

// Bootstrap service
<cluster-name>-kafka-bootstrap
<cluster-name>-kafka-bootstrap.<namespace>.svc
Copy to Clipboard Toggle word wrap

10.7.2.2. 외부 리스너 SAN 예

TLS 암호화가 활성화된 외부 리스너의 경우 인증서에 지정해야 하는 호스트 이름은 외부 리스너 유형에 따라 다릅니다.

Expand
표 10.15. 각 유형의 외부 리스너에 대한 Sans
외부 리스너 유형SAN에서…​을 지정합니다.

경로

모든 Kafka 브로커 경로 의 주소 및 부트스트랩 경로 의 주소입니다.

일치하는 와일드카드 이름을 사용할 수 있습니다.

loadbalancer

모든 Kafka 브로커 로드 밸런서 및 부트스트랩 로드 밸런서 주소의 주소입니다.

일치하는 와일드카드 이름을 사용할 수 있습니다.

NodePort

Kafka 브로커 Pod를 예약할 수 있는 모든 OpenShift 작업자 노드의 주소입니다.

일치하는 와일드카드 이름을 사용할 수 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동