0

solace VMR で新しいメッセージ VPN を作成し、その SSL ポートを 8884 として構成しました。パブリッシュとサブスクライブの両方を許可するように構成されたデフォルトの ACL プロファイル。しかし、「hellotopic」などのトピックでメッセージを公開しようとすると、次のような例外が発生します。

Exception occoured Client is currently disconnecting (32102)
Connection lost on instance "123456" with cause "Connection lost" Reason code 32109" Cause "java.io.EOFException"
Connection lost (32109) - java.io.EOFException
    at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:138)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.EOFException
    at java.io.DataInputStream.readByte(DataInputStream.java:267)
    at org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:56)
    at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:100)
    ... 1 more

VMRイベントログを慰めている間、接続を取得して即座に切断します: -

2016-09-13T13:12:16+0000 <local3.info> solace event: CLIENT: CLIENT_CLIENT_CONNECT_MQTT: publisher_VPN #mqtt/1251123gf/216 Client (108) #mqtt/1251123gf/216 username default ClientId (1251123gf) connected to XXX.XX.XX.XX:8884 from XXX.XX.XX.XX:59736 SslVersion(TLSv1.2) SslCipher(ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256) authScheme(Basic) Clean(0) Will(0)

2016-09-13T13:12:16+0000 <local3.info> solace event: CLIENT: CLIENT_CLIENT_DISCONNECT_MQTT: publisher_VPN #mqtt/1251123gf/216 Client (108) #mqtt/1251123gf/216 username default ClientId (1251123gf) **reason(Service Unavailable)** final statistics - dp(1, 1, 0, 0, 1, 1, 25, 4, 0, 0, 25, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) conn(0, 0, XXX.XX.XX.XX:59654, ESTAB, 0, 0, 0) mqtt(1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0), SslVersion(TLSv1.2), SslCipher(ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256), WillSent(0). 

この解決策を見つけようとしましたが、次のトピックで公開する権限がないことに関する情報を入手しました。

PS - デフォルトの VPN SSL ポートでメッセージを発行できます。

4

2 に答える 2

0

QoS 1 ではなく 0 でメッセージを発行できるとおっしゃいましたが、メッセージ VPN でスプール サイズを構成しましたか? (手順 17) で製品ドキュメントMaximum Spool Usageを参照し、プロパティにサイズを追加することをお勧めします。

最大スプール使用量

Message VPN が使用できるメッセージ スプール ディスク容量の最大量 (MB 単位)。注: メッセージ VPN に割り当てられたすべてのメッセージ スプール クォータの合計が、ルーター全体のメッセージ スプール クォータを超えないようにするためのポリシングは行われません。

デフォルトでは、このプロパティの値は 0 に設定されています。5 または 10 (MB 単位) に設定してみてください。

于 2016-10-03T11:35:05.753 に答える
0

MQTT クライアントを Message VPN のポートに接続するには、MQTT SSL サービスを Solace VMR の Message VPN に対して有効にする必要があります。

CLI で MQTT SSL サービスを有効にするには、次のコマンドを使用できます。

solace(configure)# message-vpn <vpn-name>
solace(configure/message-vpn)# service mqtt
solace(configure/message-vpn/service/mqtt)# no ssl shutdown

SolAdmin で MQTT SSL サービスを有効にするには、[メッセージ VPN、ACL、およびブリッジ] タブに移動します。[メッセージ VPN] ビューで、メッセージ VPN を右クリックし、[サービス ステータスの変更] を選択します。各サービスを個別に有効にできるポップアップ ウィンドウが表示されます。

于 2016-09-13T14:57:51.307 に答える