Header background

Dynatrace named a launch partner of Amazon ECS Anywhere

We’re excited to announce Dynatrace has been named as a select launch partner for a newly launched Amazon Web Services (AWS) offering, Amazon ECS Anywhere.

Amazon ECS Anywhere is a new extension of Amazon’s fully managed container orchestration service, Elastic Container Service (ECS). This new extension allows customers to deploy native Amazon ECS tasks in any target environment including traditional AWS managed infrastructure and now customer-managed infrastructure.

ECS anywhere targets the following use cases:

  • Hybrid – Run workloads on cloud and on-premises in a consistent manner
  • Modernization – Containerize existing on-premises applications
  • IoT – Data processing on edge locations

By extending AWS container orchestration to customer-managed infrastructure, customers gain operational control without compromising on the value of the AWS fully managed, easy to use, control plane that’s running in the cloud, and always up to date.

As a result, ECS Anywhere delivers the same operational models for on-prem and the cloud. It keeps application processing closer to the data to maintain higher bandwidth and lower latencies, adheres to compliance regulations that don’t yet approve cloud managed services, and allows data center capital investments to be fully amortized before moving to the cloud.

End-to-end application monitoring with Dynatrace

Dynatrace OneAgent is responsible for collecting all relevant monitoring data within your environment, and is required to do so even if your hosts are deployed within Docker containers, microservices architectures, or cloud-based infrastructure.

For monitoring containers, OneAgent can be packaged as a Docker image layer within the Docker application image. This option is referred to as application-only monitoring and when deployed in application-only mode, OneAgent monitors the memory, disk, CPU, and networking of processes within the container only.

Once a container is started with an ECS task, OneAgent automatically discovers the full-stack view (host, process, service, and application) for a single container and represents it within the Dynatrace Smartscape as shown in the left image below. The right image displays the details for the identified service running within the container, which was started with an ECS task.

Dynatrace Smartscape

To implement this option, you specify the OneAgent code module for a specific Dynatrace environment within your Dockerfile, as shown in the images below, and then build and push the image to your registry store such as Amazon Elastic Container Registry (ECR).

OneAgent Docker setup

Each time you want to leverage a new version of Dynatrace OneAgent, you must rebuild your local OneAgent code modules and application image. Any newly started pods from this application image will be monitored with the latest version of OneAgent. More details can be found in the Dynatrace documentation.

How does it work?

The ECS cluster is responsible for orchestrating customer defined ECS tasks, such as starting or stopping a container on an on-prem host. Host registration to the ECS cluster is managed by System Manger and governed by AWS Identity and Access Manager (IAM). The diagram below shows these components and the communication flows.

  • AWS
    • ECS Cluster – Control plane and orchestrator for tasks
    • AWS System Manager
    • AWS IAM
  • Customer Data Center – Hosts and Virtual Machines
    • ECS Agent – Manages the ECS task lifecycle
    • SSM Agent – Manages the host registration to the control plane
    • Containers – Customer provided images managed by ECS
  • Dynatrace
    • All OneAgent data from your on-prem containers is sent to your Dynatrace SaaS or self-managed Dynatrace platform, resulting in a complete picture of both AWS and on-prem applications and infrastructure.

AWS ECS How does it work

Getting started

  1. Follow the AWS getting started guide for getting started with an ECS Anywhere cluster with your on-premises hosts and virtual machines.
  2. Create ECS Task based on the example below.ECS Task Definition
  3. Register the ECS Task using the AWS CLI as in the example below:

aws ecs register-task-definition --cli-input-json file://customer-service.json

  1. Run ECS Task using the AWS CLI as in the example below:

aws ecs run-task --cluster $CLUSTER_NAME --launch-type EXTERNAL --task-definition dt-orders-customer-service

  1. Within the AWS console, verify the task is listed with a status of RUNNING as shown in the example below:ECS Cluster View
  2. Monitor the container running with the OneAgent with Dynatrace web console.

Resources

Getting started with Dynatrace and AWS ECS Anywhere has never been easier.