From 09e4dc3150cb21897d07f449251e67bac461e5bd Mon Sep 17 00:00:00 2001 From: Doug Anson Date: Wed, 18 Mar 2026 10:31:34 -0500 Subject: [PATCH] dynatrace tech review and copilot review --- .../activegate-installation.md | 73 ++++++---- .../dynatrace-azure/background.md | 2 +- .../dynatrace-azure/firewall.md | 5 +- .../dynatrace-azure/instance.md | 4 +- .../dynatrace-azure/native-intstallation.md | 137 +++++++++--------- 5 files changed, 118 insertions(+), 103 deletions(-) diff --git a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/activegate-installation.md b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/activegate-installation.md index 02be2776cf..7b36db9b37 100644 --- a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/activegate-installation.md +++ b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/activegate-installation.md @@ -18,7 +18,7 @@ At the end of the installation, ActiveGate will be: * Installed and running as a system service * Listening on port **9999** for Dynatrace communication * Connected to your Dynatrace SaaS environment -* Verified on **Arm64 (Aarch64)** architecture +* Verified on **Arm64 (`aarch64`)** architecture ## Verify OneAgent installation @@ -51,11 +51,12 @@ This is your Dynatrace SaaS environment URL. ## Navigate to the ActiveGate deployment page -From the Dynatrace dashboard: +From the Dynatrace main dashboard: -- Select Deployment status -- Choose ActiveGate -- Install ActiveGate +* Select **Search** on the upper left and search for **Deployment**. +* Select **Deployment status**. +* Choose **ActiveGate**. +* Select **Install ActiveGate**. ![Dynatrace deployment status page showing no ActiveGate detected alt-txt#center](images/activegate1.png "Dynatrace ActiveGate not yet installed") @@ -65,8 +66,9 @@ Dynatrace will generate an installation command specifically for your environmen On the installer configuration page: -- Platform → Linux -- Architecture → ARM64 +* Platform -> Linux +* Architecture -> ARM64 +* Select **Generate token** to create an authentication token ![Dynatrace Install ActiveGate page showing deployment type Linux and architecture ARM selection alt-txt#center](images/activegate-install.png "Dynatrace ActiveGate installation configuration") @@ -95,24 +97,29 @@ wget -O Dynatrace-ActiveGate-Linux-arm.sh \ **Verify signature:** ```console -wget https://ca.dynatrace.com/dt-root.cert.pem ; ( echo 'Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="sha-256"; boundary="--SIGNED-INSTALLER"'; echo ; echo ; echo '----SIGNED-INSTALLER' ; cat Dynatrace-ActiveGate-Linux-arm64-1.331.24.20260210-044521.sh ) | openssl cms -verify -CAfile dt-root.cert.pem > /dev/null +wget https://ca.dynatrace.com/dt-root.cert.pem +( echo 'Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="sha-256"; boundary="--SIGNED-INSTALLER"'; echo; echo; echo '----SIGNED-INSTALLER'; cat Dynatrace-ActiveGate-Linux-arm.sh ) | openssl cms -verify -CAfile dt-root.cert.pem > /dev/null ``` + ![Dynatrace ActiveGate installer command for Linux ARM64 environment alt-txt#center](images/activegate-installation-commands.png "Dynatrace ActiveGate installer command") **Install ActiveGate as the privileged user:** +Copy the command under "Install ActiveGate as the privileged user" from your dashboard and prepend "sudo " to it to launch the install: + ```console -sudo /bin/bash Dynatrace-ActiveGate-Linux-arm64-1.331.24.20260210-044521.sh +sudo /bin/bash Dynatrace-ActiveGate-Linux-arm.sh ``` The installer automatically performs the following tasks: -- Downloads ActiveGate components -- Installs the ActiveGate service -- Configures communication with Dynatrace SaaS -- Starts the ActiveGate service +* Downloads ActiveGate components +* Installs the ActiveGate service +* Configures communication with Dynatrace SaaS +* Starts the ActiveGate service + +The output is similar to: -The output is similar to: ```output 2026-03-12 05:59:21 UTC Starting Dynatrace ActiveGate AutoUpdater... 2026-03-12 05:59:21 UTC Checking if Dynatrace ActiveGate AutoUpdater is running ... @@ -133,12 +140,14 @@ sudo systemctl status dynatracegateway ``` The output is similar to: + ```output ● dynatracegateway.service - Dynatrace ActiveGate service Loaded: loaded (/etc/systemd/system/dynatracegateway.service; enabled; preset: enabled) Active: active (running) since Thu 2026-03-12 05:59:07 UTC; 1min 7s ago Process: 20280 ExecStart=/opt/dynatrace/gateway/dynatracegateway start (code=exited, status=0/SUCCESS) ``` + This confirms that ActiveGate started successfully. ## Verify the ActiveGate communication port @@ -152,6 +161,7 @@ sudo ss -tulnp | grep 9999 ``` The output is similar to: + ```console tcp LISTEN 0 50 *:9999 *:* users:(("java",pid=20319,fd=403)) ``` @@ -168,9 +178,9 @@ Deployment Status → ActiveGates You should see your ActiveGate instance listed with: -- Host name -- Version -- Status: Connected +* Host name +* Version +* Status: Connected ![Dynatrace Deployment Status page showing ActiveGate instance connected and running alt-txt#center](images/activegate-ui.png "Dynatrace ActiveGate deployment status") @@ -178,7 +188,7 @@ You should see your ActiveGate instance listed with: ## Test application monitoring with Nginx -To validate that Dynatrace is collecting monitoring data correctly, deploy a simple web server on the virtual machine. Dynatrace OneAgent will automatically detect and monitor the process. +To validate that Dynatrace is collecting monitoring data correctly, deploy a simple web server on the virtual machine. Dynatrace OneAgent automatically detects and monitors the process. ### Install Nginx @@ -188,7 +198,8 @@ Update the package index and install the Nginx web server. sudo apt update sudo apt install -y nginx ``` -## Check the Nginx service status. + +## Check the Nginx service status ```console sudo systemctl status nginx @@ -218,20 +229,22 @@ Processes You should see a process similar to: -- nginx -- Dynatrace automatically begins collecting metrics such as: -- CPU usage -- memory consumption -- network activity -- request throughput +* `nginx` + +Dynatrace automatically begins collecting metrics such as: + +* CPU usage +* memory consumption +* network activity +* request throughput ![Dynatrace Infrastructure Explorer showing NGINX process monitoring on an ARM64 host alt-txt#center](images/nginx-monitoring.png "Dynatrace NGINX process monitoring dashboard") -## What you've accomplished +## What you've accomplished You've successfully installed Dynatrace ActiveGate on your Azure Ubuntu Arm64 virtual machine. Your environment now includes: -- Dynatrace OneAgent performing host monitoring -- ActiveGate routing monitors traffic securely -- Communication with Dynatrace SaaS through port 9999 -- Full compatibility with Arm64-based Cobalt 100 processors +* Dynatrace OneAgent performing host monitoring +* ActiveGate routing monitoring traffic securely +* Communication with Dynatrace SaaS through port 9999 +* Full compatibility with Arm64-based Cobalt 100 processors diff --git a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/background.md b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/background.md index 42f64494e5..bc683c9fac 100644 --- a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/background.md +++ b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/background.md @@ -20,7 +20,7 @@ Dynatrace automatically maps dependencies between services, hosts, containers, a There are three main components of Dynatrace: -- **Dynatrace OneAgent:** a lightweight monitoring agent installed on hosts that automatically collects metrics, logs, and traces from applications and infrastructure. Learn more in the [Dynatrace OneAgent documentation](https://docs.dynatrace.com/docs/ingest-from/dynatrace-oneagent). +- **Dynatrace OneAgent:** a lightweight monitoring agent installed on hosts that automatically collects metrics, logs, and traces from applications and infrastructure. Learn more in the [Dynatrace OneAgent documentation](https://docs.dynatrace.com/docs/ingest-from/dynatrace-oneagent). - **Dynatrace ActiveGate:** a secure gateway component that routes monitoring traffic, enables cloud integrations, and provides additional monitoring capabilities such as Kubernetes monitoring and synthetic monitoring. Learn more in the [Dynatrace ActiveGate documentation](https://docs.dynatrace.com/docs/ingest-from/dynatrace-activegate). diff --git a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/firewall.md b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/firewall.md index 9d4b90aa85..496c191b1d 100644 --- a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/firewall.md +++ b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/firewall.md @@ -10,7 +10,7 @@ layout: learningpathall To allow external traffic on port **9999** for Dynatrace ActiveGate running on an Azure virtual machine, open the port in the Network Security Group (NSG) attached to the virtual machine's network interface or subnet. -{{% notice Note %}} For more information about Azure setup, see [Getting started with Microsoft Azure Platform](/learning-paths/servers-and-cloud-computing/csp/azure/).{{% /notice %}} +{{% notice Note %}}For more information about Azure setup, see [Getting started with Microsoft Azure Platform](/learning-paths/servers-and-cloud-computing/csp/azure/).{{% /notice %}} ## Create a firewall rule in Azure @@ -36,8 +36,7 @@ Configure it using the following details: - **Destination port ranges:** **9999** - **Protocol:** TCP - **Action:** Allow -- **Priority:** 1000 -- **Name:** dynatrace-activegate +- **Name:** allow-tcp-9999 After filling in the details, select **Add** to save the rule. diff --git a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/instance.md b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/instance.md index 1da75b2837..d944e6561d 100644 --- a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/instance.md +++ b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/instance.md @@ -22,7 +22,7 @@ While the steps to create this instance are included here for convenience, you c ## Create an Arm-based Azure virtual machine -Creating a virtual machine based on Azure Cobalt 100 is no different to creating any other virtual machine in Azure. To create an Azure virtual machine: +Creating a virtual machine based on Azure Cobalt 100 is no different from creating any other virtual machine in Azure. To create an Azure virtual machine: - Launch the Azure portal and navigate to **Virtual Machines**. - Select **Create**, and select **Virtual Machine** from the drop-down list. @@ -63,7 +63,7 @@ Your virtual machine should be ready and running in a few minutes. You can SSH i ![Azure Portal showing successful VM deployment with green checkmark, VM name, resource group, and public IP address displayed in the confirmation notification alt-txt#center](images/final-vm.png "Successful VM deployment confirmation") -{{% notice Note %}}To learn more about Arm-based virtual machine in Azure, see “Getting Started with Microsoft Azure” in [Get started with Arm-based cloud instances](/learning-paths/servers-and-cloud-computing/csp/azure).{{% /notice %}} +{{% notice Note %}}To learn more about Arm-based virtual machines in Azure, see "Getting Started with Microsoft Azure" in [Get started with Arm-based cloud instances](/learning-paths/servers-and-cloud-computing/csp/azure/).{{% /notice %}} ## What you've accomplished and what's next diff --git a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/native-intstallation.md b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/native-intstallation.md index a070f5365e..e20406e84f 100644 --- a/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/native-intstallation.md +++ b/content/learning-paths/servers-and-cloud-computing/dynatrace-azure/native-intstallation.md @@ -13,9 +13,9 @@ To install Dynatrace OneAgent on an Azure Ubuntu 24.04 LTS Arm64 virtual machine At the end of the installation, Dynatrace is: * Installed and running as a host monitoring agent -* Connected to the Dynatrace SaaS environment +* Connected to your Dynatrace SaaS environment * Monitoring system processes and services automatically -* Verified on Arm64 (aarch64) architecture +* Verified on Arm64 (`aarch64`) architecture ## Update the system and install required tools @@ -34,21 +34,26 @@ Confirm that the virtual machine is running on the Arm64 architecture. uname -m ``` -output is similar to: +The output is similar to: + ```output aarch64 ``` + This confirms the system is using the Arm64 architecture required for Cobalt 100 processors. ## Create your Dynatrace trial environment -Fill in the required information: +In a web browser, go to [Dynatrace](https://dynatrace.com) and select **Try it free** followed by **Start trial**. + +Enter your email and then complete the requested fields: -- First name -- Last name -- Work email address -- Company name -- Country +* Create and supply a password for your trial account +* First name +* Last name +* Work email address +* Company name +* Country After submitting the form, Dynatrace creates a new SaaS monitoring environment for you. @@ -56,17 +61,16 @@ This process usually takes 1–2 minutes. ## Access your Dynatrace environment -After the environment is created, you will receive an email with a link similar to: +After the environment is created, your browser shows a button named **Launch Dynatrace**. Select it to open your Dynatrace environment. -```console -https://.live.dynatrace.com -``` +Make a note of the environment ID assigned to your account because it appears in your dashboard URL. **Example:** ```text -https://qzo72404.live.dynatrace.com +https://mbp77458.apps.dynatrace.com/ui/apps/dynatrace.launcher/getting-started ``` + The Environment ID uniquely identifies your Dynatrace tenant and is required for agent installation. ![Dynatrace environment login page showing the SaaS environment URL alt-txt#center](images/dynatrace-env-id.png "Dynatrace SaaS environment login") @@ -75,26 +79,26 @@ The Environment ID uniquely identifies your Dynatrace tenant and is required for From the Dynatrace dashboard: -- Select Deploy Dynatrace -- Choose OneAgent -- Select Linux +* Choose **OneAgent** +* Choose **Setup** ![Dynatrace deployment page showing OneAgent setup options alt-txt#center](images/oneagent1.png "Dynatrace OneAgent deployment setup page") This page generates the installation command tailored for your environment. -## Select ARM Architecture +## Select Arm64 architecture + +On the installer page, confirm these selections: -In the installer page: +* Platform -> Linux +* Architecture -> ARM64 +* Monitoring mode -> Full-stack monitoring -- Cloud platform → Linux -- Select architecture → ARM64 -- Select monitoring mode: - >Full-stack monitoring +Then select **Generate token** to create an authentication token. ![Dynatrace installer configuration page showing ARM64 architecture selection alt-txt#center](images/oneagent-arch.png "Dynatrace OneAgent ARM64 architecture selection") -## Copy OneAgent Installer Command +## Copy OneAgent installer command Dynatrace generates an installer command that includes your environment ID and API token.: @@ -106,82 +110,81 @@ wget -O Dynatrace-OneAgent-Linux-arm.sh \ **Example:** -```text +```console wget -O Dynatrace-OneAgent-Linux-arm.sh \ "https://qzo72404.live.dynatrace.com/api/v1/deployment/installer/agent/unix/default/latest?arch=arm" \ --header="Authorization: Api-Token DT_API_TOKEN" ``` -- The API token allows secure access to the Dynatrace installer. + +The API token allows secure access to the Dynatrace installer. Run this command on the virtual machine to download the installer. -**Verify signature** +## Verify installer signature For security, verify the installer signature using Dynatrace’s root certificate. ```console -wget https://ca.dynatrace.com/dt-root.cert.pem ; ( echo 'Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="sha-256"; boundary="--SIGNED-INSTALLER"'; echo ; echo ; echo '----SIGNED-INSTALLER' ; cat Dynatrace-OneAgent-Linux-x86-1.331.49.20260227-104933.sh ) | openssl cms -verify -CAfile dt-root.cert.pem > /dev/null +wget https://ca.dynatrace.com/dt-root.cert.pem +( echo 'Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="sha-256"; boundary="--SIGNED-INSTALLER"'; echo; echo; echo '----SIGNED-INSTALLER'; cat Dynatrace-OneAgent-Linux-arm.sh ) | openssl cms -verify -CAfile dt-root.cert.pem > /dev/null ``` -Run it on the VM. + +This command validates the downloaded installer before you run it. ![Dynatrace UI displaying the generated OneAgent installer command alt-txt#center](images/onagent-install.png "Dynatrace OneAgent installation command") ## Install OneAgent as the privileged user -Run: +Copy the command under **Install OneAgent as the privileged user** from your Dynatrace dashboard and prepend `sudo` to run the install. ```console -sudo /bin/sh Dynatrace-OneAgent-Linux-x86-1.331.49.20260227-104933.sh --set-monitoring-mode=fullstack --set-app-log-content-access=true +sudo /bin/sh Dynatrace-OneAgent-Linux-arm.sh --set-monitoring-mode=fullstack --set-app-log-content-access=true ``` -The output is similar to: +The output is similar to: + ```output -2026-03-12 05:59:21 UTC Starting Dynatrace ActiveGate AutoUpdater... -2026-03-12 05:59:21 UTC Checking if Dynatrace ActiveGate AutoUpdater is running ... -2026-03-12 05:59:21 UTC Dynatrace ActiveGate AutoUpdater is running. -2026-03-12 05:59:21 UTC Cleaning autobackup... -2026-03-12 05:59:21 UTC Removing old installation log files... -2026-03-12 05:59:21 UTC -2026-03-12 05:59:21 UTC -------------------------------------------------------------- -2026-03-12 05:59:21 UTC Installation finished successfully. +Starting Dynatrace OneAgent installer... +Installing OneAgent... +Setting agent configuration... +Installation finished successfully. ``` The installer performs several tasks automatically: -- Downloads monitoring components -- Configures kernel instrumentation -- Installs the OneAgent system service -- Registers the host with your Dynatrace environment +* Downloads monitoring components +* Configures kernel instrumentation +* Installs the OneAgent system service +* Registers the host with your Dynatrace environment -## Verify OneAgent Service +## Verify OneAgent service Check that the Dynatrace monitoring service is running. -This confirms the monitoring agent started successfully. ```console sudo systemctl status oneagent ``` -The output is similar to: +The output is similar to: + ```output -● dynatracegateway.service - Dynatrace ActiveGate service - Loaded: loaded (/etc/systemd/system/dynatracegateway.service; enabled; preset: enabled) - Active: active (running) since Thu 2026-03-12 05:59:07 UTC; 1min 7s ago - Process: 20280 ExecStart=/opt/dynatrace/gateway/dynatracegateway start (code=exited, status=0/SUCCESS) - Main PID: 20316 (dynatracegatewa) +● oneagent.service - Dynatrace OneAgent + Loaded: loaded (/etc/systemd/system/oneagent.service; enabled; preset: enabled) + Active: active (running) ``` This confirms the monitoring agent started successfully. -## Verify Dynatrace Processes +## Verify Dynatrace processes -This confirms the monitoring agent started successfully. +You can also check the OneAgent processes from the terminal. ```console ps aux | grep oneagent ``` -The output is similar to: +The output is similar to: + ```output dtuser 17754 0.0 0.0 307872 4388 ? Ssl 05:48 0:00 /opt/dynatrace/oneagent/agent/lib64/oneagentwatchdog -bg -config=/opt/dynatrace/oneagent/agent/conf/watchdog.conf dtuser 17761 0.2 0.3 1183000 59136 ? Sl 05:48 0:06 oneagentos -Dcom.compuware.apm.WatchDogTimeout=900 -watchdog.restart_file_location=/var/lib/dynatrace/oneagent/agent/watchdog/watchdog_restart_file -Dcom.compuware.apm.WatchDogPipe=/var/lib/dynatrace/oneagent/agent/watchdog/oneagentos_pipe_17754 @@ -193,7 +196,7 @@ azureus+ 23847 0.0 0.0 9988 2772 pts/0 S+ 06:33 0:00 grep --color= This confirms the monitoring agent started successfully. -## Confirm Host Detection in Dynatrace +## Confirm host detection in Dynatrace Return to the Dynatrace web interface. @@ -206,7 +209,7 @@ Infrastructure & Operations You should see: -```outout +```output Host name: OS: Linux Architecture: ARM64 @@ -215,7 +218,7 @@ Monitoring mode: Full Stack ![Dynatrace hosts dashboard showing detected ARM64 virtual machine alt-txt#center](images/dynatrace-host.png "Dynatrace host monitoring dashboard") -## Check Automatic Process Discovery +## Check automatic process discovery Dynatrace automatically discovers running applications and services. @@ -227,10 +230,10 @@ Hosts → Processes Dynatrace identifies services such as: -- system processes -- web servers -- databases -- container runtimes +* system processes +* web servers +* databases +* container runtimes ![Dynatrace process monitoring dashboard showing automatically discovered services alt-txt#center](images/dynatrace-process.png "Dynatrace process discovery view") @@ -238,10 +241,10 @@ Dynatrace identifies services such as: You've successfully installed Dynatrace OneAgent on your Azure Ubuntu Arm64 virtual machine. Your installation includes: -- Dynatrace OneAgent is installed and running as a system service -- Automatic startup enabled through systemd -- Secure connection to the Dynatrace SaaS platform -- Full-stack monitoring of system resources and processes -- Arm64-native monitoring on Azure Cobalt 100 processors +* Dynatrace OneAgent installed and running as a system service +* Automatic startup enabled through systemd +* Secure connection to the Dynatrace SaaS platform +* Full-stack monitoring of system resources and processes +* Arm64-native monitoring on Azure Cobalt 100 processors Next, you'll install Dynatrace ActiveGate to enable additional capabilities such as Kubernetes monitoring, secure data routing, and extension support.