SUFIAG / Voting-Application-AWS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

My Vote AWS

The application is already written, and all you have to do is deploy it using the technologies you have learned! The system is already familiar to you from the Infrastructure as a Code module, it is a demo application for voting, but this time it is redesigned to use the capabilities of AWS directly: it consists of two front-end components (JS Single-Page Application) and three back-end components ( Python).

We propose the following scheme: publish static files in S3 buckets (one for each frontend), host backends as Lambda functions and make them accessible using API Gateway. We suggest running the vote processor on EC2, although you may prefer pure serverless.

Screenshot_31

Note that while all the code has already been written, you still have a lot of work to do in creating resources (queues, DynamoDB tables) and assigning access to them. If necessary, use the hints located in the appropriate folders.

Used tech

  • ✅ EC2
  • ✅ S3
  • ✅ CloudFront
  • ✅ database (DynamoDB)
  • ✅ VPC
  • ✅ SQS queue
  • ✅ SNS notifications
  • ✅ Serverless (API Gateway, Lambda)
  • ✅ IAM

Challenge:

  • ⚠️ IaaC (Terraform, CloudFormation, Cloud Development Kit)
  • ⚠️ Billing и Costs

Components

Architecture

Screenshot_31

For terraform, i used serverless lambda instead of ec2

Screenshot_43

About

License:Apache License 2.0


Languages

Language:Python 52.1%Language:HCL 34.7%Language:CSS 5.1%Language:HTML 3.6%Language:Smarty 3.3%Language:JavaScript 1.3%