Before you begin
What you'll need:
- Dynatrace OneAgent download link (Windows or Linux).
- Access to your AWS Console
We tested Dynatrace OneAgent installation with the following applications:
- Tomcat on Linux
- Apache HTTP Server and Python on Linux
What is AWS Elastic Beanstalk?
AWS Elastic Beanstalk is a service provided by Amazon that gives you the option of deploying and auto scaling applications and services. Using a predefined
.ebextensions configuration file you can modify your deployment by supplying additional resources or packages. For more information, see the Amazon documentation.
You can prepare configurations where Dynatrace OneAgent is already part of your application deployment. In such cases you won't have to manually install OneAgent or restart servers to enable service monitoring.
Get the Dynatrace OneAgent download link
- From the navigation menu, select Deploy Dynatrace.
- Click Start installation.
- Select Linux on the Download Dynatrace OneAgent page.
- When the Install Dynatrace OneAgent on your Linux hosts page is displayed, copy the URL from the
wgetcommand line and save it in a text editor.
- Windows only: In your text editor, replace the
unixpart of the URL with
windows/exe. For example, if the URL for Linux is:
https://abcdefghij.live.dynatrace.com/installer/agent/unix/latest/abc1234567890Then the URL for Windows is:
Keep the URL in the editor—you'll need it later.
Because the specifics of this type of installation depend heavily on user customizations, we can't provide a simple set of steps that will work in all scenarios. Following is only a brief overview of the entire process, with examples that will help you create your own deployment.
Prepare configuration for monitoring on Linux
It's best to split plugin configuration into two files, one for downloading the Dynatrace OneAgent installer and a second for invoking the installation and post-installation tasks. Note that the Elastic Beanstalk plugin script file names are important—the Amazon interpreter executes these in alphabetical order.
Create the download configuration file and save it with the name
0dynatraceDownload.config. The configuration file needs to contain a
files section where you must define:
- Download path and target file name, for example
- Proper user rights settings
- The Dynatrace OneAgent download URL you copied to your text editor.
files: "/tmp/dynatraceinstall.sh": mode: "000755" owner: root group: root source: "https://abcdefghij.live.dynatrace.com/installer/agent/unix/latest/abc1234567890"
Create a file called
1dynatraceInstallAndPost.config to execute the Dynatrace OneAgent installer and perform other tasks, such as service restart.
The following script checks for an existing Dynatrace OneAgent setup, executes installation from the
/tmp directory if no OneAgent is found, and restarts
commands: install_dynatrace_oneagent: command: "[ -d /opt/dynatrace/oneagent ] || /tmp/Dynatrace-OneAgent.sh" cwd: /tmp restart_httpd: command: service httpd restart
Prepare configuration for monitoring on Windows
Create a configuration file for downloading the installer and save it as
0dynatraceDownload.config. The file needs to contain a
sources section where you must define:
* Download destination (for example, your desktop) * Download URL
The following script excerpt downloads the Dynatrace OneAgent installer to the administrator's desktop:
sources: "C:\Users\Administrator\Desktop": https://abcdefghij.live.dynatrace.com/installer/agent/windows/exe/latest/abc1234567890
Enter the installation command for Dynatrace OneAgent in the
The following script fragment executes the installer from the administrator's desktop folder in quiet mode (i.e., with no graphical user interface):
install_ruxit: command: "C:\Users\Administrator\Desktop\Dynatrace-OneAgent-Windows-1.69.18.exe" /quiet
You don't need to add extra commands following Dynatrace OneAgent installation. Amazon will restart IIS for you once you've successfully uploaded all your application files.
Extend your config
In these examples, the Dynatrace OneAgent download step is included with each procedure. While this is necessary for the first installation of Dynatrace OneAgent, this may substantially extend your application updates in the future as you will perform the download of Dynatrace OneAgent each time. You can improve your Beanstalk configuration by adding a check for an existing Dynatrace OneAgent installation and have your scripts download Dynatrace OneAgent only when it isn't found on the system.
Have a look at the following configurations before creating your own scripts. Take care in formatting and escaping special characters. The Amazon interpreter is sensitive to syntax errors.
files: "C:\Users\Administrator\Desktop\installDynatrace.ps1": content: | #!/bin/bash if [ ! -d /opt/dynatrace/oneagent ]; then wget -O /tmp/Dynatrace-OneAgent.sh "https://yyyyyyyy.live.dynatrace.com/api/v1/deployment/installer/agent/unix/default/latest?Api-Token=xxxxxxxxxxGw&arch=x86" chmod 755 /tmp/Dynatrace-OneAgent.sh sudo chown root:root /tmp/Dynatrace-OneAgent.sh sudo /tmp/Dynatrace-OneAgent.sh commands: install_dynatrace: command: /tmp/dynatraceinstall.sh restart_nginx: command: service nginx restart ignoreErrors: true
Note: The configuration in the Windows example is Power Shell based. Before copying it, ensure that Power Shell is accessible on the target machine.
files: "/tmp/dynatraceElasticBeanstalk.sh": mode: "000755" owner: root group: root content: | #!/bin/bash if [ ! -d /opt/dynatrace/oneagent ]; then wget -O /tmp/Dynatrace-OneAgent.sh "https://yyyyyyyy.live.dynatrace.com/api/v1/deployment/installer/agent/unix/default/latest?Api-Token=xxxxxxxxxxGw&arch=x86" chmod 755 /tmp/Dynatrace-OneAgent.sh sudo chown root:root /tmp/Dynatrace-OneAgent.sh sudo /tmp/Dynatrace-OneAgent.sh commands: install_dynatrace: command: /tmp/dynatraceinstall.sh restart_nginx: command: service nginx restart ignoreErrors: true