Giter Club home page Giter Club logo

aws_infra_for_cicddemo's Introduction

Infrastructure Setup for CICD Demo with AWS Developer tools

Prerequisites

Terraform

The Terraform configuration creates the following resources:\66fbbbb

  1. VPC
  2. Internet Gateway
  3. 3 Public Subnets & 3 Private Subnets in 3 Availability Zones
  4. NAT Gateway
  5. Route Tables
  6. Bastion host

Additional Resources required: Create an IAM role for web instances, here it is listed as "Ec2

Resource Quanity Remarks
VPC 1 Region can be selected in terraform.tfvars
Internet Gateway 1
Public Subnets Variable Varies as per the region - a subnet each in each Availability zones
Private Subnets Variable Varies as per the region - a subnet each in each Availability zones
Route tables 2 A private route and A Public route table
Security Groups 6 All required security groups
Bastion 1 Jump server to connect to the web and DB servers
Web instances As specified No of web_nodes specified in the terraform.tfvars
Db instances As specified No of db_nodes specified in the terraform.tfvars
ALB 1 Adds target group and adds web instances as part of it and security Groups

Deployment

  • Clone this repository and cd into aws_infra_for_cicddemo
  • Update values in terraform.tfvars
  • Initialize terraform
terraform init
  • Terraform plan - to check what resources are being created
terraform plan
  • Once the plan is verified, apply the configuration
terraform apply

Install Apache

  • Install apache2
sudo apt-get install apache2 -y
  • Enable apache modules
sudo a2enmod proxy
sudo a2enmod proxy_http
  • Virtual Host forwarding.
cd /etc/apache2/sites-enabled

Create file in /etc/apache2/sites-enabled with the name 000-default.conf with the below content

<VIRTUALHOST *:80>

    ProxyPreserveHost On

    # ...

    ProxyPass / http://localhost:8080/
</VIRTUALHOST>

Restart apache2

sudo systemctl restart apache

aws_infra_for_cicddemo's People

Contributors

devkiranops avatar crymt avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.