A 3-tier web application solution that is scalable and secure using AWS and Terraform.
[![forthebadge](https://forthebadge.com/images/badges/built-for-aws.svg)](https://forthebadge.com)
1 About the Project
2 General Preview
3 Technical
4 To Do List
5 Contributing
6 Versions
7 Contributors
👇 👇 👇 👇 👇
A template that can deploy a Secure and Scalable three-tier Architecture application on AWS with Terraform which can be edited to suit the specific application.
A 3-tier application architecture is a modular client-server architecture that consists of a presentation tier, an application tier and a data tier. This architecture is best used when scalability and security of the web application is the focus.
This tier, which is built with HTML5, cascading style sheets (CSS) and JavaScript, is deployed to a computing device through a web browser or a web-based application. The presentation tier communicates with the other tiers through application program interface (API) calls. This is the layer/tier that users interact with; usually called the Frontend of a web application.
The application tier, which may also be referred to as the logic tier, is written in a programming language such as Java, JavaScript, GO, PHP or other backend programming languages and contains the business logic that supports the application's core functions. The underlying application tier can either be hosted on distributed servers in the cloud or on a dedicated in-house server, depending on how much processing power the application requires. This is usually called the Backend of a web application
The data tier consists of a database and a program for managing read and write access to a database. This tier may also be referred to as the storage tier and can be hosted on-premises or in the cloud. Popular database systems for managing read/write access include MySQL, PostgreSQL, Microsoft SQL Server and MongoDB.
- Internet
1. Required to run project: - Provider version of 5.9.0. Provider is (https://registry.terraform.io/hashicorp/aws)[You can read this to set it up.](www.sth) - Have AWS CLI installed. - Have Terraform installed.
2. Clone this repository :
`git clone https://github.com/SammyBloom/Scalable-Secure-Web-Application-Architecture.git`
3. Open Project in Text Editor (Visual Studio Code)
4. Preview the AWS infrastructures that will be created : - Password: administration
`terraform plan`
5. Spin up the infrastructures : - Password: administration
`terraform apply -auto-approve`
6. Test the application by entering the public IP address of the EC2 instance created. The index.html or index1.html should be rendered
Terraform AWS
- Fix auto-scaling group not creating because it cannot find the aws_launch_template id that was created.
- Add polish to the script to ensure all editing is only done in the variable.tf and dev.tfvars files.
- Ensure that the userdata for both app and web runs and their respective index.html is rendered.
I would/we'd love to have your help in making {this script (Deploy a Scalable and Secure Web Application on AWS using Terraform)} better. The project is still very incomplete, but if there's an issue you'd like to see addressed sooner rather than later, let me(/us) know.
For any concerns, please open an issue, or JUST, fork the project and send a pull request.
- Version 1.0 DATE 25/7/2023
For personal feedback or questions feel free to contact me via the mail address, which is mentioned on my [Github profile](link (https://github.com/SammyBloom). If you have found any bugs or want to post a feature request please use the bugtracker to report them.
- e-mail: [email protected]
- Twitter: @SCNBloom