通过 InitContainers 在 Kubernetes 中添加 APM Insight .NET 代理
以下步骤将指导您使用 init containers 将 APM Insight .NET 代理集成到 Kubernetes 部署中。
- 在应用程序命名空间中为 Site24x7 许可证密钥创建一个 Secret。注意
kubectl create secret generic s247licensekey --fromliteral=S247_LICENSE_KEY=YOUR_LICENSE_KEY_HERE
注意请将 YOUR_LICENSE_KEY_HERE 替换为 Site24x7 客户端中的实际许可证密钥值。
- 创建一个空的卷挂载,用于在 InitContainers 过程中复制代理文件。
示例:
volumeMounts: - name: s247dotnetcoreagent
- 在您的 Helm Chart/部署 YAML 文件中,添加以下 InitContainers 命令,并在 initContainer 和应用程序容器中均挂载该卷:
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 - 将以下环境变量添加到应用程序容器中。
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_Monitor_Name"注意请将 YOUR_APM_APPLICATION_NAME 的值替换为您的应用程序名称。
