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