{"id":19373729,"url":"https://github.com/waelson/web-app-high-availability-cloudformation","last_synced_at":"2025-07-08T19:34:28.747Z","repository":{"id":120617258,"uuid":"243963530","full_name":"Waelson/Web-App-High-Availability-Cloudformation","owner":"Waelson","description":"Template to create high availability infrastructure for web application on AWS Cloudformation.","archived":false,"fork":false,"pushed_at":"2020-03-01T23:37:45.000Z","size":218,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-07T02:04:45.323Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Waelson.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-29T12:19:15.000Z","updated_at":"2020-05-09T12:11:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"7c979a2a-5519-45b9-a982-ecaa92a3b096","html_url":"https://github.com/Waelson/Web-App-High-Availability-Cloudformation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Waelson%2FWeb-App-High-Availability-Cloudformation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Waelson%2FWeb-App-High-Availability-Cloudformation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Waelson%2FWeb-App-High-Availability-Cloudformation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Waelson%2FWeb-App-High-Availability-Cloudformation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Waelson","download_url":"https://codeload.github.com/Waelson/Web-App-High-Availability-Cloudformation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240501242,"owners_count":19811574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T08:31:19.399Z","updated_at":"2025-02-24T15:20:43.234Z","avatar_url":"https://github.com/Waelson.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# High Availability to Web Application on AWS\nTemplate to create high availability infrastructure for web application on AWS Cloudformation.\n\u003cbr/\u003e\n\u003ch4\u003eHow to use:\u003c/h4\u003e\nBefore you begin to use this repository, check you have installed AWS CLI in your machine. If you haven't installed it, please consider to visit \u003ca href=\"https://docs.aws.amazon.com/cli/latest/userguide/install-bundle.html\"\u003eAWS CLI Site\u003c/a\u003e for more informations.\n\u003cbr/\u003e\u003cbr/\u003e\n\u003cul\u003e\n  \u003cli\u003eInto repository, you will find two shell scripts files to create and update stack on Cloudformation. Use them to manipulate your Cloudformation stack or as reference to learn about Cloudformation commands using AWS CLI. \u003c/li\u003e\n  \u003cli\u003eCreate stack: \u003ccode\u003e./create.sh \u0026#60;your-stack-name\u0026#62; \u0026#60;cloudformation-script-yml-file\u0026#62; \u0026#60;parameter-file\u0026#62;\u003c/code\u003e\u003c/li\u003e\n  \u003cli\u003eUpdate stack: \u003ccode\u003e./update.sh \u0026#60;your-stack-name\u0026#62; \u0026#60;cloudformation-script-yml-file\u0026#62; \u0026#60;parameter-file\u0026#62;\u003c/code\u003e\u003c/li\u003e\n  \u003cli\u003eNote #1: Scripts must to be executed according to the following order: First, \u003ccode\u003enetworks.yml\u003c/code\u003e responsable for creation all network configurations and last \u003ccode\u003eservers.yml\u003c/code\u003e to create EC2 instances and other resources associated to them.\u003c/li\u003e\n  \u003cli\u003eNote #2: If you need to change IP range, check \u003ccode\u003enetwork-params.json\u003c/code\u003e file to update configurations.\u003c/li\u003e\n  \u003cli\u003eNote #3: You will need to create a Key Pair through web console, to edit \u003ccode\u003eservers.yml\u003c/code\u003e file and to update value of the KeyName attribute in the resource AWS::AutoScaling::LaunchConfiguration.\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch4\u003eMain points architecture:\u003c/h4\u003e\n\u003cul\u003e.\n  \u003cli\u003eAll single points of failure were eliminated. Remember, resources like Internet Gateway and Load Balancer are managed by AWS team.\u003c/li\u003e\n  \u003cli\u003eRedundancy was included by Auto Scaling Group and Database Replication.\u003c/li\u003e\n  \u003cli\u003eAll resources  are distributed between two availability zones. So, we guarantee more availability to architecture.\u003c/li\u003e\n  \u003cli\u003eAll EC2 instances are accessible just via load balancer. Note that all instances belong to private subnet, isolating them of all external traffic.\u003c/li\u003e  \n  \u003cli\u003eImportant Note: Script files don't create database. Therefore, I recommend you to create database through web console (RDS - Relational Database Service) and associate it to your private subnet.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eSolution diagram:\u003c/h4\u003e\n\u003cimg src=\"https://github.com/Waelson/web-app-high-availability-cloudformation/blob/master/Diagram-CloudFormation.png\"\u003e\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaelson%2Fweb-app-high-availability-cloudformation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaelson%2Fweb-app-high-availability-cloudformation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaelson%2Fweb-app-high-availability-cloudformation/lists"}