Chap 29 - Introduction to Automation Tools Flashcards
What is EEM?
Embedded Event Manager
What are 2 building blocks of EEM?
- Events
- Actions
What are 3 EEM debug commands?
- debug event manager action cli
- debug event manager all
- debug event manager action mail
What is the EEM keyword used so that the output will include the output of any CLI commands that were issued in the applet?
$_cli_result
In EEM what does “file prompt quiet” do?
It disables the IOS confirmation mechanism that asks to confirm a user’s actions.
What are 4 common EEM email variables?
- _email_server
- _email_to
- _email_from
- _email_cc
What is the EEM command that causes an EEM applet to require manual execution?
event none
What is the command to manually run an EEM applet?
R1# event manager run
What is the command to manually run a TCL script?
tclsh flash:/ping.tcl
What is the command to view any text file?
more flash:ping.tcl
What are 6 configuration changes for which network operators leverage automation for?
- Device name/IP address
- QOS
- ACLs
- Usernames/passwords
- SNMP settings
- Compliance
What are 3 agent-based automation tools?
- Puppet
- Chef
- Saltstack
What is Puppet?
Server/Client functions:
Language:
Push or Pull:
Collection of code or files:
Code deployed as:
Admin interaction:
Service installed on nodes:
Communication Server/Client:
- Server/Client functions: Puppet Master / Puppet Agents
- Language: Ruby-based Domain Specific Language
- Push or Pull: Pull
- Collection of code or files: Modules in PuppetDB
- Code deployed as: Manifests
- Admin interaction: Puppet console
- Service installed on nodes: Puppet agent
- Communication Server/Client: TCP SSL req. certificates
What 3 types of Cisco devices can Puppet be used with?
- Catalyst switches
- Nexus switches
- UCS servers
What does Puppet do to helps an organization standardize its device configurations?
It can periodically verify the configuration on devices. If a configuration on a device has changed it can be alerted on as well as automatically put back to the previous configuration.
How do Puppet agents communicate with the Puppet master?
By using different TCP connections. Each TCP port uniquely represents a communications path from an agent running on a device or node.
What does Puppet allow for?
Puppet allows for the management and configuration of multiple device types at the same time.
What are the 3 installation types of Puppet?
- Monolithic - up to 4000 nodes
- Monolithic with compile masters - 4000 to 20,000
- Monolithic with compile masters and standalone PostgreSQL - more than 20,000 nodes
What 2 things might operations staff need in large-scale Puppet deployments
- Master of Masters (MoM) that manages the distributed Puppet masters and their associated databases
- Compile Masters that are load-balanced Puppet servers that help scale the number of agents that can be managed.
What advantage is there in having a Puppet MoM?
It greatly simplifies the management of the Puppet environments.
What is the hierarchy of Puppet configuration?
- Modules contain manifests
- Manifests contain classes
- Classes contain resources
What 3 things do Puppet modules contain?
- Manifests
- Templates
- Files
What are Puppet Manifests, how are they sent to clients, and what is required to do that?
- They contain the code that configures the clients or nodes running the puppet agent
- Pushed to devices using SSL
- Require certificates to be installed to ensure the security of the communications between master and agents
What is a Puppet Module?
A collection of files and directories that can contain Puppet manifests, as well as other objects such as files and templates
What is a Puppet Module and what does it leverage for communication to devices? called cisco_ios?
- It contains multiple manifests
- Leverages SSH to connect to devices
- Each of these manifests are used to modify the running configuration on Cisco Catalyst devices in some fashion
How are Manifests saved?
They are saved as individual files that have a file extension .pp.
What does Puppet use as its programming language?
Domain-specific Language (DSL) as its “programming language.”
What is Puppet Forge?
Puppet Forge is a free of charge community where puppet modules, manifests, and code can be shared.
What is Chef?
- Server/Client functions:
- Language:
- Push or Pull:
- Collection of code or files:
- Code deployed as:
- Admin interaction:
- Service installed on nodes:
- Communication workstation to Server:
- Communication Server/Client:
- Server/Client functions: Chef Server / Chef Clients
- Language: Ruby DSL
- Push or Pull: Pull
- Collection of code or files: Cookbooks
- Code deployed as: recipes
- Admin interaction: workstation
- Service installed on nodes: OHAI
- Communication workstation to Chef Server: Knife cli
- Communication Server/Client:
What code is Chef written in?
in Ruby and Erlang, but when it comes to actually writing code within Chef, Ruby is the language used
What is the Push model used by configuration management tools?
Push models push configuration from a centralized tool or management server,
What is the Pull model used by configuration management tools?
Pull models check in with the server to see if there is any change in the configuration, and if there is, the remote devices pull the updated configuration files down to the end device.
What are 6 ways Chef is similar to Puppet?
- Both have free open-source versions
- Both also have paid enterprise versions
- Both manage code that needs to be updated/stored
- Both manage devices that need to be configured
- Both are ‘Pull’ models * Both function as a client-server model
How is Chef different from Puppet?
Chef’s structure, terminology, and core components are different from those of Puppet.
Compare the difference in terminology between Puppet and Chef.
- Puppet Master = Chef server
- Puppet agent = Chef client
- Puppet module = Chef Cookbook
- Puppet Manifest = Chef Recipe
- Puppet console = Chef workstation
What is Knife in Chef?
The name of the command-line tool used to upload cookbooks to the Chef server.
What is the command to upload a cookbook to the Chef server?
knife upload (cookbookname)
Where can the Chef server be hosted?
- Locally on the workstation
- Remotely on a server
- Hosted in the cloud.
What happens to create Chef code?
- Created on the Chef workstation
- Stored in a file called a recipe
- Uploaded to the Chef server in order to be used in the environment.
What are the four types of Chef server deployments?
- Chef Solo - server hosted on workstation
- Chef Client and Server - distributed components
- Hosted Chef - in the cloud
- Private Chef - all components within the same enterprise
What is OHAI?
A service that is installed on the nodes that is used to collect the current state of a node and to send the information back to the Chef server through the Chef client service.
In Chef where are cookbooks stored?
On the Chef server.
What is a Chef Cookbook and what is it comparable to in Puppet?
- A collection of recipes
- Comparable to a module in Puppet
What is a Chef Recipe and what is it comparable to in Puppet?
- Code being deployed to make configuration changes
- Comparable to a manifest in Puppet
Which Chef component is responsible for all communications btw client and server?
The Chef client service that runs on the nodes is responsible for all communications to the Chef server.