Ansible is a radically simple IT automation engine that automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT needs. Designed for multi-tier deployments since day one, Ansible models your IT infrastructure by describing how all of your systems inter-relate, rather than just managing one system at a time. It uses no agents and no additional custom security infrastructure, so it's easy to deploy — and most importantly, it uses a very simple language (YAML, in the form of Ansible Playbooks) that allow you to describe your automation jobs in a way that approaches plain English.
This Ansible training course demonstrates the flexibility and power of the Ansible configuration management system, and how it can be used to build and scale highly reliable infrastructure for your own environments and projects. Using real-world examples, we demonstrate how Ansible can be used to manage environments as small as a couple of servers, or for massively distributed infrastructure that spans the globe — all with the same simple syntax.
By the end of this course, you will have a solid understanding and hands-on experience building reliable and easily reproducible infrastructure using Ansible, and the knowledge to integrate Ansible into your operations workflow. Our continuous hands-on lab classroom format and real-world practice scenarios cement your new skills with Ansible's tools and leave you prepared to begin taking advantage of radically simple configuration management.
Who should attend
- IT Managers and Leaders
- Developers and Application Teams
- System Administrators
- IT Operations Staff
- Release Engineers
- Configuration Managers
- Anyone involved with IT infrastructure
- ScrumMasters
- Software Managers and Team Leads
Pre-Requisites
Although it is not mandatory, students who have completed the self-paced Fundamentals of DevOps eLearning course have found it very helpful when completing this course.
Course Outline
Part 1: Introduction
- Why configuration management is a critical part of any DevOps team
- Strengths and weaknesses of Ansible
- Web-scale
Part 2: Getting set up
- Some prerequisites
- Getting set up on a Mac
- Getting set up on Linux
- Getting set up on Windows
- Testing with Vagrant
- Using SSH keys to connect to your target nodes
Part 3: Inventory
- Basic inventory example
- Hosts and groups
Part 4: Ansible Playbooks
- A useful directory structure to keep your Ansible code organized
- Using git to manage your Ansible code
- A first look at a playbook to install and configure NTP time synchronization
Part 5: Provisioners
- Connecting Ansible to your preferred cloud provider (we'll use DigitalOcean)
- Creating a new server instance
- Dynamic inventory
- Dynamic inventory on Amazon AWS
- Mixing static and dynamic inventory
Part 6: Highly available infrastructure with Ansible
- Spec up our inventory and host groups
- Using roles
- Configure our database backend
- Configure our web server front-end
- Configure a replicated filesystem
- Configure centralized logging
Part 7: Application deployments with Ansible
- Deploying our app from SCM to our local Vagrant environment
- How we would deploy that code to production once tested by QA
- Updating our application
- How Ansible compares to alternatives such as Capistrano
Part 8: Docker containers with Ansible
- Brief intro to Docker
- The synergy of containerization and automation
- Using Ansible to build Docker containers
- MySQL containers
- Web application containers
- Data storage containers
Part 9: Testing and continuous integration
- Unit, integration and functional testing
- Automating your testing using GitHub and Travis CI
Part 10: Preparing for Ansible back at work
- Real-world use case: Using Ansible to automate CM and application pipelines through continuous integration, release, deployment and operations
- We'll review your own environments and processes and evaluate how to best integrate Ansible's configuration management for your own needs
This course is available for "remote" learning and will be available to anyone with access to an internet device with a microphone (this includes most models of computers, tablets). Classes will take place with a "Live" instructor at the date/times listed below.
Upon registration, the instructor will send along additional information about how to log-on and participate in the class.
School Notes:
Vegetarian, vegan, and gluten-free dietary restrictions can be accommodated. When you purchase your tickets, please reach out to CourseHorse for any food allergies or restrictions.