Cloud DevOps
Principles and Practices

Updated with Docker, Ansible and more

Cloud DevOps

In this segment, you will…

The definition of system in sysadmin is changed. Cloud is the new system. You will learn Open Source Chef as a DevOps tool that helps systematically synchronize your development and operations work across your entire organization.

You will study the architecture of open source Chef and its associated toolset.
• Overview of Chef
• Workstation Setup
• Node Setup
• Dissecting your first Chef run
• Introducing the Node object
• Chef resources and recipes
• Attributes, templates, and cookbook dependencies
• Recipe inclusion, data bags, and search roles
• Environments and
• Using community cookbooks

You will learn Chef by using it to solve a real business problem. You will build up on what you learn using Chef on your computer and apply that to one or more IAAS service providers such as Amazon Web Services or Google Compute Engine or Digital Ocean as examples.

In this course you will have a chance to work with the instructor get your hands dirty with some of the finer aspects of putting open source Chef to practical use with cloud computing services providers.

Chef can work in solo mode and also in conjunction with a chef server which is also an open source product that many organizations deploy internally to keep the entire internal as well as cloud infrastructure properly orchestrated accordingly to the policy set by your organization.

You will set up a chef server as a group exercise and use that chef server as a playground before advocating these concepts for adoption in your organization. At the end of the class, you will have a code repository that can be used and modified to your specific business problems at work.

About the Author


Facebook Twitter Google+

Nilesh Londhe is the founder of Cloud Genius, a cloud computing training and consulting institution, ranked among the top 10 cloud programs by CIO Magazine. During his leadership tenure at Microsoft, he played a key role driving platform adoption, and with support from Bill Gates, he patented a presence detection solution that is implemented across the Microsoft Office 365 suite of products and services. An IAS topper (Third in India 1991), Nilesh holds a Masters in Distributed Computing and Automation from the Indian Institute of Science, Bangalore and an MBA from the University of Michigan, Ann Arbor.

Cloud DevOps Principles and Practices
Module 1 What is DevOps
What is DevOps
Unit 1 What is DevOps
Unit 2 The Primary Goal of Business
Module 2 Why DevOps in the Cloud?
Why DevOps in the Cloud?
Unit 1 The Goal
Unit 2 The Goal: Book Summary Slideshare
Unit 3 Book Summary
Unit 4 The Phoenix Project
Module 3 Infrastructure as Code
Infrastructure as Code
Unit 1 Programmable Infrastructure
Unit 2 Open source Chef
Unit 3 Why Chef?
Unit 4 What Chef won't do?
Unit 5 Idempotence
Unit 6 Thick Clients, Thin Chef Server
Unit 7 Sequence matters
Unit 8 Summary
Module 4 Security keys/secrets
Types of security keys/secrets
Unit 1 Security keys/secrets
Unit 2 Keys to connect to cloud providers
Unit 3 Keys to connect to chef server
Module 5 Your first chef solo run
Your first chef solo run
Unit 1 Run chef in solo mode
Unit 2 Modify cookbook to use nginx
Module 6 Using Chef in solo mode
Using Chef in solo mode
Unit 1 Chef Solo
Unit 2 Prepare kitchen foundation
Unit 3 Stock your kitchen
Unit 4 Define and work with a node
Unit 5 Create and connect to a node in the cloud
Unit 6 Prepare your node for use with Chef
Unit 7 Run your kitchen on that node
Unit 8 Idempotence
Unit 9 Define roles for your nodes
Unit 10 Assign multiple roles to a node
Unit 11 Assign Attributes to your nodes
Unit 12 Define Environments
Unit 13 Define Data Bags and Data Bag Items
Unit 14 Create Encrypted Data Bag to securely keep secrets
Unit 15 Exercise: Set up a node that has mysql server ready with root password
Unit 16 Solution to the exercise
Unit 17 Verification of the solution
Module 7 Using Chef server from
Using Chef server from
Unit 1 Using Chef server from
Unit 2 Add knife plugins for cloud providers
Unit 3 Take a snapshot of your workstation
Unit 4 Use your Chef knife with the cloud provider
Unit 5 Upload your kitchen to Chef server
Unit 6 Start a machine using knife
Unit 7 Cheat Sheet for Chef
Module 8 Deploy a complete application and its stack of dependencies in the cloud using Chef
Deploy a complete application and its stack of dependencies in the cloud using Chef
Unit 1 Prepare your kitchen to work with Chef Server
Unit 2 Enforce version discipline with a Gemfile
Unit 3 Prepare knife configuration
Unit 4 Gather community cookbooks
Unit 5 A place for your custom cookbooks
Unit 6 Send cookbooks to Chef server
Unit 7 Create environments for your infrastructure
Unit 8 Define roles for your machines
Unit 9 Set up a sysadmin user
Unit 10 Encrypt your secrets before sending to Chef server
Unit 11 Make MySQL recipe use password from data bag
Unit 12 Add your public key to your cloud provider
Unit 13 Create a machine to run the app stack
Unit 14 Specify roles for the machine you just created
Unit 15 Connect to your node and run chef
Unit 16 Test for success
Unit 17 Add application and see it live!
Unit 18 Automating end to end
Unit 19 Create a custom cookbook for end to end automation
Unit 20 Setup a database and a user
Unit 21 Create default recipe for dbuser cookbook
Unit 22 Expand the webserver role to invoke dbuser and app cookbooks
Unit 23 Run chef and watch the app deployment automation - end to end
Module 9 Addressing Separation of Concerns
Now let's prepare to scale this by separating concerns - specifically by separating the web server related functions and the database related functions into two separate independent units of computing.
Unit 1 Create a separate web/app server and a db server
Module 10 Build Chef server for your organization
Build Chef server for your organization
Unit 1 Your own Chef server
Unit 2 Setting up your Chef server
Unit 3 Configure Berkshelf
Unit 4 Create a node for the chef-server
Unit 5 Use Chef to install Chef server
Unit 6 Examine the web user interface of your Chef server
Unit 7 Examine what you just installed
Unit 8 Configure knife with your Chef server
Unit 9 Bootstrap a node using your Chef server
Unit 10 Use knife and chef server with new node
Module 11 Setting up Chef v12 server with Chef Manage
Setting up Chef v12 server with Chef Manage
Unit 1 Setting up Chef v12 server with Chef Manage
Unit 2 Configure Berkshelf
Unit 3 Create a node for the chef-server
Unit 4 Use Chef to install Chef server
Unit 5 Connect to your Chef server
Module 12 Ansible
Unit 1 Cloud before tools like Ansible
Unit 2 Cloud with Ansible
Unit 3 What is Ansible
Unit 4 Where is Ansible most useful?
Unit 5 How Ansible works
Unit 6 How is Ansible different from Chef/Puppet
Unit 7 Create a machine in the cloud
Unit 8 Tell Ansible about your machines
Unit 9 Simplify the Ansible anvironment
Unit 10 Run arbitrary commands on remote machines
Module 13 Ansible First Run
Ansible First Run
Unit 1 Your First Ansible Run
Module 14 More Ansible exercises
More Ansible exercises
Unit 1 Security/hardening with ansible
Unit 2 Using Ansible to prepare container infrastructure
Module 15 Using Docker containers
Using Docker containers
Unit 1 Using Docker
Unit 2 Using docker-compose.yml
Unit 3 More Dockerfiles
Unit 4 Docker Cloud
Unit 5 deploy a complete stack to Docker cloud
Module 16 Recordings from sessions
Recordings from sessions
Unit 1 Recordings from sessions in Spring 2017
Unit 2 Recordings from sessions in Winter 2017
Unit 3 Recordings from sessions in Fall 2016
Unit 4 Recordings from sessions in Summer 2016
Unit 5 Recordings from sessions in Winter 2016
Unit 6 Recordings from sessions in May 2015