Skip to content

Latest commit

 

History

History
91 lines (68 loc) · 3.94 KB

README.md

File metadata and controls

91 lines (68 loc) · 3.94 KB

Ansible AWS training provisioner

The github.com/ansible/workshops contains a provisioner provision_lab.yml, which is an automated lab setup for Ansible training on AWS (Amazon Web Services). Set the workshop_type variable below to provision the corresponding workshop.

Workshop Deck Exercises Workshop Type Var
Ansible Red Hat Enterprise Linux Workshop Deck Exercises workshop_type: rhel
Ansible Network Automation Workshop Deck Exercises workshop_type: networking
Ansible F5 Workshop Deck Exercises workshop_type: f5

Table Of Contents

Requirements

  • This provisioner must be run with Ansible Engine v2.8.0 or higher.
  • AWS Account (follow directions on one time setup below)

Lab Setup

For One Time Setup - click here

Setup (per workshop)

  1. Define the following variables in a file passed in using -e @extra_vars.yml
---
# region where the nodes will live
ec2_region: us-east-1
# name prefix for all the VMs
ec2_name_prefix: TESTWORKSHOP
# creates student_total of workbenches for the workshop
student_total: 2
# Set the right workshop type, like networking, rhel or f5 (see above)
workshop_type: rhel
#OPTIONAL VARIABLES
# password for Ansible control node, defaults to ansible
admin_password: ansible
# creates AWS S3 website for ec2_name_prefix.workshop_dns_zone
create_login_page: true                
# Sets the Route53 DNS zone to use for the S3 website
workshop_dns_zone: rhdemo.io           
# automatically installs Tower to control node
towerinstall: true                     
# automatically licenses Tower if license is provided
autolicense: true
# install xrdp with xfce for graphical interface
#xrdp: true

If you want to license it you must copy a license called tower_license.json into this directory. If you do not have a license already please request one using the Workshop License Link.

For more extra_vars examples, look at the following:

  1. Run the playbook:

     ansible-playbook provision_lab.yml -e @extra_vars.yml
    
  2. Login to the EC2 console and you should see instances being created like:

     `TESTWORKSHOP-student1-ansible`
    

Accessing student documentation and slides

  • Exercises and instructor slides are hosted at http://ansible.github.io/workshops
  • Workbench information is stored in two places after you provision:
    • in a local directory named after the workshop (e.g. TESTWORKSHOP/instructor_inventory)
    • if create_login_page: true is enabled, there will be a website ec2_name_prefix.workshop_dns_zone (e.g. TESTWORKSHOP.rhdemo.io)

Lab Teardown

The teardown_lab.yml playbook deletes all the training instances as well as local inventory files.

To destroy all the EC2 instances after training is complete:

  1. Run the playbook:

     ansible-playbook teardown_lab.yml -e @extra_vars.yml
    

FAQ

For frequently asked questions see the FAQ