Help Docs

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. 

  1. Create a secret for the Site24x7 license key in your application namespace. Note
    kubectl create secret generic s247licensekey --fromliteral=S247_LICENSE_KEY=YOUR_LICENSE_KEY_HERE
    Note

    Replace YOUR_LICENSE_KEY_HERE with the appropriate license key value from the Site24x7 client. 

  1. Create an empty volume mount that will be used to copy the agent files during the InitContainers process.

    Example:

    volumeMounts: 
          - name: s247dotnetcoreagent
    
  1. 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
    
  2. 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: CORECLR_SITE24X7_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_Monitor_Name"
    
    Note

    Replace your application name with YOUR_APM_APPLICATION_NAME value.

Was this document helpful?

Would you like to help us improve our documents? Tell us what you think we could do better.


We're sorry to hear that you're not satisfied with the document. We'd love to learn what we could do to improve the experience.


Thanks for taking the time to share your feedback. We'll use your feedback to improve our online help resources.

Shortlink has been copied!