オンプレミスコントローラでの自動インストゥルメンテーションの使用
.NET Core および Node.js アプリケーションでは、認証局(CA)によって署名された証明書のみがサポートされます。自己署名証明書はサポートされていません。コントローラが自己署名証明書を使用している場合は、Java アプリケーションの自動インストゥルメンテーションのみがサポートされます。
オンプレミスコントローラで自動インストゥルメンテーションをサポートするには、クラスターエージェントのカスタム SSL シークレットを設定し、クラスターエージェントがオンプレミスコントローラに SSL を使用するように設定します。クラスターエージェントは、証明書を自動インストゥルメント化されたポッドにコピーします。このポッドでは、アプリケーション サーバー エージェントがオンプレミスコントローラとの接続を確立するためにこれらの証明書を使用します。
Node.js とオンプレミスコントローラの構成
クラスターエージェントの custom SSL Secret プロパティの構成に加えて、オンプレミスコントローラを使用する自動インストゥルメント化された Node.js アプリケーションに、次の手順を実行する必要があります。
-
shim.js certificateFile Node.js Settings Reference という名前のファイルを作成します。
require("appdynamics").profile({ certificateFile: "/opt/appdynamics-nodejs/custom-ssl.pem" }); -
ConfigMap appdynamics shim.js を作成します。
kubectl create cm nodejs-cert-configmap --from-file ./shim.js -n appdynamics -
cluster-agent.yaml customAgentConfigSource/configMapName ConfigMap nodejs-cert-configmap を編集します。
apiVersion: cluster.appdynamics.com/v1alpha1 kind: Clusteragent metadata: name: k8s-cluster-agent namespace: appdynamics spec: # content removed for brevity # ... instrumentationRules: - namespaceRegex: dev appName: MyNodeJSApp language: nodejs customAgentConfigSource: - configMapName: nodejs-cert-configmap imageInfo: image: "docker.io/appdynamics/nodejs-agent:20.12.0-10.0.0-alpine" agentMountPath: /opt/appdynamics -
更新されたクラスタエージェント構成を適用します。
kubectl apply -f cluster-agent.yamlクラスタエージェントは、ポッドを再作成し、証明書ファイルをポッドにコピーする Node.js ワークロード仕様を更新します。証明書ファイルは、 NODE_OPTIONS shim.js を介して Node.js エージェントによって参照されます。