Balaji Vajjala's Blog

A DevOps Blog from Trenches

DevOps in the cloud Tutorial

Lesson 1 – Walkthrough of Pipeline Components

Learning Objectives

By the end of this lesson you will be able to:

  • Check in changes to application code.
  • Make simple configuration changes.
  • Change an existing automated test.
  • Make scripted changes to the database.
  • Make a change to a simple build script.
  • Make a change to a deployment script.
  • Make a change to the infrastructure scripts.
  • Run Jenkins Continuous Integration server jobs.
  • View and run jobs within a deployment pipeline.
  • View static analysis reports.
  • View feedback from a dashboard.

Lesson 2 – Definitions, Practices, patterns and tools for implementing Continuous Delivery in the Cloud

Learning Objectives

By the end of this lesson you will be able to:

  • Define Continuous Delivery, DevOps, Continuous Deployment and the Cloud.
  • Identify Practices, patterns and tools for implementing Continuous Delivery in the Cloud.
  • Create a ‘spaghetti diagram’ and a ‘value-stream map’.

Lesson 3 – Primer/Inrotduction to Amazon Web Services

Learning Objectives

By the end of this lesson you will be able to:

  • Create an Amazon Web Services (AWS) account and access services.
  • Use basic features of the AWS Management Console.
  • Define security groups.
  • Use basic features of the Elastic Compute Cloud (EC2).
  • Use basic features of Elastic Load Balancing (ELB).
  • Employ Auto Scaling.
  • Use Amazon CloudWatch to monitor resources.
  • Use Amazon Route 53 to manage a domain.
  • Use Amazon Simple Storage Service (S3) to store objects.
  • Identify the basic features of AWS CloudFormation for automating infrastructures.
  • Identify the basic features of AWS Elastic Beanstalk.
  • Identify the purpose other available AWS services.

Lesson 4 – Implemnting Continuous Integration pipeline in AWS

Learning Objectives

By the end of this lesson you will be able to:

  • Set up your development environment.
  • Install and configure Jenkins plug-ins.
  • Configure a scripted environment job.
  • Configure a scripted build job.
  • Configure a scripted deployment job.
  • Configure and run on-demand jobs.
  • Configure and run scheduled jobs.
  • Configure and run continuous jobs.
  • Create continuous feedback mechanisms.

Lesson 5 – Implementing Infrastructure Automation in AWS

Learning Objectives

By the end of this lesson you will be able to:

  • Create a CloudFormation template.
  • Integrate Puppet with CloudFormation.
  • Create a transient environment.
  • Lock down environments.
  • Create a ‘Chaos Monkey’.

Lesson 6 – Building and Deploying Software

Learning Objectives

By the end of this lesson you will be able to:

  • Script a build.
  • Script a deployment.
  • Set up and utilize a dependency-management repository.
  • Deploy to target environments.
  • Perform a self-service deployment.

Lesson 7 – Configuration Management

Learning Objectives

By the end of this lesson you will be able to:

  • Work from the canonical version.
  • Version system configurations and other artifacts.
  • Setup a dynamic configuration management database.

Lesson 8 – Database

Learning Objectives

By the end of this lesson you will be able to:

  • Script a database.
  • Script the upgrade and downgrade of a database.
  • Use a database sandbox.

Lesson 9 – Testing

Learning Objectives

By the end of this lesson you will be able to:

  • View and run unit tests.

Lesson 10 – Delivery Pipeline

Learning Objectives

By the end of this lesson you will be able to:

  • Create a delivery pipeline with dependent jobs.