Deployment automation made easy with Ansible

Abstract

Ansible is a powerful open-source automation platform that can help you manage your configuration and automate your deployment.
This course will give you the tools for how to work with Ansible and how it can be used for your deployment use cases.
The course provides extensive hands-on and the students will build their own CD environment on the cloud using SCM (Git), CI (Jenkins), CM (Ansible), deployment (Docker) and monitoring (Nagios, ELK).

Target Audience

Developers, System administration

Prerequisites

  • Basic Unix commands
  • Basic Programming Concepts (control flows, conditionals, scripting)

Content

Linux Fundamentals:

  • Users and Permissions
    • Uses and Groups
    • Understand the difference between root and normal user
    • Becoming root with su
  • Sudoers
    • Executing commands with sudo
    • Configuring /etc/sudoers
  • Package Managers
    • Yum package manager
    • Repositories Management
    • Installing from repository
    • Installing from RPM file
  • Systemd
  • Hands-on session

Inventory and ad-hoc commands:

  • Static inventory
  • Dynamic inventory
  • Using Ansible and Using Ad-hoc Modules
  • Inventory variables
    • Host variables
    • Group variables
  • Hands-on session

Playbooks:

  • Anatomy of a Playbook
  • YAML Syntax
  • Anatomy of a Task
  • Module and its Arguments
  • Testing your playbook (dry run)
  • Popular Modules
  • Amdocs yum_secure module
  • Hands-on session

Advanced Playbooks:

  • Variables
    • Play variables
    • Variable files
    • Extra variables
  • Using variables in playbooks
    • Basic variables
    • Lists
    • Dictionaries
    • Compound variables
  • Registering output of tasks in variables
  • Facts
  • Conditions
  • Loops
  • Handlers
  • Hands-on session

Structuring Best Practices:

  • Structuring playbooks
  • Includes
    • Variable includes
    • Play includes
    • Task includes
  • Dynamic vs Static includes
  • Hands-on session

Roles:

  • Introduction to roles
  • Building Simple roles
  • Invoking Roles from playbooks
  • Ansible Galaxy
  • Using Ansible Galaxy Roles in Playbooks
  • Hands-on session

Intro to Python:

  • Introduction to python
  • Python Packages and resources
  • Hands-on session

Custom Modules:

  • Custom Modules
  •  Custom Modules Parameters
  • Ansible Python Support for Modules
  • Communicating Back to Ansible
  • Testing custom modules
  • Hands-on session

Duration

3 days

Enroll Now
Contact us
Share: