Note: The course wiki has been deprecated and will no longer be updated.

Intro to DevOps

Course Code Repository

The course code is available on GitHub. If you do not have git installed, you can also download the code in zip format.

If you use git, you can clone the repository by the following command:

git clone devops

Running the servers on the "cloud"

The provided code templates allow you to pick between several cloud providers. You can use Amazon AWS, Google Cloud Platform or Microsoft Azure. You will have to obtain an account and security credentials to be able to launch the servers on either of them. The easiest service to use for this class is Google Cloud Platform because of the simple security credential setup. If you are familiar with AWS or Azure, you can use them as well.

All of these cloud providers provide free accounts with some limitations that are sufficient for testing this project. You do however need a credit card to sign up for these services.

Google Cloud Platform

Google Cloud Platform provides free trial worth $300 for the first 60 days after you create a new account - Create a new project and enable Google Compute Engine API for the project. In the appropriate *-server.json file replace the value for project_id with your own project ID that you created earlier. It is currently set to 'devops-intro-project', but it has to be replaced with your project ID.

You will also have to create secret keys for use with Packer. Documentation can be found on the Packer Docs page for Google Compute Engine page, see the subsection "Running Without A Compute Engine Service Account". Rename the downloaded json file to 'account.json' and place it in the packer-templates directory.

To build the image use command: packer build -only=googlecompute control-server.json or packer build -only=googlecompute application-server.json

You can find the newly built image under 'Compute->Compute Engine->Images' menu on your project page at site. You can now use the image to launch a new server instance (be sure to check "allow HTTP and HTTPS traffic"), and from the "VM Instances" menu see the running instance and its IP, as well as use ssh to connect to it.

Amazon Web Services

Amazon AWS provides free trial for the first 12 months after creating your account using the free tier. The free account capabilities are fairly limited. The builder for AWS is preconfigured to use micro instances that are free with trial account. No special configuration for Packer is required.

You will have to create secret keys for use with Packer. Setting up Amazon AWS is beyond the topic of this class, but you can check the resources for creating user account on Amazon AWS Docs page.

Documentation for Packer related to Amazon AWS can be found on the Packer Docs page for Amazon EC2.

To build the image use command: packer build -only=amazon-ebs control-server.json or packer build -only=amazon-ebs application-server.json

Microsoft Azure Cloud

MS Azure provides free trial for 30 days worth $200 - . Using Packer is slightly more complicated with Azure, as you need to install an additional Packer plugin. This plugin and installation instructions can be found here - . You only need the packer-builder-azure.

Other Cloud Providers

It is possible to use Packer with other cloud providers, the full list of builders can be found on the Packer Docs page.

Additional resources

Notable Books

Notable Presentations

  • What DevOps means to me - an explanation of the components that make up CAMS (Culture, Automation, Measurement, Sharing), as well additional thoughts on what DevOps is and is not - by John Willis
  • dev2ops - Delivering Change in a DevOps and Cloud World
  • the agile admin - blog on topics of DevOps, agile operations, cloud computing, infrastructure automation, Web security (especially AppSec), transparency, open source, monitoring, Web performance optimization, and more.
  • The DevOps checklist - This checklist is comprised of 48 items you can use to gauge the maturity of your software delivery competency, and form a baseline to measure your future improvements.
  • DevOps – A Crash Course by Matt Stratton. A lot of links to good resources on DevOps topics.

Additional Resources by Nutanix