Learning Path: Automation with Ansible, Puppet, and Salt
Course
Online
Description
-
Type
Course
-
Methodology
Online
-
Start date
Different dates available
It is no surprise that automation and orchestration make life very easy, be it a small organization or a large-scale industry that houses hundreds of servers. IT automation is essentially the ability to orchestrate and integrate tools, people, and processes through a certain workflow. Automation with Ansible, Puppet, and Salt is a Learning Path that looks at the most popular tools for automation, their advantages, and how you can use each of these tools to automate your IT infrastructure effectively.Packt’s Video Learning Paths are a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it. In this one, we'll cover the why and how of Ansible, Puppet, and Salt, in a step-by-step, progressive manner. Initially, we focus on Ansible. You will learn how to manage environments and implement strategies in Ansible and be introduced to Ansible Galaxy and Tower, which are Ansible's enterprise tooling for supporting large-scale infrastructure. We then move on to learning Puppet. Puppet is a configuration management tool that allows you to automate all your IT configurations. Using Puppet you can control each Puppet agent in a network. You will learn how to do so by first understanding the Puppet ecosystem and then detailed topics such as configuration and management of Puppet servers, environments, module repositories, and reusable modules. With Salt too, we use a similar approach. We start from the basics, such as installing, configuring, deploying, and managing a web application to advanced concepts like Docker containers across multiple systems behind a HAProxy load balancer.By the end of this Learning Path, you will be able to build and manage your infrastructure and fully utilize its potential. This course is authored by some of the best instructors in this field:
Facilities
Location
Start date
Start date
About this course
Configure and manage your infrastructure using Ansible Playbooks
Create task blocks and choose the right Ansible Strategy for the job
Understand the nuances of Ansible 2 and its new features
Write efficient, reusable, and modularized Puppet code
Write extensive tests for the code and run automated builds using Jenkins Integration
Create a pipeline for effective code management
Understand Salt’s state system and write and manage complex states
Use and react to real-time events across an infrastructure
Reviews
This centre's achievements
All courses are up to date
The average rating is higher than 3.7
More than 50 reviews in the last 12 months
This centre has featured on Emagister for 4 years
Subjects
- Install
- Systems
- Web
- Approach
- Server
- Access
Course programme
- Use of the Ansible automation tool
- Ansible Security
- Reasons to try Ansible
- A demonstration of how configuration management has changed over time
- Differences between traditional bash and process in Ansible
- An example on manual versus shell script versus playbook
- Install and set up the environment for Ansible
- Basic configuration files
- Cloud integration and Ansible tower
- What's the difference between a server and a machine?
- What is an Ansible target machine?
- How do Ansible tasks, plays, and playbooks fit together?
- Task blocks (which can make your code easier to read and reason about)
- Dynamic includes (which can allow you to simplify your playbooks)
- Execution strategies (which can dramatically improve Ansible's performance on large deployments)
- Which type of VM to use for your Ansible Controller machine
- How to set things up to make your learning experience comfortable
- Install Ansible on Ubuntu
- Two ways to install Ansible on Ubuntu
- How to install Ansible through your package manager (if you just want a low-fuss install to learn with )
- How to install Ansible through their third-party repository (PPA) in Ubuntu (if you want something more up-to-date)
- How to install Ansible through pip (if you've already got a Python development environment set up)
- Use the Ansible-provided script to set up your shell environment so that you can use your bleeding-edge Ansible code
- Create three containers
- Automated by a playbook in one of the first pieces of Ansible code
- The top-level Ansible configuration file
- The user-level Ansible configuration file
- A config file in the directory that Ansible is being executed from
- The ANSIBLE-CONFIG environment variable
- What the inventory file is?
- Basic syntax for the Ansible inventory file
- The top-level Ansible inventory file (/etc/ansible/hosts)
- Pinging and checking memory usage
- Install a package
- Add timeouts to your commands
- Specify additional command-line arguments (custom users, ignoring host-key checking, etc.)
- Discuss how Playbooks make code reuse easy
- See some simple examples of practical playbooks
- Look at some Python code that creates an empty playbook template
- Compare that to a playbook-creating Ansible playbook
- Where to find documentation for modules you are interested in
- The advantages of using modules vs. manually managing a task
- Managing state versus managing process, and how it can make your life easier
- Using Package module
- Using Files and Directories module
- Using System state module
- The different levels (namespaces) at which variables can be applied
- The most common places to set variables and their benefits/drawbacks
- How Ansible gathers facts about a target host, and when you might want to disable this behavior
- How you can access facts that Ansible has registered
- Deployed on a single test host
- Install and configure the Mattermost application
- Look at the different modules
- Ansible features that were used
- Doing troubleshooting
- Use debugging along with Ansible errors
- with_items
- with_dict
- with_nested and conditionals like:
- when
- register
- changed_when
- failed_when
- Introduce control flow for your file content
- Use regular Python for control flow and iteration
- Learn some of the rules of YAML
- Working with this markup language
- Learn the optional 'rescue' and 'always' block features
- Difference between using a linear(default) strategy and free strategy
- Choosing the right feature
- Install a role from Ansible Galaxy
- Use that role in a Playbook
- Control where a downloaded role is stored
- Remove a role (cleanup)
- Cover some of the basic security features
- Using Ansible for provisioning, deployment, configuration management, and orchestration
- Use provision services on all major cloud providers
- UseAnsible modules for on-premise virtualization and cloud solutions
- Provisioning and configuring Application Servers on EC2
- Provisioning an RDS instance and a replica to handle our database needs
- Creating EC2 security groups to manage access and protect our infrastructure
- Dynamically creating host groups from the infrastructure we're provisioning
- Role-based Access Control.
- An API that you can integrate into the rest of your automation tooling.
- A GUI that allows nontechnical users to leverage Ansible's power.
- Use of the Ansible automation tool
- Ansible Security
- Reasons to try Ansible
- A demonstration of how configuration management has changed over time
- Differences between traditional bash and process in Ansible
- An example on manual versus shell script versus playbook
- Install and set up the environment for Ansible
- Basic configuration files
- Cloud integration and Ansible tower
- What's the difference between a server and a machine?
- What is an Ansible target machine?
- How do Ansible tasks, plays, and playbooks fit together?
- Task blocks (which can make your code easier to read and reason about)
- Dynamic includes (which can allow you to simplify your playbooks)
- Execution strategies (which can dramatically improve Ansible's performance on large deployments)
- Which type of VM to use for your Ansible Controller machine
- How to set things up to make your learning experience comfortable
Additional information
Learning Path: Automation with Ansible, Puppet, and Salt