hands-on lab

Configuring ECS Tasks with EFS Shared Storage

Intermediate
Up to 1h
11
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.
Lab description

In this hands-on lab, participants will learn how to configure Amazon Elastic Container Service (ECS) tasks to use Amazon Elastic File System (EFS) as shared storage. A 3D Globe web application will be used to demonstrate this architecture and configuration.

Amazon ECS is a fully managed container orchestration service offered by AWS, designed to simplify the deployment, management, and scaling of containerized applications. It allows users to run Docker containers on a managed cluster of EC2 instances or AWS Fargate, abstracting away the underlying infrastructure complexity. ECS enables users to define task definitions, which specify the Docker containers to run, their configurations, and how they are linked together. With features like automatic load balancing, service discovery, and integration with other AWS services, ECS provides a scalable and efficient platform for deploying containerized workloads.

Amazon EFS is a scalable, fully managed file storage service provided by AWS, designed to provide simple, scalable file storage for use with AWS cloud services and on-premises resources. It allows multiple EC2 instances to access a shared file system concurrently, enabling applications to share data across instances seamlessly. With features like automatic scaling, high availability, and durable storage, Amazon EFS is well-suited for a wide range of use cases, including content repositories, big data analytics, and web serving.

Learning objectives

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

  • Create an ECS Task Definition that utilizes EFS for shared storage
  • Launch ECS Tasks using a custom task definition
  • Create an ECS Service with an ALB for load balancing external requests

Intended audience

  • Cloud Architects
  • DevOps Engineers
  • Software Engineers

Prerequisites

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

  • Amazon Elastic Container Service (ECS)
  • Amazon Elastic File System (EFS)
  • Containerization

The following content can be used to fulfill the prerequisites:

Environment before

Environment after

About the author
Avatar
Jeremy Cook, opens in a new tab
Content Lead Architect
Students
160,689
Labs
82
Courses
106
Learning paths
214

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
IDE Access
Review ECS and EFS Architecture
Create ECS Task Definition
Deploy ALB to Expose Globe App to the Internet
Create ECS Service
Examine EFS Fileshare