A course by Matt Makai of Full Stack Python for software developers who want to learn the Ansible configuration management tool for managing servers, deploying web applications and performing DevOps tasks.
Introduction to Ansible
Introduction to Ansible is a 71-lesson 2 hours 54 minutes self-paced course by Talk Python Training. A course by Matt Makai of Full Stack Python for software developers who want to learn the Ansible configuration management tool for managing servers, deploying web applications and performing DevOps tasks.
Course facts
- Lessons
- 71
- Duration
- 2 hours 54 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- Talk Python Training
- Price
- Premium
Most books and courses only walk you through the narrow happy path through the difficult programming forest. When you step off the path you can feel lost and frustrated because the instructor is no longer there to keep you on track.
This course takes a different approach where I show you the mistakes and errors that you will commonly run into when using Ansible, such as:
- Handling Python 3 instead of 2 as a default remote server installation
- Identifying and fixing typos in command line arguments and file paths
- Tweaking configurations for services that need to start in certain orders
- Upgrading privileges when permissions are denied in running tasks
- Working with Ansible modules that have specific Python dependencies such as psycopg2 for PostgreSQL
- Fixing shell script commands running within Ansible tasks
The best way to learn a new software development library is to pair program with a more experienced developer. That's why most of this course is live coding with explanations of what we are doing and why along the way. View the full course outline for more details.
Learn Ansible by configuring servers and deploying applications
Ansible is a stable, widely-used open source configuration management tool that works amazingly well for application deployments in any programming language, not just Python web apps.
During this course we will build several Ansible playbooks together so we can learn the tool's core concepts including:
- Modules
- Tasks
- Roles
- Templates
- YAML syntax
- Variables
- Encryption
We'll build playbooks that demonstrate these concepts and connect them together by configuring servers and handling deployments.
Who is this course for?
The ideal student for this course is someone with the ability to create web applications (even simple ones) who wants to learn Ansible and configuration management to automate working with servers and application deployments.
If you don't know any programming at all, you'll want to take a primer first. I recommend you take the free MIT course Introduction to Computer Science and Programming Using Python.
If you don't know Python, consider taking Michael's Python Jumpstart by Building 10 Apps course. You do not need to know Python to learn Ansible but a bit of knowledge will help understand some of the edge case issues we debug in this course.
Who teaches Introduction to Ansible? Talk Python Training
Talk Python Training is the paid course platform of Michael Kennedy, the host of the long-running Talk Python To Me podcast — one of the most-listened-to podcasts in the Python ecosystem. The course platform extends Michael's interview-based knowledge of the field into structured video courses taught by Michael and a curated set of guest instructors.
The course catalog covers the full Python landscape: web development with Django, Flask, FastAPI, and the broader async-Python stack; data science and pandas; LLM / RAG application development; testing and CI/CD; deployment patterns; the data-engineering side of Python; and a long list of practical Python patterns aimed at working developers. Few platforms cover the language with this much breadth from inside the Python community itself.
The CourseFlix listing under this source carries over 18 Talk Python Training courses spanning that range. Material is paid; Talk Python Training runs on per-course pricing on the original platform. Courses are aimed at developers using Python as a serious primary language rather than as a scripting tool.
What lessons are included in Introduction to Ansible?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Welcome to the Course Demo | 01:44 | |
| 2 | Why Ansible? | 04:21 | |
| 3 | Obtaining the Source Code | 00:33 | |
| 4 | Meet Your Instructor | 03:23 | |
| 5 | Working with Ansible | 03:26 | |
| 6 | Thank you to our sponsor, DigitalOcean | 00:38 | |
| 7 | Configuring Ansible on macOS | 02:53 | |
| 8 | SSH Keys on macOS | 01:55 | |
| 9 | Options for Using Ansible on Windows | 01:30 | |
| 10 | Configuring Ansible on Ubuntu | 03:12 | |
| 11 | SSH Keys on Ubuntu | 01:46 | |
| 12 | Core Ansible Concepts Overview | 04:44 | |
| 13 | Modules | 04:17 | |
| 14 | Tasks | 02:09 | |
| 15 | Running Ad Hoc Tasks | 02:35 | |
| 16 | Roles | 02:19 | |
| 17 | Playbooks | 01:18 | |
| 18 | Inventory | 01:37 | |
| 19 | YAML | 01:57 | |
| 20 | Applying the Ansible Concepts | 00:43 | |
| 21 | Writing Our First Playbook | 01:01 | |
| 22 | YAML in the Playbook File | 01:49 | |
| 23 | Sign up for DigitalOcean | 01:09 | |
| 24 | Provision A Server | 01:34 | |
| 25 | Create A New SSH Key | 02:24 | |
| 26 | Creating Our First Role | 04:12 | |
| 27 | Adjusting Output Verbosity | 01:52 | |
| 28 | New Users with the group, user and authorized_key Modules | 03:34 | |
| 29 | Reviewing Our First Playbook | 00:55 | |
| 30 | Working with Data | 01:35 | |
| 31 | Ansible Variables | 03:12 | |
| 32 | Environment Variables | 02:28 | |
| 33 | What are Templates? | 01:13 | |
| 34 | Working with Templates | 03:38 | |
| 35 | Encrypting Data | 01:09 | |
| 36 | Ansible Vault | 03:02 | |
| 37 | Using Data | 00:55 | |
| 38 | Configuring Servers | 01:33 | |
| 39 | New Playbook Scaffolding | 01:08 | |
| 40 | Provisioning Two Servers | 01:11 | |
| 41 | Our New Inventory File | 01:06 | |
| 42 | Initial Configuration Playbook | 06:17 | |
| 43 | Creating a Non-root User | 02:43 | |
| 44 | Installing System Packages with the apt Module | 01:39 | |
| 45 | Testing Our Playbook | 01:12 | |
| 46 | Setting up Firewalls with the ufw Module | 02:20 | |
| 47 | Splitting Web Server and Database Server Roles | 04:25 | |
| 48 | Running Nginx | 01:42 | |
| 49 | The template Module for Configuration Files | 02:32 | |
| 50 | Installing PostgreSQL | 03:35 | |
| 51 | PostgreSQL Management with the postgresql_db and postgresql_user Modules | 04:44 | |
| 52 | Testing the Database Connection | 00:59 | |
| 53 | Reviewing Ansible Modules for Server Configuration | 00:35 | |
| 54 | Learning Ansible Modules by Deploying | 03:09 | |
| 55 | DNS Configuration | 01:45 | |
| 56 | Enhancing Our Playbook and Let's Encrypt | 02:46 | |
| 57 | SSL Certificates with the shell and stat Modules | 05:42 | |
| 58 | Enhancing the Nginx Template | 05:41 | |
| 59 | Testing the Nginx Tasks | 03:02 | |
| 60 | Deploy Keys on GitHub | 05:54 | |
| 61 | Cloning Repositories with the git Module | 01:43 | |
| 62 | Installing App Dependencies with venv and pip3 | 03:17 | |
| 63 | Using the start-at-task Argument | 02:07 | |
| 64 | Configuring Supervisor with the service and pause Modules | 03:51 | |
| 65 | Solving Template File Name Issues | 01:27 | |
| 66 | Fixing Our Nginx Configuration | 03:01 | |
| 67 | Serving Static Assets | 01:02 | |
| 68 | Updating Config Files with the lineinfile Module | 03:06 | |
| 69 | Learning Ansible with A Deployment Recap | 01:11 | |
| 70 | Course Recap | 02:30 | |
| 71 | What to Investigate Next | 02:42 |
Get instant access to all 70 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to Introduction to Ansible?
-
Updated 2y agoMachine Learning: Natural Language Processing in Python (V2)
By: UdemyWelcome to Machine Learning: Natural Language Processing in Python (Version 2). NLP: Use Markov Models, NLTK, Artificial Intelligence, Deep Learning, Machine Le22h 4m -
Updated 1mo agoIntroduction to Inferential Statistics
By: Zero To MasteryYou learn core inferential stats like intervals, tests, ANOVA, and run them in Python. The course shows how to read messy data and make clear data decisions.9h 25m -
Updated 2y agoPython Mega Course: Learn Python in 60 Days, Build 20 Apps
By: UdemyEmbark on a transformative journey in this intensive 60-day course, transitioning from a complete beginner with no programming experience to a skilled Python.51h 19m5/5 -
Updated 2y agoFullstack Flask: Build a Complete SaaS App with Flask
By: Fullstack.ioBuild (and deploy) a real SaaS app in 8 weeks using Python and Flask with this self-paced, online course.7h 33m -
Updated 1y agoDeployment from Scratch
By: Josef Strzibny"Deployment from Scratch" offers a comprehensive introduction to the world of web application deployment .5/5 -
Updated 2y agoPython 3: Deep Dive (Part 2 - Iteration, Generators)
By: UdemyI will show you exactly how iteration works in Python - from the sequence protocol, to the iterable and iterator protocols, and how we can write our own sequenc34h 42m5/5 -
Updated 2y agoSecure APIs with FastAPI and the Microsoft Identity Platform
By: Talk Python TrainingAzure Active Directory (Azure AD) is a cloud-based Identity and Access Management service from Microsoft. With security threats on the rise it’s important to kn1h 45m -
Updated 2y agoApache Spark Certification Training
By: Florian RoscheckApache Spark is a core data skill - here is how to show you got it! Learn Apache Spark from the ground up and show off your knowledge with the Databricks Associ15h 13m
More courses by Talk Python Training
-
FreeUpdated 2y agoPython Jumpstart by Building 10 Apps
Programming is fun and profitable. Learning to become a software developer should be equally fun! This course will teach you everything you need to know about t7h 8m5/5 -
Updated 2y agoAsync Techniques and Examples in Python
Python's async and parallel programming support is highly underrated. In this course, you will learn the entire spectrum of Python's parallel APIs. We will star5h 2m5/5 -
Updated 2y ago#100DaysOfCode with Python course
#100DaysOfCode in Python is your perfect companion to take the 100 days of code challenge and be successful.17h 27m -
Updated 2y agoModern APIs with FastAPI and Python Course
FastAPI is one of the most exciting new web frameworks out today. It's exciting because it leverages more of the modern Python language features than any other3h 53m -
Updated 2y agoHTMX + Flask: Modern Python Web Apps, Hold the JavaScript
HTMX, Flask & Modern Python Web Apps — build dynamic Flask apps with HTMX hypermedia. No JS framework, no build pipeline, full interactivity.3h 3m -
FreeUpdated 3y agoEffective PyCharm (2021 edition)
PyCharm is the premier Python IDE (integrated development environment). You will be hard pressed to find an editor that gives a more holistic way to build.7h 30m