Skip to content

ahmed-gharib89/AWS-Cloud-DevOps-Engineer-Capstone-Project

Repository files navigation

AWS Cloud DevOps Capstone Project

Introduction

This project is for applying the skills and knowledge which were developed throughout the Cloud DevOps Nanodegree program. These include:

  • Working in AWS
  • Using Jenkins to implement Continuous Integration and Continuous Deployment
  • Building pipelines
  • Working with CloudFormation to deploy clusters
  • Building Kubernetes clusters
  • Building Docker containers in pipelines

Project steps

Step 1: Propose and Scope the Project

  • Deploying a simple web application (url shortener) to AWS EKS cluster.
  • Using Jenkins to build, test and deploy the application.
  • Using rolling update strategy to update the web app.

Step 2: Use Jenkins and implement rolling deployment.

  • Setting github repository with 3 branches (dev, uat and prod).
  • Setting up EC2 Instance for Jenkins.
  • Configure Jenkins plugins and credentials.

Jenkins

Step 3: Build AWS Kubernetes as a Service (EKS) Kubernetes cluster.

  • Using eksctl to create a cluster using the configuration file (./eks/eks-config.yml)

Cloud Formation

Step 4: Build your pipeline

  • Construct your pipeline in your GitHub repository.
  • Set up all the steps that your pipeline will include.
  • Configure a deployment pipeline.
  • Include your Dockerfile/source code in the Git repository.
  • Include with your Linting step both a failed Linting screenshot and a successful Linting screenshot to show the Linter working properly.

Fail linting step: Failed linting step

Successful linting step: Success Linting Step

Step 5: Test your pipeline

  • Perform builds on your pipeline.
  • Verify that your pipeline works as you designed it.
  • Take a screenshot of the Jenkins pipeline showing deployment.

Blue version of the webapp:

Blue Version

Aprroval step to deploy to production:

Deployment Approval

Rollout Status:

Rollout update Status

Green version of the webapp:

Green Version

Find me in social media

Github LinkedIn Facebook Whatsapp Instagram

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published