From 06c6a86df91458ec5564df1fbbbed01f00cc82e6 Mon Sep 17 00:00:00 2001 From: mangulonr Date: Mon, 2 Sep 2024 09:01:51 -0400 Subject: [PATCH 1/3] Update kubernetes-summary-page.mdx --- .../monitoring/kubernetes-summary-page.mdx | 34 +++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx b/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx index fa0f5e89bcb..06b2c2c0d19 100644 --- a/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx +++ b/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx @@ -133,6 +133,36 @@ The Kubernetes page in APM offers the following information about your applicati ## Link your applications to Kubernetes [#link-app] -You can surface Kubernetes metadata and link it to your APM agents. The `MutatingAdmissionWebhook` is used to add the required environment variables to Pods. APM uses injected environment variables to display the specific Kubernetes deployment information related to that APM application. +You can surface Kubernetes metadata and link it to your APM agents no matter if you use NR proprietary agents or OpenTelemetry. +APM uses the Kubernetes metadata to display the specific Kubernetes deployment information related to that APM application. + +### New Relic proprietary instrumentation + +New Relic's metadata injection is automatically added during the installation of New Relic's Kubernetes integration through the `nri-metadata-injection` parameter. +The `MutatingAdmissionWebhook` installed by the K8s instrumentation is used to add the required environment variables to Pods. +The information included in the environment variables is propagated to the APM metrics and entities. +For more information, see how to [link your applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-your-applications-kubernetes/). + +The following attributes are required in the APM service entity to display the Kubernetes summary page + +* k8s.clusterName +* k8s.namespaceName +* k8s.deploymentName + + +### OpenTelemetry instrumentation + +OpenTelemetry collector provides the Kubernetes attributes processor to enrich the APM telemetry with Kubernetes metadata. + +* First, you need to define an environment variable in your deployment manifest +* Second, you need to configure the collector to inject the relevant Kubernetes metadata thanks to the APM environment variable. + +All the APM metrics and entities will automatically include Kubernetes metadata thanks to the K8sattributes processor. +For more information, see how to [link your OpenTelemetry applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-otel-applications-kubernetes/). + +The following attributes are required in the APM service entity to display the Kubernetes summary page + +* k8s.cluster.name +* k8s.deployment.name +* k8s.namespace.name -New Relic's metadata injection is automatically added during the installation of New Relic's Kubernetes integration through the `newrelic-metadata-injection` label. For more information, see how to [link your applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-your-applications-kubernetes/). From c84608093408f598a0251d529afd9cceda2b9016 Mon Sep 17 00:00:00 2001 From: mangulonr Date: Mon, 2 Sep 2024 09:22:11 -0400 Subject: [PATCH 2/3] Update kubernetes-summary-page.mdx --- .../monitoring/kubernetes-summary-page.mdx | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx b/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx index 06b2c2c0d19..d96d6efaaf2 100644 --- a/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx +++ b/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx @@ -138,9 +138,10 @@ APM uses the Kubernetes metadata to display the specific Kubernetes deployment i ### New Relic proprietary instrumentation -New Relic's metadata injection is automatically added during the installation of New Relic's Kubernetes integration through the `nri-metadata-injection` parameter. -The `MutatingAdmissionWebhook` installed by the K8s instrumentation is used to add the required environment variables to Pods. -The information included in the environment variables is propagated to the APM metrics and entities. +When you install New Relic's Kubernetes integration, New Relic's metadata injection comes into play automatically via the nri-metadata-injection parameter. +It's the MutatingAdmissionWebhook, set up by the Kubernetes instrumentation, that takes on the job of tagging your Pods with the necessary environment variables. +From there, the data captured in these variables gets carried over to your APM metrics and entities, enriching them with valuable context. + For more information, see how to [link your applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-your-applications-kubernetes/). The following attributes are required in the APM service entity to display the Kubernetes summary page @@ -152,12 +153,12 @@ The following attributes are required in the APM service entity to display the K ### OpenTelemetry instrumentation -OpenTelemetry collector provides the Kubernetes attributes processor to enrich the APM telemetry with Kubernetes metadata. +The OpenTelemetry collector offers a Kubernetes attributes processor that enrich APM telemetry with Kubernetes metadata. * First, you need to define an environment variable in your deployment manifest -* Second, you need to configure the collector to inject the relevant Kubernetes metadata thanks to the APM environment variable. +* Next, adjust the collector's configuration so it pulls in the pertinent Kubernetes metadata using that APM environment variable. -All the APM metrics and entities will automatically include Kubernetes metadata thanks to the K8sattributes processor. +As a result, all the APM metrics and entities will include Kubernetes metadata thanks to the K8sattributes processor. For more information, see how to [link your OpenTelemetry applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-otel-applications-kubernetes/). The following attributes are required in the APM service entity to display the Kubernetes summary page @@ -166,3 +167,10 @@ The following attributes are required in the APM service entity to display the K * k8s.deployment.name * k8s.namespace.name + +The Kubernetes summary page won't function correctly if there's a mix of different instrumentation providers (newRelic and OpenTelemetry). +To have it work properly, both Kubernetes and APM need to be monitored either exclusively through New Relic's proprietary agents or entirely via OpenTelemetry. + +As of now, we don't support hybrid scenarios. + + From f804b2f90e4309114057adb4f82aad359a6310bc Mon Sep 17 00:00:00 2001 From: nbaenam Date: Fri, 6 Sep 2024 15:36:56 +0200 Subject: [PATCH 3/3] style(K8s): Added TW edits --- .../monitoring/kubernetes-summary-page.mdx | 42 +++++++++---------- 1 file changed, 19 insertions(+), 23 deletions(-) diff --git a/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx b/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx index d96d6efaaf2..a55846c59c9 100644 --- a/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx +++ b/src/content/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page.mdx @@ -133,43 +133,39 @@ The Kubernetes page in APM offers the following information about your applicati ## Link your applications to Kubernetes [#link-app] -You can surface Kubernetes metadata and link it to your APM agents no matter if you use NR proprietary agents or OpenTelemetry. -APM uses the Kubernetes metadata to display the specific Kubernetes deployment information related to that APM application. +You can surface Kubernetes metadata and link it to your APM agents, whether you use NR's proprietary agents or OpenTelemetry. uses the Kubernetes metadata to display the specific Kubernetes deployment information related to that APM application. -### New Relic proprietary instrumentation +### New Relic proprietary instrumentation [#nr-proprietary] -When you install New Relic's Kubernetes integration, New Relic's metadata injection comes into play automatically via the nri-metadata-injection parameter. -It's the MutatingAdmissionWebhook, set up by the Kubernetes instrumentation, that takes on the job of tagging your Pods with the necessary environment variables. -From there, the data captured in these variables gets carried over to your APM metrics and entities, enriching them with valuable context. +When you [install New Relic's Kubernetes integration](/install/kubernetes/), New Relic's metadata injection comes into play automatically via the `nri-metadata-injection` parameter. The `MutatingAdmissionWebhook`, set up by the Kubernetes instrumentation, takes care of tagging your pods with the necessary environment variables. From there, the data captured in these variables gets carried over to your APM metrics and entities, enriching them with valuable context. For more information, see how to [link your applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-your-applications-kubernetes/). -The following attributes are required in the APM service entity to display the Kubernetes summary page +The following attributes are required in the APM service entity to display the Kubernetes summary page: -* k8s.clusterName -* k8s.namespaceName -* k8s.deploymentName +* `k8s.clusterName` +* `k8s.namespaceName` +* `k8s.deploymentName` -### OpenTelemetry instrumentation +### OpenTelemetry instrumentation [#otel-instrumentation] -The OpenTelemetry collector offers a Kubernetes attributes processor that enrich APM telemetry with Kubernetes metadata. +The [OpenTelemetry collector](/docs/opentelemetry/get-started/collector-processing/opentelemetry-collector-processing-intro/) offers a Kubernetes attributes processor that enrich APM telemetry with Kubernetes metadata. -* First, you need to define an environment variable in your deployment manifest -* Next, adjust the collector's configuration so it pulls in the pertinent Kubernetes metadata using that APM environment variable. +1. You need to define an environment variable in your deployment manifest. -As a result, all the APM metrics and entities will include Kubernetes metadata thanks to the K8sattributes processor. -For more information, see how to [link your OpenTelemetry applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-otel-applications-kubernetes/). +2. Adjust the configuration of the collector to retrieve the appropriate Kubernetes metadata using this APM environment variable. -The following attributes are required in the APM service entity to display the Kubernetes summary page +As a result, all the APM metrics and entities will include Kubernetes metadata thanks to the K8sattributes processor. For more information, see how to [link your OpenTelemetry applications to Kubernetes](/docs/kubernetes-pixie/kubernetes-integration/advanced-configuration/link-otel-applications-kubernetes/). -* k8s.cluster.name -* k8s.deployment.name -* k8s.namespace.name +The following attributes are required in the APM service entity to display the Kubernetes summary page: - -The Kubernetes summary page won't function correctly if there's a mix of different instrumentation providers (newRelic and OpenTelemetry). -To have it work properly, both Kubernetes and APM need to be monitored either exclusively through New Relic's proprietary agents or entirely via OpenTelemetry. +* `k8s.cluster.name` +* `k8s.deployment.name` +* `k8s.namespace.name` + + +The Kubernetes summary page won't work properly if there is a mix of different instrumentation providers (newRelic and OpenTelemetry). For it to work properly, both Kubernetes and APM need to be monitored either exclusively through New Relic's proprietary agents or entirely through OpenTelemetry. As of now, we don't support hybrid scenarios.