AccountIcon BigDataIcon BlogIcon default_resource_icon CartIcon checkmark_icon cloud_devops_icon computer_network_admin_icon cyber_security_icon gsa_schedule_icon human_resources_icon location_icon phone_icon plus_icon programming_software_icon project_management_icon redhat_linux_icon search_icon sonography_icon sql_database_icon webinar_icon

Search UMBC Training Centers

Cloud Computing & DevOps

DevOps Boot Camp

+ View more dates & times
  • Overview

    This course explains the theory as well as provides hands on experience with the main facets of DevOps.

    Topics include:

    • Continuous Integration
    • Version Control
    • Automation
    • Monitoring and Measurement
    • Configuration Management
    • Continuous Quality
    • Containerization
    • Collaboration

    Upon completing this course, students will be able to:

    • Confidently design a DevOps framework for their organization.
    • Understand the various key components.
    • Implement DevOps in their organization.
    • Create automation through scripting
    • Compare the different tools available for applicability to their environment
    • Apply the knowledge to improve reliability of build & release processes
    • Utilize the various tools covered in the course in the real world
  • Who Should Take This Course

    AUDIENCE

    This course is intended for: Architects and Development leads that need to design and implement DevOps in their organization.

    PREREQUISITES

    An understanding of the basic concepts in version control, release management, automation, governance, and infrastructure.

  • Schedule
  • Course Outline

    CHAPTER 1. WHAT IS DEVOPS

    • 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
    • Benefits of DevOps
    • What is Involved in DevOps
    • Summary

    CHAPTER 2. CONFIGURATION MANAGEMENT

    • What is Chef?
    • Deployment / License
    • Who uses Chef
    • Chef Architecture
    • Chef Components
    • Workstation
    • Recipe
    • Cookbook
    • Ruby
    • Knife
    • Node
    • Chef-client
    • Chef Server
    • Chef Analytics
    • Chef Supermarket
    • Salient Features of Chef
    • Supported Platforms
    • Chef Components
    • Chef Server
    • Chef Server prerequisites
    • Install Configuration Scenarios
    • Standalone Installation
    • Installing Optional Chef Server Components
    • Workstation
    • Chef DK
    • Chef DK Prerequisites
    • Chef Repository
    • Installing Chef DK
    • Install Git
    • Set up chef-rep
    • Create the chef-repo
    • Create .chef Directory
    • Move .pem Files
    • Create knife.rb File
    • Add Ruby to Path
    • Get SSL Certificates
    • Verify Install
    • Bootstrapping a Node
    • Ohai
    • Ohai Attributes
    • Cookbooks
    • Components of a Cookbook
    • Attributes
    • Metadata
    • Recipes
    • Resources
    • Directory Resource
    • Package Resource
    • Service Resource
    • File Resource
    • Template Resource
    • Script Resource
    • User Resource
    • Additional Chef Advanced Features
    • Summary

    CHAPTER 3. CONTAINERIZATION

    • Containerization (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)
    • 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
    • Docker Benefits
    • Summary

    CHAPTER 4. CONTINUOUS INTEGRATION

    • What is Continuous Integration
    • What is Continuous Integration (cont’d)
    • What is Continous Integration (cont’d)
    • Integration Tools
    • Typical Setup for Continuous Integration
    • Jenkins Continuous Integration
    • Jenkins Features
    • Running Jenkins
    • Chef Delivery
    • Chef Delivery Pipeline
    • Chef Delivery Pipeline (Contd.)
    • Continuous Integration (Perforce Plugin for Jenkins)
    • Jenkins Integration with various Version Control Solutions
    • Jenkins Job
    • Perforce Plugin Installation
    • Apache Maven
    • Goals of Maven
    • What is Apache Maven?
    • What is Apache Maven (cont’d)
    • Why Use Apache Maven?
    • The Maven EcoSystem
    • Consistent Easy-to-Understand Project Layout
    • Convention Over Configuration
    • Maven is Different
    • Maven Projects have a Standardized Build
    • Effect of Convention Over Configuration
    • Importance of Plugins
    • A Key Point on Maven!
    • Summary

    CHAPTER 5. VERSION CONTROL

    • What is Version Control
    • What is Version Control (cont’d)
    • History of Version Control
    • “Undo” Capability
    • Collaboration
    • Collaboration (Cont’d)
    • Communication and Sharing
    • Auditing and Tracking
    • Release Engineering, Maintenance, SDLC
    • Diagnostics
    • Distributed Version Control
    • Integrating Version Control into Jenkins
    • Perforce
    • Important Perforce Terms
    • Perforce Clients
    • SVN
    • SVN vs CVS
    • SVN Installation
    • SVN Life Cycle
    • Some Useful Commands
    • Some Useful Commands (Contd.)
    • What is Git
    • Git’s Design Goals
    • Git’s Design Goals (cont’d)
    • Branching and Merging
    • Branching and Merging (cont’d)
    • Centralized Version Control
    • Distributed Version Control
    • Git Basics
    • Git Basics (Cont’d)
    • Git Basics (cont’d)
    • Getting Git
    • Git on the Server
    • Git Repository Managers
    • Git on Somebody Else’s Server
    • Using Git
    • Definitions
    • Definitions (cont’d)
    • Repository (cont’d)
    • Definitions (cont’d)
    • Commit
    • Commit (continued)
    • How to Think About Commits
    • Viewing History
    • Configuring Git
    • Configuration Scope
    • User Identification
    • User Identification (cont’d)
    • GPG Signing
    • Gnu Privacy Guard
    • GPG Basics
    • GPG and Git
    • .gitignore
    • Other Useful Configurations
    • Mercurial
    • Installation
    • Some Useful Commands
    • Some Useful Commands (Contd.)
    • Team Foundation Version Control
    • TFVC Workspaces
    • TFVC Capablities
    • Atomic Check-In
    • Check-In Policies
    • Shelving
    • Team Visiblity
    • Locks
    • Labeling
    • Branching
    • Branch Visualization and Tracking
    • Cross-Platform Support
    • Disconnected Work
    • Summary

    CHAPTER 6. AUTOMATION SCRIPTING

    • Why Automate
    • When to Automate
    • Goals for Scripting
    • Error Handling
    • Logging
    • Automating Versioned Builds
    • Automating Deployment
    • Automating Continuous Integration Tests
    • Automated Cleanup
    • Introduction to Shell Scripts
    • Basic Shell Script
    • Return Status
    • Variables
    • Special Variables
    • Arrays
    • Operators
    • Conditional Statements
    • Conditional Statements (contd.)
    • Loops
    • Loops – while
    • Loops – for
    • Loops – until
    • Loops – select
    • Introduction to Python
    • Basic Python Script
    • Python Comments
    • Assignment Not Allowed in Expressions
    • Variable Naming
    • Variable Assignment
    • Numbers
    • Strings
    • Lists
    • Tuples
    • Dictionary
    • Some Useful Data Type Conversion Functions
    • Operators
    • Decision Making
    • Block Scope
    • While Loop
    • For Loop
    • Break and Continue
    • Functions
    • Exceptions
    • Classes
    • Using Classes
    • Inheritance
    • Modules
    • Introduction to Ruby
    • Executing a Ruby File
    • Ruby Objects
    • Creating a Hash
    • Setting Value of a Key
    • Getting Value of a Key(s)
    • Conditionals and Flow
    • Methods
    • Classes
    • Including External Ruby Files
    • Introduction to Perl
    • Perl and Programmers
    • First Perl Script
    • Summary

    CHAPTER 7. CONTINUOUS CODE QUALITY

    • Continuous Code Quality
    • What is SonarQube
    • SonarQube – Benefits
    • SonarQube (Multilingual)
    • Seven Axes of Quality
    • Potential Bugs
    • Tests
    • Comments and Duplications
    • Architecture and Design
    • Complexity
    • SonarQube Installation
    • SonarQube Components
    • Code Quality (LOC, Code Smells)
    • Code Quality (Project Files)
    • Code Quality (Code)
    • Summary

    CHAPTER 8. CONTINUOUS MONITORING

    • What is Continuous Monitoring
    • Monitoring Tools
    • Dynatrace Application Monitoring
    • Dynatrace Application Monitoring (contd.)
    • Dynatrace Application Monitoring
    • Splunk
    • Splunk Functionalities
    • Splunk Searching
    • Splunk Functions
    • Nagios
    • Nagios (contd.)
    • Nagios – Installation
    • Nagios – Hosts
    • Nagios – Web User Interface (Hosts)
    • Nagios – Monitoring Services
    • Nagios – Monitoring Services (contd.)
    • Monitoring HTTP
    • Monitoring FTP
    • Monitoring SSH
    • Monitoring SMTP
    • Monitoring POP3
    • Monitoring IMAP
    • Summary

    CHAPTER 9. COLLABORATION

    • What is JIRA?
    • License
    • JIRA Technical Specifications
    • Issues
    • Who uses JIRA
    • JIRA Products
    • JIRA Core
    • JIRA Software
    • JIRA Service Desk
    • What a typical project involves?
    • JIRA Integration
    • Integrating JIRA into Jenkins
    • Summary

    CHAPTER 10. THE JOURNEY

    • 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
    • DevOps in the Enterprise
    • Scaling DevOps
    • Scaling DevOps (Organization Structure)
    • Scaling DevOps (Locality)
    • Scaling DevOps (Team Flexiblity)
    • Scalling DevOps (Teams: Hiring as Scaling)
    • Scaling DevOps (Teams: Employee Retention)
    • DevOps Myths
    • DevOps Anti-Patterns (Blame Culture)
    • DevOps Anti-Patterns (Silos)
    • DevOps Anti-Patterns (Root Cause Analsyis)
    • DevOps Anti-Patterns (Human Error)
    • DevOps Patterns For Success
    • DevOps Patterns For Success (Cloud)
    • DevOps Patterns For Success (Automation)
    • DevOps Patterns For Success (Culture)
    • Summary

    LAB EXERCISES

    Lab 1. Chef
    Lab 2. Java, Jenkins, Maven, Tomcat, Perforce, and various SCM plugins for Jenkins
    Lab 3. Docker
    Lab 4. Version Control
    Lab 5. Scripting 101 – Shell Scripting
    Lab 6. Scripting 101 – Python
    Lab 7. Apache, MySQL, and PHP
    Lab 8. SonarQube
    Lab 9. Nagios

  • FAQs
    Is there a discount available for current students?

    UMBC students and alumni, as well as students who have previously taken a public training course with UMBC Training Centers are eligible for a 10% discount, capped at $250. Please provide a copy of your UMBC student ID or an unofficial transcript or the name of the UMBC Training Centers course you have completed. Online courses are excluded from this offer.

    What is the cancellation and refund policy?

    Student will receive a refund of paid registration fees only if UMBC Training Centers receives a notice of cancellation at least 10 business days prior to the class start date for classes or the exam date for exams.

Contact Us