In this project, students are
challenged to use AWS services to design and build a microservices and
continuous integration and continuous development (CI/CD) solution. First,
students break a monolith application into separate microservices, based on functionality
and API endpoints. Then, they migrate the application to run on a
container-based architecture, which provides the ability for the different
components of the application to scale independently. Specific sections of the
assignment are meant to challenge students on skills that they have acquired
throughout the learning process.
Learning
objectives
Upon completion of this
project, students will be able to do the following:
Recognize
how a Node.js web application is coded and deployed to run and connect to a
relational database where the application data is stored.
Create
an AWS Cloud9 integrated development environment (IDE) and a code repository
(repo) in which to store the application code.
Split
the functionality of a monolithic application into separate containerized
microservices.
Use
a container registry to store and version control containerized microservice
Docker images.
Create
a code repository to store microservice source code and CI/CD deployment
assets.