Introduction
The infra.support_assist collection (v1.1.1, May 2026) automates the most tedious part of Red Hat support workflows — gathering diagnostic data. Instead of manually running sosreport, collecting logs, and uploading to the Support Portal, this collection handles the entire process: gather system reports, optionally create a support case, and upload diagnostics directly. It's maintained by the Red Hat Community of Practice (redhat-cop).
Installation
Copy # Install from Ansible Galaxy
ansible-galaxy collection install infra.support_assist
# Pin version in requirements.yml
# collections:
# - name: infra.support_assist
# version: "1.1.1"
Quick Start
Copy ---
- name: Gather support diagnostics
hosts: problematic_servers
become: true
tasks:
- name: Collect system diagnostics
ansible.builtin.include_role:
name: infra.support_assist.collect_diagnostics
- name: Generate sosreport
ansible.builtin.include_role:
name: infra.support_assist.sosreport
Common Use Cases
Gather All Diagnostics
Copy - name: Full diagnostic collection
hosts: all
become: true
vars:
support_assist_output_dir: /tmp/support-diagnostics
support_assist_compress: true
tasks:
- name: Collect system information
ansible.builtin.include_role:
name: infra.support_assist.collect_diagnostics
vars:
collect_system_info: true
collect_network_info: true
collect_storage_info: true
collect_service_status: true
- name: Fetch diagnostics to controller
ansible.builtin.fetch:
src: "{{ support_assist_output_dir }}/diagnostics.tar.gz"
dest: "./diagnostics/{{ inventory_hostname }}/"
flat: true
Create and Upload to Support Case
Copy - name: Automated support case workflow
hosts: problematic_server
become: true
vars:
rh_portal_username: "{{ vault_rh_username }}"
rh_portal_password: "{{ vault_rh_password }}"
support_case_number: "03123456"
tasks:
- name: Collect diagnostics
ansible.builtin.include_role:
name: infra.support_assist.collect_diagnostics
- name: Upload to Red Hat Support Portal
ansible.builtin.include_role:
name: infra.support_assist.upload_diagnostics
vars:
upload_case_number: "{{ support_case_number }}"
no_log: true
Proactive Health Checks
Copy - name: Weekly health check
hosts: rhel_servers
become: true
tasks:
- name: Run health assessment
ansible.builtin.include_role:
name: infra.support_assist.collect_diagnostics
vars:
collect_system_info: true
collect_subscription_info: true
- name: Check for known issues
ansible.builtin.debug:
msg: |
Host: {{ inventory_hostname }}
OS: {{ ansible_distribution }} {{ ansible_distribution_version }}
Kernel: {{ ansible_kernel }}
Subscription: {{ subscription_status | default('unknown') }}
What It Collects
Category Data Gathered System OS version, kernel, hardware, uptime Network Interfaces, routes, firewall rules, DNS Storage Disk usage, LVM, mount points, fstab Services systemd unit status, failed services Packages Installed RPMs, pending updates Subscription RHSM status, repositories, entitlements Logs journalctl excerpts, /var/log key files Performance CPU, memory, I/O statistics
Integration with AAP
Copy # Use as a Job Template in Ansible Automation Platform
# Survey variables for case number and severity
- name: AAP Support Diagnostics
hosts: "{{ target_hosts }}"
become: true
vars:
case_number: "{{ survey_case_number }}"
tasks:
- name: Collect and upload
ansible.builtin.include_role:
name: infra.support_assist.collect_diagnostics
- name: Upload to case
ansible.builtin.include_role:
name: infra.support_assist.upload_diagnostics
vars:
upload_case_number: "{{ case_number }}"
when: case_number | length > 0
Free production resource
Take the next step from one-off fixes to production-ready automation Get the Production Ansible Starter Pack with practical repository patterns, templates, and deployment checklists.
Comparison with Manual Process
Step Manual With infra.support_assist SSH to each server ✅ Required ❌ Not needed Run sosreport ✅ Manual ✅ Automated Gather system info ✅ Multiple commands ✅ One role Compress output ✅ Manual tar ✅ Automated Upload to portal ✅ Browser upload ✅ API upload Time (10 servers) ~2 hours ~5 minutes
Troubleshooting
Issue Solution Permission denied Ensure become: true is set Upload fails Verify Red Hat Portal credentials and case number Missing data Check collect_* variables are set to true Large output Set support_assist_compress: true Subscription info empty Verify subscription-manager is installed and registered
Best Practices
Automate before you need it — set up the playbook before incidents happen
Use Vault for credentials — never hardcode Red Hat Portal passwords
Schedule weekly health checks — catch issues before they become cases
Store diagnostics in version control — track system state over time
Integrate with AAP — use Survey for case number input
GitHub: redhat-cop/infra.support_assist
Ansible Galaxy: infra.support_assist
Bullhorn #227 (May 2026): v1.1.1 release announcement
Conclusion
infra.support_assist turns a 2-hour manual process into a 5-minute playbook run. Gather diagnostics from multiple servers simultaneously, compress the output, and upload directly to Red Hat Support — all automated. For any team managing RHEL infrastructure, this collection should be in your requirements.yml and ready to run before the next incident.