すべてのプロダクト
Search
ドキュメントセンター

:ack-onepilot コンポーネントの動作原理

最終更新日:Dec 30, 2024

このトピックでは、Kubernetes アプリケーションを Application Real-Time Monitoring Service (ARMS) に接続するのに役立つコンポーネントである ack-onepilot の動作原理について説明します。

ワークフロー

ack-onepilot コンポーネントは、webhook と init コンテナという 2 つのサービスで構成されています。 ack-onepilot webhook サービスは、Kubernetes の mutating admission webhook として機能します。 詳細については、Mutating admission webhook を参照してください。

ack-onepilot webhook サービスは、次のフローチャートに示すように、Kubernetes ポッドが etcd に永続的に保存される前に変更します。

ack-onepilot webhook サービスは、ポッドに対して次の操作を実行します。

  1. ポッドの主要な環境変数を指定します。

    Java アプリケーションの場合、ack-onepilot webhook サービスは、起動時に環境変数 JAVA_TOOL_OPTIONS から Java 仮想マシン (JVM) の特定のシステムパラメーターをアプリケーションに自動的に追加します。 次に、JAVA_TOOL_OPTIONS は、ARMS ライセンスキー、アプリケーション名、レポートリージョン、およびその他の情報を挿入して、データが報告されるエンドポイントを見つけます。 さらに、JAVA_TOOL_OPTIONS は、Java アプリケーションに -javaagent パラメーターを挿入して、ARMS エージェントが存在するパスを自動的に特定し、アプリケーションの起動時にエージェントをマウントします。

    Go アプリケーションの場合、-javaagent と同様のパラメーターは必要ありません。

  2. init コンテナをポッドに追加します。

    通常、init コンテナは ARMS エージェントファイルを準備し、ボリュームを使用してポッドにマウントします。 起動時に、アプリケーションは手順 1 の JAVA_TOOL_OPTIONS を使用して準備された ARMS エージェントを見つけ、Java プロセスにマウントします。 その後、ビジネスプロセス中の観測可能なデータを収集できます。

FAQ

ack-onepilot のバージョンは ARMS エージェントのバージョンと関連していますか?

いいえ、必ずしも関連しているわけではありません。 ack-onepilot コンポーネントは、バックエンドの構成.