LinuxCBT.com

Syllabus

Focus: Configuration Management with Ansible

Duration: 8-Hours

  • Configuration Management - Ansible

    • Setup Environment
      • Discuss key features
      • Configure package repository
      • Install Ansible
      • Define Inventory
      • Ensure proper SSH environment
      • Confirm reachability
    •  
    • Infrastructure Groups
      • Identify common classes
      • Define common groups
      • Associate managed nodes with groups
      • Target nodes via groups with commands
      • Explore output
    •  
    • Ad-Hoc Commands
      • Discuss usability
      • Contrast with: 'ssh' && 'parallel-ssh'
      • Run non-privileged | privileged commands
      • Check and reload service
      • Reboot targets
      • Confirm functionality
    •  
    • Modules
      • Discuss applicability
      • Use 'service' module for common tasks
      • Use 'copy' module to propagate files - test
      • Use 'file' module to ensure file compliance
      • Use package management modules to control packages
      • Propagate privileged SSH access for elevation
      • Update target systems applications
      • Ensure the presence of specific packages
      • Fetch interesting content from managed nodes
      • Manage cron entries
      • Alter system variables with 'sysctl'
      • Ensure consistent user accounts on targets
      • Create common group
      • Ensure user membership in common group
      • Perform mass 'wget' operations across nodes
      • Ensure log file presence and attributes via 'file' module
      • Execute ad-hoc commands via 'shell' module
      • Contrast 'shell' and 'command' modules
    •  
    • Playbooks
      • Discuss features and applicability
      • Provision version controlled repo for playbooks
      • Define basic checks playboook for all nodes
      • Ensure the presence of targeted system files
      • Control SELinux status on applicable targets
      • Ensure system clocks are synched across nodes
      • Except NTP servers via play
      • Update and upgrade package repositories
      • Ensure web server package is deployed to targeted nodes
      • Ensure the presence of targeted user account on nodes
      • Discuss VARs as applied to playbooks
      • Create Inventory VARs
      • Update inventory to include geographic regions
      • Create Host-specific VARs
      • Test VAR interpolation per group | host | common
    •  
    • Facts
      • Discuss ascertainment and applicability
      • Use 'setup' module to ascertain various target Facts
      • Restructure Plays and Tasks using: 'when' condition
      • Test interpolation of new condition
      • Execute Playbook on specific targets using Facts
      • Create VAR-based dependency for conditional processing
      • Restructure time synch based on conditional testing
      • Handle NTP servers and clients separately
      • Discuss and expose nested VARs
      • Access key nested VARs
    •  
    • Templates
      • Discuss features and applicability
      • Model: /etc/hosts as a template
      • Test initial propagation to safe-space
      • Personalize hosts template per managed node
      • Debug unanticipated calamities
      • Test propagation to prod directory
    •  
    • Handlers
      • Discuss event facility
      • Fetch disparate, model Apache configs from nodes
      • Create 'webfarm' group to include targets
      • Create play update Apache configuration
      • Create Handler to reload Apache post-config update
      • Confirm functionality
    •  
    • Configuration Hierarchy
      • Discuss ideal structure
      • Restructure config files using Ansible model
      • Distinguish between 'staging' and 'production'
      • Include common and webtier specific attributes
      • Test targeted calls
      • Contrast with unstructured layout
      • Merge webtier handlers and files into new structure
    •  

LinuxCBT CM-Ans Edition

  •  
DEMO