MQTT負荷分散
-
信頼性
-
速い応答時間
-
無制限のデバイスをサポートする機能
-
Publish/subscribe 多対多のコミュニケーションに最適なメッセージング
-
**MQTTブローカー。**クライアントからすべてのメッセージを受信し、メッセージを適切な宛先クライアントにルーティングするサーバー。ブローカーは、すべてのメッセージの受信、メッセージのフィルタリング、各メッセージのサブスクライブ者の決定、およびこれらのサブスクライブされたクライアントへのメッセージの送信を担当します。ブローカーは、すべてのメッセージが通過する必要のある中央ハブです。
-
**MQTTクライアント。**マイクロコントローラーから本格的なサーバーまで、MQTTライブラリを実行し、ネットワーク経由でMQTTブローカーに接続するすべてのデバイス。パブリッシャーとサブスクライバーはどちらもMQTTクライアントです。パブリッシャーとサブスクライバーのラベルは、クライアントがメッセージを公開しているか、メッセージを受信するようにサブスクライブしているかを示します。
-
**MQTTロードバランサー。**Citrix ADCアプライアンスは、MQTTトラフィックを負荷分散するためにMQTT負荷分散仮想サーバーで構成されています。
MQTTトラフィックの負荷分散を構成する
-
構成、設定 MQTT/MQTT_TLS サービスまたはサービスグループ。
-
構成、設定 MQTT/MQTT_TLS 仮想サーバーの負荷分散。
-
バインドする MQTT/MQTT_TLS へのサービス MQTT/MQTT_TLS 仮想サーバーの負荷分散。
-
構成、設定 MQTT/MQTT_TLS コンテンツスイッチング仮想サーバー。
-
ターゲットの負荷分散仮想サーバーを指定するコンテンツスイッチングアクションを構成します
-
コンテンツスイッチングポリシーを構成します。
-
コンテンツスイッチングポリシーを、特定の負荷分散仮想サーバーにリダイレクトするように既に構成されているコンテンツスイッチング仮想サーバーにバインドします。
-
構成を保存します。
CLIを使用してMQTTトラフィックのロードバランシングを設定するには
add service <name> <IP> <protocol> <port>
add servicegroup <ServiceGroupName> <Protocol>
bind servicegroup <serviceGroupName> <IP> <port>
add service srvc1 10.106.163.3 MQTT 1883
add servicegroup srvcg1 MQTT
bind servicegroup srvcg1 10.106.163.3 1883
add lb vserver <name> <protocol> <IPAddress> <port>
add lb vserver lb1 MQTT 10.106.163.9 1883
bind lb vserver <name> <serviceName>
bind lb vserver <name> <servicegroupName>
bind lb vserver lb1 srvc1
bind lb vserver lb1 srvcg1
add cs vserver <name> <protocol> <IPAddress> <port>
add cs vserver cs1 MQTT 10.106.163.13 1883
add cs action <name> -targetLBVserver <string> [-comment <string>]
add cs action act1 -targetlbvserver lbv1
add cs policy <policyName> [-url <string> | -rule <expression>] –action <actName>
add cs policy cspol1 -rule “MQTT.COMMAND.EQ(CONNECT) && MQTT.CONNECT.FLAGS.QOS.eq(2)” -action act1
bind cs vserver <virtualServerName> -policyName <policyName> -priority <positiveInteger>
bind cs vserver cs1 –policyName cspol1 -priority 20
save ns config
GUIを使用してMQTTトラフィックの負荷分散を構成するには
-
トラフィック管理に移動します > 負荷分散 > 仮想サーバー、およびタイプMQTTまたはの負荷分散仮想サーバーを作成します MQTT_TLS 。****
-
タイプMQTTのサービスまたはサービスグループを作成します。
-
サービスをMQTT仮想サーバーにバインドします。
-
[保存] をクリックします。
MQTTメッセージの長さの制限
dropmqttjumbomessage lbパラメーターは、ジャンボパケットを処理するかどうかを決定します。このパラメーターはデフォルトで YESに設定されています。これは、ジャンボMQTTパケットがデフォルトでドロップされることを意味します。このパラメータが NOに設定されている場合、ADCアプライアンスはメッセージ長が65536バイトを超えるパケットも処理します。
Set lb parameter –dropMqttJumboMessage [YES | NO]
set lb parameter –dropMqttJumboMessage no