mabl リンクを使用すると、mablクラウドとプライベート環境の間にセキュアな接続を確立できます。リンクエージェントが正しく設定されていない場合、テストがローカルでは成功するのにクラウドでは失敗するといった問題が発生することがあります。また、テスト実行中に「ERR_TUNNEL_CONNECTION_FAILED」や「Unable to find active mabl link tunnel」などのエラーメッセージが表示される場合もあります。
この記事では、mablリンクエージェントの起動および実行に関する課題のトラブルシューティングと切り分けのステップを紹介します。まず、発生している課題を選択してください。
Link Agentの起動
リンクエージェントを起動できない場合、以下のいずれかの原因が考えられます。
起動コマンドが無効
Link Agentの起動コマンドに適切なAPIキーと有効な名前が使用されていることを確認します。
- APIキーは「リンクエージェント」用のAPIキーである必要があります
- 名前は小文字、数字、ダッシュで構成された1〜24文字である必要があります。大文字やアンダースコアなどのサポートされていない文字が名前に含まれている場合、リンクエージェントは起動できません。
ディレクトリが正しくない
Bad command or file name (コマンドまたはファイル名が違います) というメッセージが表示される場合は、起動コマンドを実行するときにlink-agent/binディレクトリにいることを確認します。
Javaバージョンがサポートされていない
リンクエージェントの起動時にunrecognized option: --add-opensというエラーが表示される場合、サポートされていないJavaバージョンを使用しています。リンクエージェントがサポートするJavaバージョンにアップグレードするか、DockerリンクエージェントコンテナIを使用してください。
mablに接続
リンクエージェントのホストは、ポート443を介してapi.mabl.comおよび*.link.mabl.comに接続できる必要があります。
リンクエージェントの起動中は、「Initializing agent」、「Initializing tunnel」、「Securing tunnel」などの起動ステータスが順に表示されます。ステータスはネットワークページ(ワークスペース > ネットワーク)で確認できます。数分以内に「接続済み」になります。
- ステータスが「Securing tunnel」または「Initializing tunnel」のまま変わらない場合、リンクエージェントは
api.mabl.comには到達できていますが、トンネルのエンドポイントに到達できていません。 -
リンクエージェントテーブルにエージェントがまったく表示されない場合、リンクエージェントは
api.mabl.comに一度も到達できていないか、以前は接続していたもののハートビートの送信が停止しています。このテーブルには、直近数分以内にチェックインしたエージェントのみが表示されます。ネットワークページ下部の最近のアクティビティで、エージェントが切断されたかどうかを確認してください。
接続テスト
接続をテストするには、リンクエージェントが実行中のマシンにSSHまたはログインし、curlまたは別のツールを使用して、次のエンドポイントへの接続をテストしてください:api.mabl.comおよび*.link.mabl.com。
チームとフォローアップする
エージェントがapi.mabl.comまたは*.link.mabl.comに接続できない場合は、社内ネットワークがアウトバウンドトラフィックに制限を適用していないかどうか、ネットワークチームに相談してください。
- 会社のネットワークでフォワードプロキシを使用している場合は、Link Agentの起動コマンドに適切なフォワードプロキシオプションを追加する必要があります。
- 会社のファイアウォールが送信トラフィックをブロックする設定になっている場合は、mabl Linkトラフィックがmablクラウドに接続できるように、
*.link.mabl.comとapi.mabl.comを許可リストに追加するようネットワークチームに依頼してください。 - 会社のネットワークでポート443に対する送信接続がブロックされている場合は、Link Agent用にブロックの適用解除が可能かどうかをネットワークチームに確認してください。
テスト対象アプリケーションへの接続
mabl Link経由で実行するようにテストを設定しているにもかかわらず、テストがテスト対象アプリケーションに接続できない場合や、テスト対象アプリケーションとの接続が切れる場合は、次のチェックリストを使って、考えられる原因を特定してください。
環境の設定が適切であることを確認する
テストを実行している環境がmabl リンクを使用するように設定されており、接続済みのエージェントがあるトンネル経由でルーティングされていることを確認してください。ネットワークページ(ワークスペース > ネットワーク)のトンネルテーブルで確認できます。
- エージェントには、そのトンネルで現在報告しているエージェントの数が表示されます。トンネル上のすべてのエージェントをシャットダウンし、そのトンネルを使用する環境もない場合、トンネルはエージェント数が0の状態で一定期間表示され続けたあと、削除されます。トンネルを復元するには、そのトンネルでエージェントを起動してください。
- Environmentsには、そのトンネル経由でルーティングするように設定されているすべての環境が表示されます。環境が表示されない場合や誤っている場合は、環境のリンクエージェント設定を更新してください。環境に選択されているリンクエージェントは、ワークスペース内のアクティブなリンクエージェントのいずれかと一致している必要があります。
mabl Linkを使用するように設定された環境
最近のアクティビティを確認する
ネットワークページ下部の最近のアクティビティパネルには、リンクエージェントのライフサイクルイベントが記録されます。この情報を使用すると、エージェントがリンクエージェントテーブルに表示されなくなっている場合でも、失敗した実行の時間帯にエージェントが接続されていたかどうかを確認できます。なお、リンクエージェントとリンクトンネルアクセスのイベントは、mablのアクティビティフィード(ワークスペース > アクティビティフィード)でも追跡できます。
失敗した実行の時間帯と一致する切断イベントがないか確認してください。実行中ずっと接続が維持されていた場合は、エージェントホストとアプリケーションの間に問題がある可能性が高くなります。リンクエージェントのホストがアプリにアクセスできることを確認するを参照してください。
リンクエージェントテーブルの最終接続列には、エージェントがmablへの接続を最後に確立した日時が表示されます。接続が切断されたエージェントは、再起動せずに再接続する場合があります。
Link Agentのログを確認する
最近のアクティビティに、実行中にエージェントが切断されたことが記録されている場合は、チームのリンクエージェントを管理している担当者を見つけ、リンクエージェントのログのコピーを依頼してください。リンクエージェントのログは、リンクエージェントが切断された理由を特定するのに役立ちます。ログはリンクエージェントがインストールされたマシンの次の場所にあります:logs/agent.log。
チームのリンクエージェントを管理している担当者に連絡する際は、次の情報を提供してください。
- エージェント名
- 失敗した実行の時間帯
- エージェントホストから取得した最新の
agent.log。
Link Agentのシャットダウンが起きる原因には、次のようなものがあります。
- テストが実行されるようにスケジュールされていたときにLink Agentホストが再起動された。
- 非アクティブな状態が続いたためにLink Agentホストがログアウトし、Link Agentプロセスがシャットダウンされた。
- リンクエージェントのテストトラフィックの量が多すぎます。これをテストするには、プラン実行中に同時実行数を減らすことで、成功率が向上するかどうかを確認してください。必要に応じて、同じ名前のリンクエージェントインスタンスを複数作成し、ロードバランサーとして機能させることができます。詳細については、リンクエージェント要件の記事の高可用性構成に関するセクションを参照してください。
中断を最小限に抑えるため、できるだけ中断の少ないマシンまたはVMでLink Agentを実行します。詳細については、Link Agentの要件に関する記事を参照してください。
リンクエージェントのホストがアプリにアクセスできることを確認する
テストがmabl Linkを介して実行されると、DNS解決はLink Agentをホストしているマシンで行われます。リンクエージェントのホストがテスト対象のアプリケーションにアクセスできる限り、mablクラウドで実行中のテストは環境に接続できます。
リンクエージェントホストがアプリにアクセスできるかどうかを確認するには、エージェントが実行中のマシンにログインし、 curlまたは同様のツールを使用してアプリケーションへの接続を確認してください。curlの呼び出しが失敗する場合、リンクエージェントホストに対してネットワークが適切に設定されていません。
または、リンクエージェントホストにアクセスできない場合は、mabl APIテストを作成してアプリケーションへの接続をテストしてください。リンクが有効な環境でクラウド上で実行し、テスト出力ログのエラーを確認して詳細情報を取得してください。