DevOps Fundamentals

This training course introduces the core DevOps concepts and principles as well as the ways to stand up the DevOps practice in your organization.

Upon completion of this training course, students will have fundamental understanding of DevOps’ value proposition; they will also gain practical experience working with select DevOps tools, including Puppet, Jenkins, and others.

This training course is supplemented by hands-on labs that help attendees reinforce their theoretical knowledge of the learned material.

Course Outline

CHAPTER 1. DEVOPS INTRODUCTION

  • Dev and Ops Views

  • Leading By Example ...

  • What is DevOps?

  • More DevOps Definitions

  • DevOps and Software Delivery Life Cycle

  • Main DevOps' Objectives

  • The Term "DevOps" is Evolving!

  • Infrastructure as Code

  • Agile IT in the Cloud

  • DevOps on the Cloud

  • Prerequisites for DevOps Success

  • Alignment with the Business Needs

  • Collaborative Development

  • Continuous Testing and Integration

  • Continuous Release and Deployment

  • Continuous Application Monitoring

  • Summary


CHAPTER 2. CLOUD TECHNICAL INTRODUCTION

  • A Bit of History

  • Wikipedia Entry

  • Cloud Computing at a Glance

  • Electrical Power Grid Service Analogy

  • Capacity Planning Concepts and Challenges

  • Coping with Computing Demand the Traditional Way

  • Coping with Computing Demand the Cloud Way

  • The Origin of the Cloud Computing

  • Grid Computing vs Cloud Computing

  • What Drives Cloud Adoption?

  • The NIST Perspective

  • Five Characteristics of the Cloud

  • The Three Cloud Service Models (NIST)

  • The Cloud Computing Spectrum: IaaS, PaaS and SaaS

  • Cloud Service Model Implementations

  • The Four Cloud Deployment Models (NIST)

  • The NIST Cloud Definition Framework

  • Cloud Deployment Model Dynamics

  • Virtualization

  • Virtualization Qualities (1/2)

  • Virtualization Qualities (2/2)

  • Cloud Infrastructure - Virtual Machines

  • A Bootable OS Image

  • Block Storage for Instances

  • Cloud Object Storage

  • SOA and the Cloud

  • Cloud Risks to Consider

  • DevOps Security Concerns

  • Amazon WS Technical Lessons When Moving To the Cloud

  • Architecting for HA in AWS (Same Data Center)

  • Architecting for HA in AWS (Different AZs)

  • Summary


CHAPTER 3. STANDING UP DEVOPS

  • Standing Up DevOps

  • Things to Look For and Avoid

  • IT Assets Ownership

  • Viewing Applications As Products, not Projects

  • DevOps in the Enterprise

  • IT Governance

  • Governance and Risk Mitigation

  • DevOps Adoption Steps

  • Select DevOps Techniques and Practices

  • Service Quality Metrics

  • Summary


CHAPTER 4. DEVOPS TOOLS

  • The Choice of Cloud Platform

  • IaaS for DevOps

  • PaaS for DevOps

  • Containerization Tools

  • System Configuration Automation and Management

  • Continuous Integration (CI) Systems

  • Build and Dependency Management Systems

  • Select DevOps Tools

  • Collaborative Lifecycle Management Solutions from IBM

  • The

  • Collaborative Lifecycle Management Diagram

  • The IBM

  • Collaborative Lifecycle Management

  • Platform

  • Rational Team Concert (RTC)

  • Rational Quality Manager (RQM)

  • Rational DOORS Next Generation (DNG)

  • Summary


CHAPTER 5. INTRODUCTION TO PUPPET

  • What is Puppet

  • Puppet's Domain Specific Language

  • "Infrastructure-as-code" in Puppet

  • Example of the Puppet DSL

  • Main Puppet Artifacts

  • Puppet Design

  • Puppet Workflow Orchestration

  • Facter

  • Facter Fact Discovery

  • Facter Example

  • Extending Facter

  • Geppetto

  • Puppet Lab Services

  • Puppet Enterprise Licensing

  • Puppet Enterprise Support

  • Puppet Enterprise Feature Set (1/2)

  • Puppet Enterprise Feature Set (2/2)

  • Summary


CHAPTER 6. INTRODUCTION TO CONTINUOUS INTEGRATION AND JENKINS-CI

  • Agile Development

  • Agile Development (cont'd)

  • What is Continuous Integration

  • What is Continuous Integration (cont'd)

  • What is Continous Integration (cont'd)

  • Typical Setup for Continuous Integration

  • Jenkins Continuous Integration

  • Jenkins Features

  • Running Jenkins

  • Summary


CHAPTER 7. INSTALLING AND RUNNING JENKINS

  • Downloading and Installing Jenkins

  • Running Jenkins as a Stand-Alone Application

  • Running Jenkins on an Application Server

  • Installing Jenkins as a Windows Service

  • Summary


CHAPTER 8. A JENKINS JOB

  • Different types of Jenkins job

  • Configuring Source Code Management(SCM)

  • Working with Subversion

  • Build Triggers

  • Schedule Build Jobs

  • Polling the SCM

  • Maven Build Steps

  • Summary


CHAPTER 9. SECURING JENKINS

  • Jenkins Security - Overview

  • Jenkins Security

  • Authentication

  • Authorization

  • Confidentiality

  • Activating Security

  • Configure Authentication

  • Using Jenkins's Internal User Database

  • Creating Users

  • Authorization

  • Matrix-Based Security

  • Note – Create the Administrative User

  • Project-based Matrix Authorization

  • Project-Based Authentication

  • Conclusion


CHAPTER 10. JENKINS PLUGIN

  • Introduction

  • Jenkins Plugins - SCM

  • Jenkins Plugins – Build and Test

  • Jenkins Plugins – Analyzers

  • Jenkins for Teams

  • Installing Jenkins Plugins

  • Summary


CHAPTER 11. DISTRIBUTED BUILDS WITH JENKINS

  • Distributed Builds - Overview

  • Distributed Builds – How?

  • Slave Machines

  • Configure Jenkins Master

  • Configure Projects

  • Conclusion


CHAPTER 12. BEST PRACTICES FOR JENKINS

  • Best Practices


CHAPTER 13. CONTAINERIZATION SYSTEMS OVERVIEW

  • Virtualization

  • Hypervisors

  • Hypervisor Types

  • Type 1 hypervisors

  • Type 2 hypervisors

  • Type 1 vs Type 2 Processing

  • Paravirtualization

  • Virtualization Qualities (1/2)

  • Virtualization Qualities (2/2)

  • Disadvantages of Virtualization

  • Containerization

  • Virtualization vs Containerization

  • Where to Use Virtualization and Containerization

  • Popular Containerization Systems

  • What are Linux Containers

  • Docker

  • OpenVZ

  • Solaris Zones (Containers)

  • Summary


CHAPTER 14. LXC INTRODUCTION

  • What are Linux Containers

  • How LXC Works

  • LXC vs True Virtualization

  • Security Concerns

  • LXC Alternatives

  • Getting Started with LXC

  • Creating a Container

  • Listing and Getting Info on Containers

  • Starting, Stopping, and Destroying a Container

  • Container Pausing and Resuming

  • Communicating with a Container

  • Monitoring Container State Change

  • Programmatic Access to LXC

  • Container Root Filesystems

  • Container Cloning

  • Copy vs Snapshot Type

  • Using Snapshots

  • LXC Web Panel

  • Summary


CHAPTER 15. DOCKER INTRODUCTION

  • What is Docker

  • Where Can I Ran Docker?

  • Docker and Containerization on Linux

  • Linux Kernel Features: cgroups and namespaces

  • The Docker-Linux Kernel Interfaces

  • Docker Containers vs Traditional Virtualization

  • Docker as Platform-as-a-Service

  • Docker Integration

  • Docker Services

  • Docker Application Container Public Repository

  • Competing Systems

  • Docker Command-line

  • Starting, Inspecting, and Stopping Docker Containers

  • Summary

Audience

Enterprise Architects, Solution Architects, Information Technology Architects, Senior Developers, and Team Leads.

Foundational knowledge of the software delivery problem domain

Available Course Dates

10/30/2017 10:00 am - 11/01/2017 6:00 pm
Click here to sign up for this class