SASL과 함께 사용하기 위해 M1에 node-rdkafka 설치

Node.js 앱에서 Kafka를 사용하는 경우 node-rdkafka 이 필요할 수 있습니다. 이것은 librdkafka 라이브러리를 래핑하고 Node.js에서 사용할 수 있도록 하는 라이브러리입니다. 프로젝트README에 따르면 "파티션 간 쓰기 균형 조정 및 브로커 관리(영구적으로 변경 가능)의 모든 복잡성은 라이브러리에 캡슐화되어야 합니다."

설치 단계는 사용 중인 시스템과 SASL/SSL(Simple Authentication and Security Layer) 지원이 필요한지 여부에 따라 다를 수 있습니다. 예를 들어 Confluent Cloud에 연결하는 경우 리소스를 보호하는 데 필요한 프로토콜이므로 이 프로토콜이 필요할 수 있습니다(docs 참조).

다음은 node-rdkafka 클라이언트를 M1(Apple이 특별히 Mac용으로 출시한 첫 번째 칩, article here )에 설치하는 방법에 대한 간단한 단계별 가이드입니다.

현재 22년 9월 30일 기준으로 수동으로 해야 합니다. confluent-kafka Python 클라이언트 README.md에서 다음을 수행할 수 있습니다find the reason why.

NOTE: The pre-built Linux wheels do NOT contain SASL Kerberos/GSSAPI support. If you need SASL Kerberos/GSSAPI support you must install librdkafka and its dependencies using the repositories below and then build confluent-kafka using the instructions in the "Install from source" section below.



다음은 SSL/SASL 지원을 위해 수행해야 하는 단계입니다(홈 디렉터리에서 실행).

git clone https://github.com/edenhill/librdkafka.git
cd ./librdkafka
./configure --install-deps --source-deps-only
make
sudo make install


그 다음에,
  • homebrew ~ install openssl을 사용합니다.
  • ./librdkafka에서 Node.js 프로젝트 디렉토리로 이동합니다.

  • openssl의 경로가 올바른지 확인하려면 다음 명령을 사용하여 이러한 변수를 내보냅니다.

    export CPPFLAGS=-I/opt/homebrew/opt/openssl@3/include
    export LDFLAGS=-L/opt/homebrew/opt/openssl@3/lib
    

  • openssl와 함께 npm install openssl 설치
  • 다음으로 node-rdkafka를 설치합니다. 이제 Node.js/Kafka 프로젝트에 대한 SSL 지원이 생겼습니다!

  • 이것이 도움이 되길 바랍니다! 여전히 문제가 발생하는 경우 Confluent Community에 도움 요청을 게시할 수 있습니다.

    좋은 웹페이지 즐겨찾기