2017-05-17 8 views
0

メッセージハブサービスへの接続に失敗:カフカGolangクライアントは、これは私が実行しているかのコードスニペットで

err := godotenv.Load() 
    if err != nil { 
    log.Fatal("Error loading .env file") 
    } 
broker := os.Getenv("BROKER") 
topic := os.Getenv("TOPIC") 
username := os.Getenv("USERNAME") 
password := os.Getenv("PASSWORD") 
calocation := os.Getenv("CALOCATION") 

p, err := kafka.NewProducer(&kafka.ConfigMap{ 
    "metadata.broker.list": broker, 
    "security.protocol": "sasl_ssl", 
    "sasl.username":  username, 
    "sasl.password":  password, 
    "sasl.mechanisms":  "PLAIN", 
    "ssl.ca.location":  calocation, 
    "api.version.request": true}) 

if err != nil { 
    fmt.Printf("Failed to create producer: %s\n", err) 
    os.Exit(1) 
} 

は基本的に、これは一台のマシンではなく、他の上で正常に実行されます。この問題は、この問題にリンクすることができれば

'SSL handshake failed: /SourceCache/OpenSSL098/OpenSSL098-52.40.1/src/ssl/s23_clnt.c:593: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version:' 

わからない:Why kafka-python fails to connect to Bluemix message hub service? ...正確なように考えてはいけない、私は働いていないマシン上で受信していますエラーは以下のとおりです。コードは1台のマシンで実行されますが、他のマシンでは実行されません。どんな助けもありがとう!

答えて

0

メッセージハブにはTLS v.1.2が必要です。

エラーメッセージから、2台のマシンで使用されるバージョンが異なることがよくあります。私はCまたはノードのクライアントのために、それを設定しなければならなかったことはありませんプロパティssl.cipher.suites https://github.com/edenhill/librdkafka/blob/master/CONFIGURATION.md に言及librdkafka

Macを使用している場合は、librdkafkaがApple製のものではなく、Homebrewにインストールされているopensslライブラリを使用していることを確認してください。 私のMacでは、輸出後にlibrdkafkaをコンパイルします CPPFLAGS=-I/usr/local/opt/openssl/include LDFLAGS=-L/usr/local/opt/openssl/lib

関連する問題