nodejsを使用してSASL認証を使用してKafkaプロデューサとコンシューマを作成しようとしていますが、ほとんどすべてを試したnodejs kafkaパッケージノードrdkafkaが、その対面の上にSASLkafka nodejs - 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のを作るの運とオプションの下にしようとしましたそれら(ノードrdkafka、カフカ・ノード、無カフカ....)
node-rdkafkaのC++ラッパーによるノード-gypおよびドッカーの問題に関する問題
でも何も出力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クラスとJARファイルを作成していないし、エラーをスローdidntのnodejs子プロセスを使用して、それらのJavaクラスを実行しようとしたし、Sametimeで
https://github.com/nodejs/node/issues/17732
https://github.com/GaiamTV/kafka-node-topic-consumer/issues/3
https://github.com/Blizzard/node-rdkafka/issues/323
JavaとPythonに比べてKafkaノードの依存関係とエラーが多い
kafkaプロデューサとコンシューマの作成にSASL認証(SSLを使用せずに)をサポートするnode-rdkafkaまたは他のpacakgeを使用する際に助けてください。
マイケルありがとう、私は自分のローカル開発用にWindowsを使用しています。これらは異なる環境であるため、ローカルとデプロイの両方でビルドの問題を修正するのは本当に困難になっています。ノードrdkafkaの最新リリースは –
の問題を抱えているようですが、SASL認証のドキュメントや例はありません –
SASLを使用するには、正しく設定された4つの設定: 'security.protocol'、' sasl.username'、 'sasl.password'、' sasl.mechanisms'です。 Windowsに関するセクションは、ドキュメント(https://github.com/Blizzard/node-rdkafka#windows)にあります。 devとprodの環境が異なるのは、ネイティブライブラリでは常に難しいですが、node-rdkafkaでは問題ありません。 –