別の国や地域の訪問者に対してアプリケーションがどのように動作するかをテストするには、その地域でLink Agentが動作しているmabl Linkトンネル経由でクラウドテストを実行します。アプリケーションからは、テストトラフィックがその地域のネットワークから届いているように見えるため、地域ごとのコンテンツ、価格、リダイレクト、アクセスルールを確認できます。
この記事では、次の方法について説明します。
地域を指定したテストの仕組み
mabl Link経由でテストを実行する場合も、ブラウザーはmablクラウドで動作しますが、アプリケーションへの接続はLink Agentが行います。これらの接続はLink Agentが動作しているネットワークから送信され、DNS名もそのネットワークで解決されます。アプリケーション、CDN、ファイアウォールから見ると、トロントのLink Agentを使用するテストは、トロントの訪問者と同じように見えます。
地域はLink Agentを実行する場所によって決まるため、サーバー、VM、コンテナを実行できる地域であれば、どこからでもテストできます。mablがその地域でテストを実行する必要はなく、その地域のために新しいmablのIPアドレスを許可リストに追加する必要もありません。mabl Link経由のテストトラフィックは、mablの静的IPアドレスではなく、お客様自身のLink Agentホストから送信されます。
変わらない点
mabl Linkによって変わるのは、アプリケーションへのトラフィックの送信元です。テストのその他の部分は移動しません。
- ブラウザー、テスト結果、実行のアーティファクトは、他のクラウド実行と同様にmablクラウドに残ります。
- ブラウザーの位置情報APIは、引き続きブラウザーが動作しているデータセンターの位置を返します。アプリケーションが訪問者のIPアドレスではなくブラウザーの位置情報を読み取る場合は、ポップアップの操作を参照してください。
- ブラウザーのロケールとタイムゾーンは、クラウドのデフォルトのままです。地域の言語、通貨、日付形式に合わせるには、プランでブラウザーのロケールとタイムゾーンも設定してください。
- モバイルテストでmabl Link経由で送信されるのは、APIステップ、JavaScriptスニペット、データベースクエリのみです。mabl Linkによるセキュアトンネリングの制限事項を参照してください。
地域ごとにLinkトンネルを設定する
地域ごとに専用のトンネルを用意し、カナダにはacme-ca、英国にはacme-ukのように、地域がわかる名前を付けます。トンネル名には英小文字、数字、ダッシュを使用でき、最大24文字です。
- Link Agent APIキーを作成します。会社内のすべてのワークスペースから地域のトンネルを使用するには、会社キーを作成し、それらを会社スコープのトンネルにします。それ以外の場合は、ワークスペースキーを作成します。Link Agentのセットアップを参照してください。
- 各地域で、クラウドプロバイダーのカナダリージョンや英国リージョンのVMなど、Link Agentの要件を満たすホストを用意します。
- ホストにLink Agentをインストールし、その地域のトンネル名で起動します。Link Agentのセットアップを参照してください。
- LinuxおよびmacOSのホストでは、ソケットバッファー上限を引き上げるかどうかをインストーラーが尋ねたら、引き上げを選択します。mablクラウドから遠いLink Agentは、上限を引き上げることで、データをはるかに速く転送できます。ホストのソケットバッファー上限を引き上げるを参照してください。
- 各エージェントがワークスペース > ネットワーク、または会社トンネルの場合は会社ダッシュボードのネットワークページで、接続済みと表示されていることを確認します。
ほとんどのチームでは、地域ごとに1つか2つのLink Agentで十分です。同じトンネル名で2つ目のエージェントを実行すると、1つ目のエージェントを更新または再起動している間もその地域を利用でき、処理能力も増えます。各ホストに必要なCPUとメモリについては、Link Agentのサイジングとスケーリングを参照してください。
エージェントのトラフィックの送信元を確認する
アプリケーションから見えるのは、Link Agentのトラフィックが送信されるパブリックIPアドレスです。ホストが別の地域にある企業プロキシ、NATゲートウェイ、VPNを経由して送信トラフィックを送る場合、アプリケーションからはその地域に見えます。位置を確認するには、トンネル経由のトレーニングセッションで、IPアドレスを調べるページを読み込むテストを開いてください。
特定の地域からテストを実行する
実行の地域を選ぶ方法は2つあります。各地域を定期的なスケジュールでテストする場合は地域ごとに環境を分け、CI/CDパイプラインが実行ごとに地域を決める場合はデプロイイベントのオーバーライドを使用します。
1回の実行では1つの地域のトンネルを使用する
環境またはオーバーライドに複数のトンネルが指定されている場合、mablは各接続をそのいずれかのトンネル経由で送信し、最初のトンネルが宛先に到達できない場合は別のトンネルを試します。acme-caとacme-ukを一緒に指定した実行では、トラフィックの一部がそれぞれの地域から送信される可能性があります。各実行には、1つの地域のトンネルを指定してください。
地域ごとに環境を1つ用意してテストを実行する
地域ごとに環境を作成し、その地域のトンネルを指定します。その環境のすべてのプラン実行とテスト実行は、その地域からトラフィックを送信します。
- 環境ページ (テスト環境設定 > 環境) に移動します。
- +環境を追加をクリックし、「本番 - カナダ」のように地域を含む名前を付けます。
- リンクエージェントを使用するチェックボックスをオンにします。
-
リンクエージェントリストから、
acme-caなど、その地域のトンネルを選択します。 - 設定を保存します。
- 地域ごとに繰り返します。
- 地域ごとの環境をプランに追加します。プランは環境ごとにすべてのテストを1回ずつ実行するため、「本番 - カナダ」と「本番 - 英国」を含む1つのプランで、実行のたびに両方の地域からテストできます。プランを参照してください。
環境設定について詳しくは、mabl Link経由でのテストの作成と実行およびアプリケーションと環境の設定を参照してください。
デプロイイベントのオーバーライドを使用してテストを実行する
実行をトリガーする時点で地域を選ぶには、環境を1つのままにし、デプロイイベントでそのトンネルをオーバーライドします。リクエスト本文のplan_overridesにlink_agent_labelsを追加します。
curl -s "https://api.mabl.com/events/deployment" \
-u "key:{api-key}" \
-H "Content-Type:application/json" \
-d '{
"environment_id": "{environment-id}",
"plan_overrides": {"link_agent_labels": ["acme-uk"]}
}'
デプロイイベントがトリガーするすべてのプランは、環境に設定されているトンネルの代わりに、acme-ukトンネル経由でトラフィックを送信します。同じパイプラインから複数の地域をテストするには、地域ごとに1つのデプロイイベントをトリガーします。デプロイイベントでのLink Agent名のオーバーライドおよびAPIを使ったCI/CDインテグレーションを参照してください。