내가 SASL 인증을 사용하여 nodejs와 카프카의 생산자와 소비자를 만들기 위해 노력하고 있지만, 나는 거의 모든 시도 한 nodejs 카프카 패키지 중 하나에서 사용할 수없는 것 같다 그들 (노드 rdkafka, 카프카 노드, 노 카프카 ....)카프카 nodejs - SASL 인증으로 생산자와 소비자를 만드는 문제
는 노드 rdkafka와 옵션 아래에 시도하지만 외장의 위에 SASL
var Kafka = require('node-rdkafka');
var producer = Kafka.Producer({
'debug': 'all',
'metadata.broker.list': 'localhost:9092',
'security.protocol': 'sasl_plaintext',
'sasl.username': 'root',
'sasl.password': 'admin!',
'sasl.mechanisms': 'PLAIN',
});
// producer.connect();
producer.connect(null, (err, metadata) => {
console.log(metadata);
console.error(err);
console.log('Connected')
});
producer.on('ready', function() {
try {
producer.produce('topic1', null, new Buffer('Awesome'), null, Date.now())
} catch (err) {
console.log('A error occured')
}
});
// Any errors we encounter, including connection errors
producer.on('event.error', function(err) {
console.log('Error from producer');
console.log(err);
})
producer
.on('event.log', function(event) {
console.log(event)
const loggedEvent = {
severity: event.severity,
fac: event.fac
};
if (event.severity >= 7) {
console.log(loggedEvent, event.message);
} else if (event.severity === 6 || event.severity === 5) {
console.log(loggedEvent, event.message);
} else if (event.severity === 4) {
console.log(loggedEvent, event.message);
} else if (event.severity > 0) {
console.log(loggedEvent, event.message);
} else {
console.log(loggedEvent, event.message);
}
})
로 출판 MSG를 제작에 운이 없다 node-rdkafka에 대한 C++ 래퍼로 인한 노드 -gyp 및 도커 문제 관련 문제
https://github.com/Blizzard/node-rdkafka/issues/323
https://github.com/nodejs/node/issues/17732
도 생산자와 소비자 독립형 자바 클래스와 jar 파일 생성 오류를 던져 일부러하지 않고는 Sametime에서 더 출력하는 nodejs 자식 프로세스를 사용하는 자바 클래스를 실행하려고
var cmd = require('child_process').spawn('java', ['-cp', 'NodeKafka-0.0.1-SNAPSHOT.jar', 'node/kafka/NodeKafka/nodeKafkaConsumer.class']);
//console.log(spawn);
setInterval(function() {
cmd.stdout.on('data', function (data) {
console.log('stdout: ' + data); // This will print string returned by Main class.
});
},3000);
Java 및 Python에 비해 Kafka 노드에 대한 많은 종속성 및 오류
요 u kafka 생산자 및 소비자 생성을 위해 SSL을 사용하지 않고 SASL 인증을 지원하는 node-rdkafka 또는 다른 pacakge를 사용하는 데 도움을 받으십시오.
감사 마이클, 내가 배포에 대한 내 로컬 개발 및 젠킨스 고정 표시기 Windows를 사용하고 있습니다. 이러한 서로 다른 environements은, 문제 –
을 가진 것 같다 rdkafka 노드의 로컬 및 배포 ..Latest 릴리스에 대한 문제를 구축 해결하기 위해 정말 어려운 점점 및 SASL 인증 –
당신이 SASL은 사용할 필요가 모든에 대한 문서 나 예제는 없다 올바르게 설정 한 네 가지 설정은 'security.protocol','sasl.username','sasl.password' 및'sasl.mechanisms '입니다. 문서에 Windows에 관한 섹션이 있습니다 : https://github.com/Blizzard/node-rdkafka#windows. dev와 prod에 대한 환경이 서로 다른 것은 네이티브 라이브러리에서는 항상 까다 롭지 만 node-rdkafka에서는 문제가되지 않습니다. –