Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerCloudHub 専用ロードバランサー (DLB) は Anypoint Platform の省略可能なコンポーネントであり、外部 HTTP および HTTPS トラフィックを、Virtual Private Cloud (VPC) 内の CloudHub ワーカーにデプロイされた複数の Mule アプリケーションに転送できるようにします。
専用ロードバランサーを使用すると、次のことができます。
アプリケーションを実行するさまざまな CloudHub ワーカー内で負荷分散を処理する。
対象 CloudHub アプリケーションに複数のワーカーがあり、定義されたタイムアウト以内に応答しない場合、DLB によって次のワーカーへの要求が順次作成されます。「デフォルトのタイムアウト値」は 300 秒です。
カスタム証明書を提供し、必要に応じて双方向 SSL クライアント認証を適用するように SSL 設定を定義する。
カスタムドメインにアプリケーションをマップするプロキシルールを設定する。
これにより、アプリケーションを 1 つのドメイン下でホストできます。
環境で専用ロードバランサーを使用するには、最初に Anypoint VPC を作成する必要があります。同じ Anypoint VPC に複数の環境を関連付けることができるため、異なる環境で同じ専用ロードバランサーを使用できます。
Anypoint Platform 組織のロードバランサーと Anypoint VPC エンドポイントは、API Portal から参照できます。
ロードバランサーを作成および設定するには、ロードバランサーが関連付けられている組織のシステム管理者である必要があります。
DLB 名は、Anypoint Platform で (すべての MuleSoft ユーザーによって) 定義されているすべての DLB で一意である必要があります。
Anypoint VPC の専用ロードバランサーを作成および設定する方法は 3 つあります。
Anypoint Platform から 『Runtime Manager』 を使用する
Anypoint Platform CLI から 「cloudhub load-balancer create」 コマンドを使用する
次のエンドポイントで 『CloudHub REST API』 を使用する
anypoint.mulesoft.com/cloudhub/api/organizations/{orgid}/loadbalancers
anypoint.mulesoft.com/cloudhub/api/organizations/{orgid}/vpcs
loadbalancers
および vpcs
エンドポイントの詳細は、 「CloudHub API」を参照してください。
購入した各 DLB ユニットは、CloudHub ワーカー間の負荷分散を処理する 2 つのワーカーに相当します。 最大 4 つのロードバランサーユニットを DLB に割り当てることができます。 4 つのロードバランサーユニットが割り当てられた DLB のワーカーは 8 つになります。
DLB の静的 IP アドレスを有効にした場合、DLB に割り当てられる静的 IP アドレスの数は、ワーカー数の 2 倍です。 たとえば、DLB に 4 つのワーカーがある場合、DLB には関連付けられた静的 IP アドレスが 8 つあります。
常に静的 IP の半分 (ワーカーインスタンス数と同じ) が使用されます。 DLB を再起動または更新すると、DLB は未使用の静的 IP アドレスを使用するように切り替わり、最初の静的 IP アドレスのグループを未使用状態に移行します。
2 つのグループの静的 IP アドレスを切り替えることで、ダウンタイムなしの再起動および更新を実現でき、トランザクション時間が 600 秒または [Mule Application Response Timeout (Mule アプリケーション応答タイムアウト)] の値のいずれか (短いほう) より短い限り、トランザクションがドロップされたり失われたりすることがありません。
DLB を再起動または更新すると静的 IP が変更されるため、外部サービスから DLB をコールするときは IP アドレスではなく DLB の DNS アドレスを使用してください。DNS の切り替えを考慮するために必要な再試行メカニズムがクライアントに含まれていることを確認します。
ロードバランサーを再起動するときに接続の問題を回避するため、接続のキープアライブを含めて、DNS TTL (30 秒) に準拠してください。新しいワーカーがオンラインになって TTL の有効期限が切れると、接続がクローズされます。
DLB では DNS ベースのルーティングを使用してトラフィックを DLB ワーカーに分散し、すべての DLB ワーカーの IP アドレスを呼び出し側のクライアントに返します。1 秒あたりのトランザクションの量に関係なく、TTL ウィンドウ内で 1 つの DLB ワーカーがすべてのクライアントトラフィックを受信する可能性もあります。これを回避するには、DNS 解決で返される IP アドレス間で相互に繰り返すことにより、DLB ワーカー間できめ細かく負荷分散を行ってください。
設定変更中に DLB が停止すると、DNS は削除されます。再起動時に DNS ルックアップが行われると、NXDOMAIN
エラーが 15 分間キャッシュされます。このネガティブなキャッシュを回避するには、必ずすべての API コールを停止してください。
Anypoint 専用ロードバランサーでは、プロキシバッファがデフォルトで有効になります。この機能により、サーバーからの応答が受信時に内部バッファに保存され、応答全体がバッファされるまでクライアントへのデータ送信が遅延されます。プロキシバッファを使用すると、プロキシされたサーバーが応答をすばやく返して他の要求に対応できるため、低速なクライアントでパフォーマンスが最適化されます。ただし、小さなペイロードのストリーミングでは、バッファバケットが埋まるまで時間がかかるため適していません。 小さなペイロードのストリーミングのパフォーマンスの問題を回避するには、X-Accel-Buffering
レスポンスヘッダー項目に no
を渡してプロキシバッファを無効にします。
2021 年 10 月より前に作成された DLB の場合、[Update (更新)] をクリックしてこの機能を有効にします。[Update (更新)] をクリックすると、DLB では前述の静的 IP モデルを使用するようになり、以前のモデルに戻れなくなります。 |
DLB の更新については、「専用ロードバランサーの更新」を参照してください。