ローカルでは成功するテストがmabl Link経由のクラウド実行では失敗する場合や、ERR_TUNNEL_CONNECTION_FAILED、"Unable to find active mabl link tunnel"、"No Link Agent is connected for tunnel" などのエラーが表示される場合は、通常、Link Agentまたはその周辺のネットワークに対処が必要です。この記事では、よくある症状とその原因、および解決方法を説明します。表示されている内容に一致する症状を選択してください。
- Link Agentが起動しない
- Link Agentがmablに接続しない
- テストが接続済みのLink Agentを見つけられない
- テストがアプリケーションに到達できない
- Link経由のテストが遅い、または負荷がかかると失敗する
- トンネルへのアクセスが拒否される
- Link Agentが自動的に停止した
トンネルを直接テストするツールについては、Link接続のテストと診断を参照してください。
Link Agentが起動しない
APIキーまたはトンネル名を使用できない。 Link Agentは起動時に両方を確認し、再試行せずに問題を報告します。次の点を確認してください。
- APIキーが "Link Agent" のAPIキーであること。ワークスペーストンネルの場合はSettings > APIsから、会社トンネルの場合は会社ダッシュボードから取得します。
- トンネル名が、英小文字、数字、ダッシュから成る1~24文字であること。大文字とアンダースコアは使用できません。
- 例からコピーした設定ファイルを編集済みであること。例に含まれるプレースホルダーのAPIキーとトンネル名は使用できません。
Javaのバージョンが古い。 unrecognized option: --add-opensと表示される場合、ホストでJava 11より古いバージョンが実行されています。Java 11以降をインストールするか、独自のJavaランタイムを含むWindowsインストーラーまたはDockerイメージを使用してください。Link Agentの要件を参照してください。
プラットフォームがサポートされていない。 Link Agentは、Linux (x86-64およびarm64)、Apple siliconのmacOS、x86-64のWindowsで動作します。IntelプロセッサーのMacやWindows on ARM上のエージェントは、サポートされているプラットフォームに移してください。
コマンドが見つからない。 Bad command or file nameまたはcommand not foundと表示される場合は、bin/link-agentのように、Link Agentのインストールディレクトリからコマンドを実行してください。
Link Agentがmablに接続しない
Link Agentの起動中、ワークスペース > ネットワークでのステータスは、エージェントを初期化しています、トンネルを初期化しています、アナウンス中、トンネルを確立していますの順に進み、1~2分以内に接続済みになるはずです。
ホストがmablのLinkエンドポイントに到達できない。 エージェントがトンネルを初期化していますまたはトンネルを確立していますのままになる場合や、エンドポイント列に、エージェントが "cannot reach mabl … over UDP or … over TCP" という警告が表示される場合、ホストはapi.mabl.comには到達できますが、トンネルエンドポイントには到達できていません。Link Agentの要件に記載されているトンネルエンドポイントのいずれかへの送信接続を許可してください。エージェントに必要なのはそのうちの1つだけです。
エージェントとmablの間にプロキシがある。 QUICはHTTPプロキシを通過できないため、プロキシの背後にあるエージェントはWSS経由で接続します。プロキシがWSSエンドポイントを許可していること、およびエージェントのプロキシ設定が正しいことを確認してください。mabl Linkトラフィックのフォワードプロキシを参照してください。
エージェントがapi.mabl.comに到達できない。 エージェントがリンクエージェントテーブルにまったく表示されない場合、エージェントはapi.mabl.comに到達できていないか、以前は接続していたもののハートビートの送信が停止しています。ネットワークページ下部の最近のアクティビティで切断の記録を確認してから、エージェントのログを確認してください。
エージェントのホストから接続をテストするには、次のコマンドを使用します。
curl -sS -o /dev/null -w "%{http_code}\n" https://api.mabl.com
nc -vz {wss-endpoint} 443
Test-NetConnection api.mabl.com -Port 443
Test-NetConnection {wss-endpoint} -Port 443
{wss-endpoint}は、Link Agentの要件に記載されているWSSエンドポイントに置き換えてください。api.mabl.comについては、HTTPステータスコードが返されれば、ホストが到達できたことを意味します。WSSエンドポイントについては、TCP接続に成功すれば、ホストがトンネルエンドポイントに到達できることを意味します。タイムアウトや名前解決の失敗は、ネットワーク上の何かがアドレスをブロックしていることを意味します。これらのツールではUDP経由のQUICエンドポイントをテストできないため、QUICについてはエンドポイント列を確認してください。エージェントのホストがHTTPプロキシ経由でトラフィックを送信している場合は、代わりにプロキシ経由でテストするか、エンドポイント列を確認してください。
ファイアウォールまたはプロキシがアドレスをブロックしている場合は、ネットワークチームに許可を依頼してください。
テストが接続済みのLink Agentを見つけられない
テスト出力に、トンネル名に続いて "No Link Agent is connected for tunnel" と表示されるか、"Unable to find active mabl link tunnel" と表示されます。
環境が使用するトンネルにエージェントが接続されていない。 ワークスペース > ネットワークに移動し、トンネルテーブルを確認してください。
- エージェントには、各トンネルに接続されているエージェントの数が表示されます。接続済みのエージェントがないトンネルでは、テストを実行できません。そのトンネルでエージェントを起動し、接続されない場合はLink Agentがmablに接続しないを参照してください。
- Environmentsには、各トンネル経由でルーティングする環境が一覧表示されます。テストで使用する環境が表示されない場合や、エージェントとは異なるトンネル名を使用している場合は、環境のLink Agent設定を更新してください。
mabl Linkを使用するように設定された環境
エージェントがメンテナンスモードになっている。 ステータスが完了処理中または処理完了のエージェントは、新しい接続を受け付けません。そのエージェントがトンネル上の唯一のエージェントである場合は、管理するメニューからメンテナンスを終了してください。Link Agentのメンテナンスとアップデートを参照してください。
実行中にエージェントが切断された。 ネットワークページの最近のアクティビティまたはアクティビティフィードで、失敗した実行の時刻と一致する切断がないか確認してください。リンクエージェントテーブルの最終接続には、エージェントが最後に接続した日時が表示されます。接続が切断されたエージェントは、再起動しなくても自動的に再接続します。
Link Agentが停止する一般的な理由は次のとおりです。
- ホストが再起動した、またはエージェントを起動したユーザーがログアウトした。エージェントが実行を続け、ホストとともに起動するように、エージェントをサービスとして実行してください。Link Agentのセットアップを参照してください。
- ホストのメモリが不足した。Link経由のテストが遅い、または負荷がかかると失敗するを参照してください。
テストがアプリケーションに到達できない
Link Agentは接続されているものの、テストがタイムアウトする、アプリケーションの名前を解決できない、または接続エラーが発生します。
エージェントのホストがアプリケーションに到達できない。 DNS解決と接続はLink Agentのホスト上で行われるため、ホストはテスト対象のアプリケーションが使用するすべてのものに到達できる必要があります。トンネル自体からテストしてください。
- mablデスクトップアプリで、Linkトンネルの診断のReachability、TCP connect、またはHTTP requestを実行します。
- mabl CLIで、
mabl link-agents test url {url} --tunnel {name}またはmabl link-agents test tcp {host:port} --tunnel {name}を実行します。
チェックが失敗する場合、エージェントが実行されているネットワークでその接続が許可されていません。エージェントのホストにサインインし、アプリケーションに対してcurlを使用して確認することもできます。
同じトンネル上のエージェントが異なるネットワークを参照している。 テストが成功したり失敗したりする場合、そのトンネル上のエージェントの一部がアプリケーションに到達できないか、アプリケーションの名前を異なるアドレスに解決している可能性があります。すべてのエージェントを比較するmabl link-agents test destination {host:port} --tunnel {name}を実行するか、デスクトップアプリの診断でEvery agentを選択してください。異なるホストを修正するか、そのホストを専用のトンネルに移してください。
接続フィルターが対象をブロックしている。 ネットワークページの結果別の接続チャートに接続フィルターがブロックと表示される場合、エージェントの接続フィルターがその宛先を許可していません。宛先をフィルターに追加してください。
アプリケーションがエージェント自身のホスト上にある。 localhostをテストするには、mabl Linkでのlocalhostのテストを参照してください。
Link経由のテストが遅い、または負荷がかかると失敗する
同時に実行するテストが少ない場合は成功しますが、プラン実行が集中すると遅くなるか失敗します。
エージェントのホストのCPUまたはメモリが不足している。 リンクエージェントテーブルの健全性列と、ネットワークページ上部の警告の件数を確認してください。エージェントの詳細を開くと、ライブ容量とホスト健全性とホストのチューニングとサイジングで、どのリソースが不足しているかを確認できます。ホストリソースが80%を超えるとエージェントに警告が表示され、90%を超えると重大ステータスが表示されます。
解決するには、ホストのCPUまたはメモリを増やすか、同じトンネル名のLink Agentを別のホストに追加して負荷を分散してください。Link Agentのサイジングとスケーリングを参照してください。
ホストのソケットバッファー上限が引き上げられていない。 デフォルトの上限はトンネルのスループットを制限し、エージェントがmablから遠い場合に特に顕著になります。mablの推奨に従って上限を引き上げてください。ホストのソケットバッファー上限を引き上げるを参照してください。
トンネルへのアクセスが拒否される
Link経由でテストをトレーニングするときや診断を実行するときに、mablデスクトップアプリまたはCLIにYou do not have access to this tunnelまたは "Access denied" と表示されます。
ロールにトンネルへのアクセスが許可されていない。 ワークスペースの所有者 (会社トンネルの場合は会社の管理者) が、Linkトンネルアクセスであなたのロールを追加する必要があります。Linkトンネルへのアクセスの制御を参照してください。
個人トンネルがオフになっている。 個人トンネルを開始できない場合は、ワークスペースの所有者がAllow personal Link tunnelsをオンにする必要があります。個人Linkトンネルを参照してください。
Link Agentが自動的に停止した
APIキーが取り消された。 トンネルのAPIキーが無効になったとmablが報告すると、Link Agentは再試行せずにそのトンネルを停止します。新しい "Link Agent" のAPIキーを作成し、エージェントの設定を更新してから、再度起動してください。
アカウントのmabl Linkへのアクセスが終了した。 ワークスペースまたは会社がmabl Linkを使用できなくなった場合 (最も多いのはトライアルの期限切れです)、Link Agentは次の内容をログに記録して、そのトンネルを停止します。
Link is not enabled on your account, or your account is inactive for tunnel "{tunnel-name}"
実行中のトンネルがなくなると、エージェントは終了します。仕様上、アカウントが再びアクティブになってもエージェントは自動的に再接続せず、インストーラーが設定するサービスも、この種類の終了の後はエージェントを停止したままにします。アカウントが再びアクティブになったら、Link Agentを起動してください。
| インストール方法 | 対処方法 |
|---|---|
| Linux (インストーラーを使用) | sudo systemctl start mabl-link-agent |
| macOS (インストーラーを使用) | sudo launchctl kickstart system/com.mabl.link-agent |
| Windowsインストーラー |
サービスでmabl Link Agentサービスを開始するか、管理者として開いたコマンドプロンプトからsc start MablLinkAgentを実行します。 |
| Docker | コンテナーが停止した場合は、コンテナー名を指定してdocker start mabl-link-agentを実行します。--restart unless-stoppedを指定している場合は、Dockerが自動的にコンテナーを再起動し、アカウントがアクティブになると再接続します。 |
| Kubernetes | Kubernetesが自動的にコンテナーを再起動し、アカウントがアクティブになると再接続します。より早く再接続するには、Podを削除してください。 |
| mabl CLIまたはターミナル | エージェントを再度起動します。 |
Link Agentが他のワークスペースのトンネルも提供している場合は、それらのトンネルのために実行を続けます。再びアクティブになったトンネルを復帰させるには、エージェントを再起動してください。たとえば、Linuxではsudo systemctl restart mabl-link-agent、macOSではsudo launchctl kickstart -k system/com.mabl.link-agentを実行し、Windowsではmabl Link Agentサービスを再起動します。
エージェントがmablからシャットダウンされた。 管理するメニューまたはmabl link-agents terminateでシャットダウンされたエージェントは停止し、再接続しません。誰がシャットダウンしたかは、アクティビティフィードで確認してください。
Link Agentのログの場所
Link Agentのログには、エージェントが切断または停止した理由が記録されています。ログの場所は、インストール方法によって異なります。
| インストール方法 | ログ |
|---|---|
| LinuxおよびmacOSインストーラー | インストールディレクトリのlogs/agent.log (デフォルトは/opt/mabl/link-agent/logs/agent.log)。Linuxではjournalctl -u mabl-link-agentでも確認できます。 |
| Windowsインストーラー |
C:\ProgramData\mabl\link-agent\logs、または選択したデータフォルダー内のlogsフォルダー |
| zipまたはtar.bz2アーカイブ | エージェントを展開したディレクトリのlogs/agent.log
|
| Docker | docker logs {container-name} |
| Kubernetes | kubectl logs {pod-name} -n {namespace} |
| mabl CLI | エージェントの起動時にCLIが表示するログディレクトリ。トンネルごとにlink-agentログとlink-workerログが保存されます |
mablチームへのお問い合わせ
それでも原因がわからない場合は、mablにお問い合わせください。次の情報を含めてください。
- ワークスペース > ネットワークに表示されるトンネル名とLink Agent ID
- 失敗した実行の時間帯と、その実行へのリンク
- その時間帯のLink Agentのログ
- 診断チェックを実行した場合は、その結果
調査中にmablがトンネル経由でチェックを実行できるようにするには、トンネルを所有するワークスペースまたは会社でサポートアクセスをオンにしてください。