ansible / workshops

Training Course for Ansible Automation Platform
MIT License
1.76k stars 1.15k forks source link

Teardown Script Fails when Student count 50 or more #1684

Open VDI-Tech-Guy opened 2 years ago

VDI-Tech-Guy commented 2 years ago

Problem Summary

When doing Teardown script fails due to AWS Boto Limitation of 200 Filtered objects, the code will scan for all objects related to the provision and fail if there are >200 (at 50 students there are 201 objects) and it will fail due to code issues.

Understanding this is a limitation of BOTO not the workshop either a recoding of the deletion process to delete certain objects first like Web Nodes then other objects could be done or limit to 49 to prevent BOTO issue.

Issue Type

Bug

Extra vars file

---
# region where the nodes will live
ec2_region: us-west-2
# name prefix for all the VMs
ec2_name_prefix: MMABIS-AnsibleGH
# amount of work benches to provision
student_total: 50
# workshp runs in F5 mode
workshop_type: f5
# Required for AAP download https://access.redhat.com/articles/3626371
offline_token: "OMITED"
# Required for podman authentication to registry.redhat.io
redhat_username: OMITED
redhat_password: "OMITED"
# DNS domain
workshop_dns_zone: "f5demo.net"
## Optional Variables
# password used for student account on control node
admin_password: Ansible123!
# turn DNS on for control nodes, and set to type in valid_dns_type
dns_type: aws
create_cluster: false
ibm_community_grid: false

Ansible Playbook Output

Dont have the output but has error similar to

An error occurred (FilterLimitExceeded) when calling the DescribeInstances operation:
The maximum number of filter values specified on a single call is 200

I found a RH article expressing same issue - https://bugzilla.redhat.com/show_bug.cgi?id=1647125

Github issue on same - https://github.com/boto/boto3/issues/1099

Ansible Version

[root@DS9 workshops-aap2]# ansible --version ansible [core 2.12.4] config file = None configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/lib/python3.9/site-packages/ansible ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections executable location = /usr/local/bin/ansible python version = 3.9.6 (default, Nov 9 2021, 13:31:27) [GCC 8.5.0 20210514 (Red Hat 8.5.0-3)] jinja version = 3.1.1 libyaml = True

Ansible Configuration

[root@DS9 workshops-aap2]# ansible-config dump --only-changed [root@DS9 workshops-aap2]#

Ansible Execution Node

CLI Ansible (Ansible Core)

Operating System

Happend on RHEL (Latest) and Rocky Linux (Python 3.9)

IPvSean commented 2 years ago

This is an issue with the boto3 SDK, not Ansible, nor the workshop provisioner-> https://github.com/ansible-collections/amazon.aws/issues/713

here is the boto3 issue-> https://github.com/boto/boto3/issues/1099