hands-on lab

Graviton Web App Migration

Up to 1h
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.


AWS Graviton processors are designed by AWS to deliver the best price-performance for your cloud workloads running in Amazon EC2.

In this lab scenario, you'll learn how to easily migrate a web application to run on AWS Graviton. You'll start by baselining a deployment of the web application to run on standard x86 based EC2 instances (t2.micro), this will be accomplished with the use of Terraform. The deployment will set up an ASG and launch template for the web application servers, plugging it into an already deployed and running ALB (created by the lab at launch time). You'll then be walked through the process of updating the provided Terraform templates to redeploy the same web application onto Graviton based EC2 instances (t4g.micro). The required modifications to get the web application working on Graviton will be the emphasis of this lab, and as such will highlight different areas that need to be considered when porting an application from x86 to Graviton.

Note: To keep things simple and to quicken the lab launch time, all AWS networking and compute resources provisioned within this lab take place in the publicly zoned area of the default VPC, and as such the security posture is limited and should not be replicated in your own production environments.


Learning Objectives

Upon completion of this lab, you will be able to:

  • Migrate a web application to run on Graviton Arm-based EC2 instances (t4g.micro)

Intended Audience

  • Those interested in migrating applications onto Graviton to optimize costs


Familiarity with the following will be beneficial but is not required:

  • Be comfortable with basic Linux command line administration

Lab Environment

This lab will start with the following AWS resources provisioned automatically for you:

  • 1 x EC2 instance
    • ide.cloudacademy.platform.instance - provides a web-based IDE with an integrated terminal
  • 1 x ALB
    • Listener (port 80)
      • Web Frontend Forwarding Rule (Web Frontend Target Group)
      • API Forwarding Rule (API Target Group)
    • Web Frontend Target Group (port 80)
    • API Target Group (port 8080)

To achieve the lab end state, you will be walked through the process of:

  • Using your local workstation browser to remotely connect to the ide.cloudacademy.platform.instance
  • Using the web-based IDE and integrated terminal, you'll complete the remainder of the stated Learning Objectives (above)

About the author

Jeremy Cook, opens in a new tab
Content Lead Architect
Learning paths

Jeremy is a Content Lead Architect and DevOps SME here at Cloud Academy where he specializes in developing DevOps technical training documentation.

He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 25+ years. In recent times, Jeremy has been focused on DevOps, Cloud (AWS, Azure, GCP), Security, Kubernetes, and Machine Learning.

Jeremy holds professional certifications for AWS, Azure, GCP, Terraform, Kubernetes (CKA, CKAD, CKS).

Covered topics

Lab steps

Logging In to the Amazon Web Services Console
Launch the Web IDE
Web Application Architecture Review
Deploy Web Application to x86 Architecture
Migrate Web Application to Graviton Architecture