Ansible, Terraform, Puppet, and Chef Flashcards
What is configuration drift?
When individual changes made over time cause a device’s configuration to deviate from the standard/correct configurations as defined by the company
Explain why configuration drift can lead to issues
As problems occur, records of individual fixes and their config changes aren’t kept, therefore it becomes hard to know what parts of the config are necessary/meaningful and which aren’t
What is configuration provisioning?
How configuration changes are applied to devices. Includes configuring new devices.
What are the two essential components of configuration provisioning?
- Templates
- Variables
Ansible, Puppet, Chef, and Terraform are all examples of:
Configuration management tools
Is Ansible agentless?
Yes
What does agentless mean?
No special software has to be run on managed devices for the config management tool to run properly.
Does Ansible use a push or pull model of getting updates to managed devices?
Push model. The Ansible server (control node) uses SSH to connect to managed devices and push config changes to them.
Does Puppet use a push or pull model of getting updates to managed devices?
Pull model. Managed devices connect to the Puppet sever to get updates from it.
Does Chef use a push or pull model of getting updates to managed devices?
Pull model. Managed devices connect to the Chef server to get updates from it.
What are Ansible playbooks?
Files that are the “blueprints of automation tasks”. Outline the logic and actions of the tasks that Ansible should do. Written in YAML.
What language are Ansible playbooks written in?
YAML
What is an Ansible inventory?
File that lists the devices that will be managed by Ansible, as well as the characteristics of each device. Written in INI, YAML, or other formats
What is an Ansible template?
File that represents the device’s configuration file, but without specific values for the configuration variables.
Written in Jinja2 templating lang
What is an Ansible variable file?
File that lists variables and their values. Values are substituted into the templates to create complete config files. Written in YAML