Ansible

  • Deploy Environment
    • Move private key to directory
    • Configure permissions for private key
    • Install Ansible
    • Confirm Ansible installation
    • View all Ansible commands
    • View default hosts file
    • Confirm SSH from Ansible control tower
    • Configure inventory file
      • local
      • loadbalancer
      • webserver
    • List hosts in inventory file
    • Configure Ansible to not SSH to local host
    • Create Ansible configuration file
    • Configure global/default inventory file
    • List control host in inventory file
    • List loadbalancer in inventory file
    • List webservers in inventory file
    • Configure host aliases
    • List all hosts in inventory file
    • List all hosts in inventory file /w asterisk
    • List all hosts with name and asterisk
    • List all loadbalancers and webservers
    • List all hosts except control
    • List one web server w/ array syntax
  • Tasks
    • Configure remote user
    • Configure private key
    • Disable host key checking
    • Configure retry files
    • Execute ping module on all hosts
    • Execute shell module on loadbalancer and webservers
    • Confirm success of task
    • Execute command module on all hosts except local
    • Confirm failure of task
  • Playbooks
    • Write sample (architecture) of playbook
    • Write playbook to ping all servers
    • Write playbook for shell task on loadbalancers and webservers
    • Create playbook to update load balancer and web servers
    • Run playbook
    • Configure playbook to become root user
    • Run playbook (confirm success)
    • Run playbook (confirm no changes)
    • Create playbook to install Apache on load balancer and Apache and PHP on web servers
    • Run playbook
    • Configure playbook to start Apache now and on reboot for load balancer and web servers
    • Run playbook
    • Create index.php
    • Create playbook to copy index.php file to web servers
    • Run playbook
    • View web pages on load balancer and web servers
    • Modify index.php (short opening tags)
    • View web pages on web servers
    • Modify playbook to configure php.ini for short opening tags and restart Apache
    • Run playbook
    • View changes in web browser
    • Configure Jinja file for load balancing
    • Create playbook to upload Jinja file to load balancer and restart Apache
    • Run playbook
    • Confirm load balancer configuration
    • Review balancer manager configuration
    • Run playbook for load balancer configuration
    • Confirm Apache restarted
    • Configure service handler for load balancer configuration (template task)
    • Run playbook for load balancer configuration
    • Confirm Apache did not restart
    • Congregate all playbooks into one
    • Run playbook
    • Configure playbook to check status of Apache service on load balancer and web servers
    • Run playbook
    • Run ad hoc command to stop Apache on load balancer
    • Run playbook to check status of Apache on load balancer and web servers
    • Run ad hoc command to start Apache on load balancer
    • Run playbook to check status of Apache on load balancer and web servers
    • Add check status playbook to all playbooks
    • Run all playbooks
  • Variables
    • Run ad hoc command to view all variable data during gathering facts for one host
    • View the ansible_facts associated with metadata
    • Inject ansible_hostname into a playbook with Jinja2 templating
      • Create info.php with contents of the variable (ansible_hostname)
      • Rerun playbook
      • View info.php file on load balancer and two web servers
    • Create variable in playbook for path destination (setup-app.yaml)
    • Replace text with variable 2x
    • Rerun playbook
    • Confirm no changes have been made
    • Create task to list contents of variable
    • Register a variable
    • Create task to run debug module on registered variable