InstrumentationRule プロパティ

次の表に、InstrumentationRule で自動インストルメンテーションを設定するために使用できるプロパティを示します。

パラメータ名 デフォルト値 説明
analyticsHostN/A

分析エージェントのホスト名。

このパラメータは、Node.js エージェントまたは .NET Core エージェントでデフォルトのトランザクションデータを Analytics エージェントに送信する必要がある場合に必須となります。

analyticsPortN/A

分析エージェントのリスニングポート。

たとえば、分析エージェントがポート 9090 でリッスンしている場合、このパラメータの値は 9090 です。

このパラメータは、Node.js エージェントでデフォルトのトランザクションデータを分析エージェントに送信する必要がある場合に、defaultAnalyticsHost で必要となります。

analyticsSslEnabledN/A

この値は、Analytics エージェントポートが SSL 対応かどうかに基づいています。ポートが SSL 対応でない場合は、値を false と指定します。

defaultAnalyticsPortこのパラメータは、Node.js エージェントでデフォルトのトランザクションデータを分析エージェントに送信する必要がある場合に、defaultAnalyticsHost と で必要となります。

containerMatchStringN/A

これは、値を満たす名前を持つコンテナを選択するための正規表現値です。このパラメータでは、defaultInstrumentContainer または instrumentContainer 内で select オプションを使用する必要があります。

このパラメータとともに select オプションを使用すると、クラスタエージェントは正規表現値に一致するコンテナをインストゥルメント化します。

このパラメータは、defaultContainerMatchString に指定されたデフォルト値を上書きします。

customAgentConfigSourceN/A

このパラメータは、ConfigMaps を介してインストゥルメント化するエージェントのカスタム設定を使用するオプションを提供します。このパラメータでは、クラスタエージェントの名前空間に必要な ConfigMap を作成する必要があります。このパラメータは、クラスタエージェントの YAML ファイルから動的に設定できます。YAML ファイルに加えた変更は、アプリケーションを再起動することなく、インストゥルメント化されたすべてのエージェントに対して更新されます。同様に、ConfigMap の設定に加えた変更は、アプリケーションを再起動することなく、すべてのインストゥルメント化されたエージェントに対して更新されます。

  • configMapName:ConfigMap の名前を指定します。これにより、エージェントは同じカスタム ConfigMap を使用して、インストゥルメント化されたすべてのエージェント名前空間を更新できます。
  • subDir:(Java エージェントの場合は必須)ConfigMap がマウントされる場所の相対パスを指定します。/ver20.8.0.3686/conf20.8.0.3686例:。ここで、 は Java エージェントのバージョンです。このディレクトリは、Java エージェントのバージョンによって異なる場合があります。例 6 を参照してください。ConfigMap の絶対マウントパスは <agent home path>/subDir です。ConfigMapConfigMap の絶対マウントパスは です。この は、ターゲットアプリケーションの名前空間にある同じ名前の ConfigMap を置き換えます。
注: 展開から ConfigMap ファイル(ルールで使用)を削除する必要がある場合は、最初にこのパラメータをクラスタエージェントの YAML ファイルから削除し、次にクラスタエージェントの名前空間から ConfigMap を削除する必要があります。
customSecretNameN/A

カスタムシークレット名。これは、ライセンスルールを定義するときに生成される名前と同じです。

customSecretKeyN/A

カスタムシークレットキー。これは、ライセンス ルールを定義するときに生成されるキーと同じです。

instrumentContainer

first

このパラメータは、インストゥルメント化する必要があるコンテナを選択するオプションを提供します。次の値のいずれでも指定できます。

  • first:これはデフォルト値です。この値を指定すると、クラスタエージェントはポッド内の最初のコンテナをインストゥルメント化します。
  • all:この値を指定すると、クラスタエージェントはポッド内のすべてのコンテナをインストゥルメント化します。
  • select:この値を指定すると、クラスタエージェントは、defaultContainerMatchString パラメータまたは containerMatchString パラメータで指定された正規表現と一致する名前のコンテナのみをインストゥルメント化します。
languageN/A

インストゥルメント化されるアプリケーションの言語。

サポート対象の言語は次のとおりです。

  • dotnetcore
  • java
  • nodejs
matchStringN/A

ルールが適用される展開名を照合するための正規表現。

このパラメータに値を指定しない場合、クラスタエージェントは defaultInstrumentMatchString で指定された値を使用し、その値を満たすすべての展開をインストゥルメント化します。

namespaceRegex""このルールの一部としてインストゥルメント化される名前空間を指定する正規表現。名前空間は、パイプ記号(|) を使用してスペースを使用せずに区切ることができます。
labelMatch{}このルールに含めるラベルの key-value ペアのリスト。 いずれかのラベルと一致すれば満たされます。例:

labelMatch

  • label1: value1

  • label1: value2

  • label2: value2

label1: value2 のみが一致する場合、インストルメンテーションは期待どおりに機能します。

appName<defaultAppName>

コントローラに報告するために Java エージェントによって使用されるアプリケーション名。これは defaultAppName を上書きします。

値が指定されていない場合は、構成された defaultAppName が使用されます。

appNameLabelN/A

Splunk AppDynamicsこのラベルの値は、 アプリケーション名になります。

customAgentConfigN/A

このパラメータは、Java および Node.js アプリケーションに固有です。

アプリケーション フレームワークでインストルメンテーションに特定の設定が必要な場合は、カスタムシステムプロパティを追加できます。

Java アプリケーションの場合:この値は、他の Java エージェントプロパティとともに設定された または 変数に追加されます。

Node.js アプリケーションの場合:この値は NODE_OPTIONS に追加されます。

tierName""

コントローラに報告するために Java エージェントによって使用される階層名。

階層名が指定されていない場合は、階層の名前戦略が手動のとき、展開名がデフォルトとして使用されます。

tierNameLabelN/A

このラベルの値は、AppDynamics 階層名になります。

nodeName""このパラメータは、階層の下のノードに順番に名前を付けるために使用されます。abcたとえば、階層内で使用される 2 つのノードがあり、アプリケーション環境の展開名は とします。構成ファイルでノード名の値を指定しない場合、クラスタエージェントは次をノード名とします。
  • abc-1
  • abc-2
reuseNodeName true

このパラメータは、Java エージェントにのみ適用されます。

ノード名を再利用する必要がない場合は、このプロパティを false に設定します。

env""

このパラメータは、Java アプリケーションに固有です。

アプリケーション エージェントのシステムプロパティが追加される環境変数。指定すると、このインストルメンテーション ルールと一致する展開の defaultEnv を上書きします。

何も指定されていない場合、デフォルトは defaultEnv(構成されている場合)または env JAVA_TOOL_OPTIONS(デフォルトのクラスタレベルで構成されていない場合)になります。

imageInfo
image:  "docker.io/appdynamics/java-agent:latest"
agentMountPath: "/opt/appdynamics"
imagePullPolicy: "IfNotPresent"
dotnetcore:
image: "docker.io/appdynamics/dotnet-core-agent:latest"
agentMountPath: /opt/appdynamics
alpineInitContainerImage: alpine
imagePullPolicy: "IfNotPresent"
nodejs:
image: "docker.io/appdynamics/nodejs-agent:20.8.0-stretch-slimv14"
agentMountPath: /opt/appdynamics
imagePullPolicy: "IfNotPresent"

次のプロパティのいずれかを選択できます。

  • image:エージェントイメージの場所、およびそのタグ/バージョン。
  • agentMountPath:イメージファイルシステム内のイメージアーティファクトの場所。デフォルトは /opt/appdynamics です。この構成は、パスがデフォルトパスと異なる場合にのみ必要です。
  • alpineInitContainerImage:init コンテナの .NET インストゥルメンテーションに使用される Alpine イメージの場所とそのタグ/バージョン。
  • imagePullPolicy:エージェントの Docker イメージに必要なプルポリシー。デフォルトは IfNotPresent です。要件に基づいて、次のプルポリシーのいずれかを選択できます。
    • Always
    • IfNotPresent
    • Never
    このパラメータは、自動インストルメンテーション中に追加される init コンテナで使用されます。デフォルト値は IfNotPresent です。

このルールで言及されている特定の言語について、このインストルメンテーション ルールと一致する展開の image-info を上書きします。

デフォルトのクラスタレベルの構成を上書きし、この特定の選択したルールにカスタムのエージェントバージョンを使用する場合は、これを構成する必要があります。

netvizInfo

bciEnabled;true

ポート:3892

ネットワークの可視性アプリケーション エージェントの netviz を設定するには、「Kubernetes CLI を使用したインフラストラクチャの可視性のインストール」を参照して、ネットワークエージェントをインストールします。

デフォルトでは、netviz netviz です。

サポートされる値は以下の通りです:

  1. bciEnablednetviz が有効になっているかどうかを示す boolean フラグ。
  2. port:ネットワークエージェントがリッスンしているポート(デフォルトは 3892))。デフォルトポート以外のポートでネットワークエージェントを実行している場合にのみ、この値を上書きします。

runAsGroup

0

アプリケーションコンテナを非ルートユーザとして構成した場合は、対応するグループの groupId を提供します。

これにより、エージェント アーティファクトに適切なファイル権限が設定されます。

この値は、インストゥルメント化されたすべてのリソースに適用されます。

デフォルトのインストゥルメンテーション用に設定されている runAsGroup のデフォルト値を上書きする必要がある場合、またはこのルールを満たすリソースに特定の値が必要な場合は、このパラメータを追加します。

runAsUser

0

:アプリケーションコンテナを非ルートユーザーとして構成した場合は、対応するユーザーの userId を提供します。

これにより、エージェント アーティファクトに適切なファイル権限が設定されます。

この値は、インストゥルメント化されたすべてのリソースに適用されます。

デフォルトのインストゥルメンテーション用に設定されている runAsUser のデフォルト値を上書きする必要がある場合、またはこのルールを満たすリソースに特定の値が必要な場合は、このパラメータを追加します。

securityContext

該当なし

必要なセキュリティコンテキスト制約パラメータを指定します。securityContext 内で使用できるパラメータのリストについては、「securityContext パラメータ」を参照してください。

SecurityContext パラメータ

securityContext パラメータ内で次のパラメータを使用できます。

注: OpenShift バージョンが 4.14 より新しい場合は、securityContext 内のすべての子パラメータが、セキュリティコンテキスト制約(SCC)で概説されている許容値に基づいて指定されていることを確認します。Red Hat OpenShift ドキュメントの「セキュリティコンテキスト上の制約」を参照してください。たとえば、インストルメンテーション ルールの RunAsUser プロパティを使用する場合、ユーザー ID(UID)は許容範囲内である必要があります。UID の SCC の許容範囲は 1000 ~ 9001 です。したがって、RunAsUser 値はこの範囲内でのみ追加できます。他のセキュリティ コンテキスト パラメータについても同様です。
パラメータ名 デフォルト値 説明

runAsGroup

0

アプリケーションコンテナを非ルートユーザーとして構成した場合は、対応するグループの groupId を指定します。

これにより、エージェント アーティファクトに適切なファイル権限が設定されます。

この値は、インストゥルメント化されたすべてのリソースに適用されます。

デフォルトのインストルメンテーション用に設定されている runAsGroup のデフォルト値を上書きする必要がある場合、またはこのルールを満たすリソースに特定の値が必要な場合は、このパラメータを追加します。

runAsUser

0

アプリケーションコンテナを非ルートユーザーとして構成した場合は、対応するユーザーの userId を提供します。

これにより、エージェント アーティファクトに適切なファイル権限が設定されます。

この値は、インストゥルメント化されたすべてのリソースに適用されます。

デフォルトのインストルメンテーション用に設定されている runAsUser のデフォルト値を上書きする必要がある場合、またはこのルールを満たすリソースに特定の値が必要な場合は、このパラメータを追加します。

allowPrivilegeEscalation該当なし

プロセスが親プロセスよりも多くの権限を取得できるかどうかを制御します。次のコンテナとして実行されている場合、この値は true です。

  • 特権コンテナ
  • CAP_SYS_ADMIN
注:
  • このパラメータは、spec.os.name が Windows の場合は使用できません。

  • このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。

capabilities該当なし

実行中のコンテナの POSIX 機能を追加または削除します。これは、コンテナランタイムにデフォルトの機能セットを使用します。

注:
  • このパラメータは、spec.os.name が Windows の場合は使用できません。

  • このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。

privilegedいいえ

ホストでのルートに相当する特権モードでコンテナを実行します。

注:
  • このパラメータは、spec.os.name が Windows の場合は使用できません。

  • このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。

procMountDefaultProcMount

コンテナに使用する proc マウントのタイプ。

注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。
readOnlyRootFilesystemいいえ

このコンテナに読み取り専用のルートファイルシステムがあるかどうかを指定します。

注:
  • このパラメータは、spec.os.name が Windows の場合は使用できません。

  • このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。

runAsNonRootいいえ

コンテナを非ルートユーザーとして実行する必要があるかどうかを指定します。

この値が true の場合、Kubelet は実行時にイメージを検証して、ルートとして実行したときにコンテナの開始が失敗することを確認します。このパラメータが指定されていない場合、または値が false の場合、検証は行われません。

注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。
seLinuxOptions該当なし

SELinux コンテキストをコンテナに適用します。このパラメータが指定されていない場合、コンテナランタイムは各コンテナにランダムな SELinux コンテキストを割り当てます。

注:
  • このパラメータは、spec.os.name が Windows の場合は使用できません。

  • このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。

seccompProfile該当なし

コンテナで使用される seccomp オプションを指定します。ポッドレベルとコンテナレベルの両方で seccomp オプションが指定されている場合、コンテナオプションはポッドオプションをオーバーライドします。

注:
  • このパラメータは、spec.os.name が Windows の場合は使用できません。

  • このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。

windowsOptions該当なし

すべてのコンテナに Windows 固有のオプションを指定します。

注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。