Adding APM Insight .NET agent in Kubernetes via InitContainers
The below steps will guide you through the process of integrating the APM Insight .NET agent into your Kubernetes deployment using init containers.
Create a secret for the Applications Manager Apminsight license key in your application namespace
- kubectl create secret generic s247licensekey --fromliteral=S247_LICENSE_KEY=YOUR_LICENSE_KEY_HERE
Note:
Replace YOUR_LICENSE_KEY_HERE with the appropriate apminsight license key value from the Applications Manager console.
Create an empty volume mount that will be used to copy the agent files during the InitContainers process.
Example:
-
volumeMounts:
-
- name: s247dotnetcoreagent
Include the following InitContainers command and mount the volume in both initContainer and your application container in your helm chart/deployment YAML file:
-
kind: Deployment
-
spec:
-
containers:
-
- name: dotnet-app
-
image: microsoft/dotnet-samples:aspnetapp
-
volumeMounts:
-
- mountPath: /home/APMDotNetAgent
-
name: s247dotnetcoreagent
-
initContainers:
-
- name: init-site24x7-agent
-
image: site24x7/apminsight-dotnetagent:latest
-
command: ['cp', '-r', '/opt/site24x7/APMDotNetAgent', '/home']
-
volumeMounts:
-
- name: s247dotnetcoreagent
-
mountPath: /home/APMDotNetAgent
Add the following environment variables to application containers.
-
spec:
-
containers:
-
- name: dotnet-app
-
env:
-
- name: S247_LICENSE_KEY
-
valueFrom:
-
secretKeyRef:
-
name: s247licensekey
-
key: S247_LICENSE_KEY
-
- name: CORECLR_ENABLE_PROFILING
-
value: "1"
-
- name: CORECLR_PROFILER
-
value: "{9D363A5F-ED5F-4AAC-B456-75AFFA6AA0C8}"
-
- name: DOTNETCOREAGENT_HOME
-
value: "/home/APMDotNetAgent"
-
- name: CORECLR_PROFILER_PATH_64
-
value: "/home/APMDotNetAgent/x64/libClrProfilerAgent.so"
-
- name: CORECLR_PROFILER_PATH_32
-
value: "/home/APMDotNetAgent/x86/libClrProfilerAgent.so"
-
- name: DOTNET_STARTUP_HOOKS
-
value: "/home/APMDotNetAgent/netstandard2.0/DotNetAgent.Loader.dll"
-
- name: MANAGEENGINE_COMMUNICATION_MODE
-
value: "direct"
-
- name: SITE24X7_APP_NAME
-
value: "YOUR_APM_APPLICATION_NAME"
-
- name: APMINSIGHT_HOST
-
value: "APPLICATIONS_MANAGER_URL"
Note:
Replace your application name with YOUR_APM_APPLICATION_NAME value, and apm url with APPLICATIONS_MANAGER_URL.
New to ADSelfService Plus?