Advanced Ansible Configuration and Administration


Course Number: ANS-103

Duration: 2 days (13 hours)

Format: Live, hands-on

Advanced Ansible Training Overview

This live, online or in-person Advanced Ansible training teaches more advanced Ansible skills, including using Ansible Tower, configuring a network device managed node, and implementing Ansible best practices.

Location and Pricing

Accelebrate offers instructor-led enterprise training for groups of 3 or more online or at your site. Most Accelebrate classes can be flexibly scheduled for your group, including delivery in half-day segments across a week or set of weeks. To receive a customized proposal and price quote for private corporate training on-site or online, please contact us.

Objectives

  • Perform advanced configuration for an Ansible control node and managed node(s)
  • Add the usage of conditionals, loops, filters, and loopbacks to playbooks
  • Control ad-hoc and playbook output with callback plugins
  • Create and implement dynamic inventory definitions
  • Implement reusable roles, capabilities, and dependencies
  • Program and use the features of the Ansible Tower
  • Develop best practices for all Ansible components

Prerequisites

It is assumed that participants are working systems administrators/developers/testers with some working knowledge of Ansible Core basic/intermediate features and an understanding of fundamental system utilities/commands on Linux systems. It is also assumed that participants have attended the Intermediate Ansible Configuration and Administration course.

Outline

Expand All | Collapse All

Review of Control Code and Managed Node Required Configuration
  • Ansible components review
  • Running Ansible in escalated privilege mode
  • SSH key setup
  • Ansible common account creation, setup, and features
  • Required components for a Linux and networking device-managed node
Advanced Control Node Setup and Configuration
  • Ansible Core installation methods: rpm, pip, and Tower (changes)
  • Ansible command and module documentation
  • Inventory (hosts) file contents (Linux/Unix and network device nodes)
  • Dynamic inventory (hosts) file contents and usage
  • Ansible configuration file (locations and parameter definitions)
  • Special use configuration parameter definitions
  • Fact caching using jsonfile and redis
  • Creating and using local system facts
  • Understanding the hostvars dictionary (usage)
  • All methods of variable creation and usage
Ansible Playbooks
  • Using the FQCN (fully qualified collection path) for module access
  • Playbook: loops, conditionals, tags, notifications, plugins, filters, and lookups
  • Controls: output formatting and inclusion with callbacks
  • Advanced Jinja 2 template usage
  • Using “inner” and “outer” playbooks
  • The meta module
Ansible Modules
  • Including external tasks in a playbook
  • Controls over node and task scheduling
  • Configuration parameters that control rolling updates
  • Using Ansible (playbook) debugging capabilities
  • Writing a customized module (and embedded documentation)
  • Asynchronous task scheduling
  • Block control - rescue always
Roles in Ansible
  • Overview of a role (review)
  • Creating a role (review)
  • Using (a) role(s) (review)
  • Packaging up a role (review)
  • Ansible Galaxy - capabilities and usage with roles (review)
  • Git repo (role) repository (creation) on a non-control node
  • Local access of a Git repo role repository
  • Remote access of a Git repo role repository
  • Importing role definitions (on a control node)
  • Role dependencies definitions and usage
Collections in Ansible
  • Overview of collections
  • Creating a collection (structure)
  • Using roles in a collection
  • Packaging up a collection (tar file and Git repository)
  • Installing a collection (from a tar file and Git repository)
  • Putting and using playbooks in a collection
  • Putting and using modules in a collection
Network Device Managed Nodes
  • Requirements for a network device-managed node
  • Inventory and access control information on the control node
  • Required setup of a network device-managed node
  • Module usage for a network device-managed node
Ansible Tower (AWX can be substituted in place of the Ansible Tower)
  • Features of the Ansible Tower (review)
  • Preparation and installation of the Ansible Tower (review)
  • Components (files and services) of the Ansible Tower (review)
  • Starting and stopping the Ansible Tower (review}
  • Logging into the Ansible Tower (review)
  • Using AWX-manage
  • Ansible Tower smart inventory
  • Defining manual and Git (SCM) projects
  • Creating job templates for an existing project
  • Watching and chaining (multi-) playbooks (workflows)
  • Using roles in the Ansible Tower
  • Interfacing with the Ansible Tower API
  • Installing and using the tower-CLI/AWS utility
  • Ansible Core tower_ modules (to the Ansible Tower)
  • Backing up and restoring Ansible tower objects
  • Backing up and restoring the Ansible Tower database
  • Updating the Ansible Tower
  • Introduction to Ansible Tower clusters
  • Ansible Tower virtual environment (setup and usage)
Conclusion

Training Materials

All Advanced Ansible training attendees receive comprehensive courseware.

Software Requirements

Attendees will not need to install any software on their computer for this class. The class will be conducted in a remote environment that Accelebrate will provide; students will only need a local computer with a web browser and a stable Internet connection. Any recent version of Microsoft Edge, Mozilla Firefox, or Google Chrome will be fine.



Learn faster

Our live, instructor-led lectures are far more effective than pre-recorded classes

Satisfaction guarantee

If your team is not 100% satisfied with your training, we do what's necessary to make it right

Learn online from anywhere

Whether you are at home or in the office, we make learning interactive and engaging

Multiple Payment Options

We accept check, ACH/EFT, major credit cards, and most purchase orders



Recent Training Locations

Alabama

Birmingham

Huntsville

Montgomery

Alaska

Anchorage

Arizona

Phoenix

Tucson

Arkansas

Fayetteville

Little Rock

California

Los Angeles

Oakland

Orange County

Sacramento

San Diego

San Francisco

San Jose

Colorado

Boulder

Colorado Springs

Denver

Connecticut

Hartford

DC

Washington

Florida

Fort Lauderdale

Jacksonville

Miami

Orlando

Tampa

Georgia

Atlanta

Augusta

Savannah

Hawaii

Honolulu

Idaho

Boise

Illinois

Chicago

Indiana

Indianapolis

Iowa

Cedar Rapids

Des Moines

Kansas

Wichita

Kentucky

Lexington

Louisville

Louisiana

New Orleans

Maine

Portland

Maryland

Annapolis

Baltimore

Frederick

Hagerstown

Massachusetts

Boston

Cambridge

Springfield

Michigan

Ann Arbor

Detroit

Grand Rapids

Minnesota

Minneapolis

Saint Paul

Mississippi

Jackson

Missouri

Kansas City

St. Louis

Nebraska

Lincoln

Omaha

Nevada

Las Vegas

Reno

New Jersey

Princeton

New Mexico

Albuquerque

New York

Albany

Buffalo

New York City

White Plains

North Carolina

Charlotte

Durham

Raleigh

Ohio

Akron

Canton

Cincinnati

Cleveland

Columbus

Dayton

Oklahoma

Oklahoma City

Tulsa

Oregon

Portland

Pennsylvania

Philadelphia

Pittsburgh

Rhode Island

Providence

South Carolina

Charleston

Columbia

Greenville

Tennessee

Knoxville

Memphis

Nashville

Texas

Austin

Dallas

El Paso

Houston

San Antonio

Utah

Salt Lake City

Virginia

Alexandria

Arlington

Norfolk

Richmond

Washington

Seattle

Tacoma

West Virginia

Charleston

Wisconsin

Madison

Milwaukee

Alberta

Calgary

Edmonton

British Columbia

Vancouver

Manitoba

Winnipeg

Nova Scotia

Halifax

Ontario

Ottawa

Toronto

Quebec

Montreal

Puerto Rico

San Juan