Supported Platforms ReferenceΒΆ

Complete reference for platform compatibility, system requirements, and feature support across different operating systems and environments.

πŸ–₯️ Platform Support MatrixΒΆ

Operating System SupportΒΆ

Platform

Version

Support Level

Features

Notes

RHEL

8.4+

βœ… Full Support

All features

Production recommended

RHEL

9.0+

βœ… Full Support

All features

Production recommended

RHEL

10.0+

βœ… Full Support

All features

Latest platform

Rocky Linux

8.4+

βœ… Full Support

All features

Community alternative

Rocky Linux

9.0+

βœ… Full Support

All features

Community alternative

AlmaLinux

8.4+

βœ… Full Support

All features

Community alternative

AlmaLinux

9.0+

βœ… Full Support

All features

Community alternative

CentOS Stream

9

⚠️ Limited Support

Core features

Testing only

Environment SupportΒΆ

Environment

Support Level

Features Available

Container Awareness

Use Case

Physical Hosts

βœ… Full Support

All features including KVM optimization

N/A

Production deployment

Virtual Machines

βœ… Supported

Limited optimization features

Nested virt detection

Development/testing

Containers

βœ… Testing Only

Container-appropriate tasks only

Advanced detection

CI/CD testing

πŸ”§ Hardware RequirementsΒΆ

Minimum RequirementsΒΆ

CPU RequirementsΒΆ

  • Architecture: x86_64 (Intel/AMD)

  • Virtualization: Intel VT-x or AMD-V support

  • Cores: 2 cores minimum (4+ recommended)

  • Features: Hardware virtualization extensions enabled in BIOS

Memory RequirementsΒΆ

  • Minimum: 8GB RAM

  • Recommended: 16GB RAM for production

  • Optimal: 32GB+ for multiple VMs

  • Considerations: Additional RAM needed for each VM

Storage RequirementsΒΆ

  • Minimum: 100GB available disk space

  • Recommended: 500GB+ for production

  • Type: SSD recommended for better performance

  • Partitioning: Separate partition for /var/lib/libvirt/images recommended

Network RequirementsΒΆ

  • Connectivity: Stable network connection

  • Bandwidth: Sufficient for package downloads and VM traffic

  • Interfaces: At least one network interface for bridge creation

  • DNS: Proper DNS resolution configured

πŸ’» Software RequirementsΒΆ

Ansible RequirementsΒΆ

Ansible CoreΒΆ

  • Minimum Version: 2.13.0

  • Recommended Version: 2.17.x (latest stable)

  • Installation:

    pip install ansible-core>=2.13.0
    

Required CollectionsΒΆ

collections:
  - community.libvirt: ">=1.3.0"
  - ansible.posix: ">=1.5.0"
  - community.general: ">=7.0.0"

Python RequirementsΒΆ

  • Minimum Version: Python 3.9

  • Recommended Version: Python 3.11

  • Required Modules:

    pip install libvirt-python lxml netaddr
    

System SoftwareΒΆ

Required Packages (Auto-installed)ΒΆ

base_packages:
  - curl
  - wget
  - git
  - vim
  - unzip
  - tar

kvm_packages:
  - qemu-kvm
  - libvirt-daemon
  - libvirt-daemon-driver-qemu
  - libvirt-client
  - virt-install
  - virt-viewer

network_packages:
  - NetworkManager
  - bridge-utils
  - net-tools

storage_packages:
  - lvm2
  - parted

Optional PackagesΒΆ

optional_packages:
  - cockpit
  - cockpit-machines
  - cockpit-podman
  - htop
  - iotop
  - tcpdump

πŸ” Feature Compatibility MatrixΒΆ

Core Features by PlatformΒΆ

Feature

RHEL 8

RHEL 9

RHEL 10

Rocky 8/9

AlmaLinux 8/9

Base System Setup

βœ…

βœ…

βœ…

βœ…

βœ…

KVM/Libvirt

βœ…

βœ…

βœ…

βœ…

βœ…

Network Bridges

βœ…

βœ…

βœ…

βœ…

βœ…

Storage Pools

βœ…

βœ…

βœ…

βœ…

βœ…

Cockpit Web UI

βœ…

βœ…

βœ…

βœ…

βœ…

Performance Optimization

βœ…

βœ…

βœ…

βœ…

βœ…

Container Testing

βœ…

βœ…

βœ…

βœ…

βœ…

Advanced FeaturesΒΆ

Feature

RHEL 8

RHEL 9

RHEL 10

Notes

Nested Virtualization

βœ…

βœ…

βœ…

CPU dependent

SR-IOV

βœ…

βœ…

βœ…

Hardware dependent

DPDK

βœ…

βœ…

βœ…

Advanced networking

GPU Passthrough

βœ…

βœ…

βœ…

Hardware dependent

NUMA Optimization

βœ…

βœ…

βœ…

Multi-socket systems

🐳 Container Environment Support¢

Container DetectionΒΆ

The collection automatically detects container environments and adapts behavior:

container_detection_criteria:
  - virtualization_type: "container"
  - environment_variables: ["container", "CONTAINER"]
  - filesystem_analysis: "/proc/1/cgroup"
  - selinux_context: "container_t"

Container-Specific BehaviorΒΆ

  • Hardware Tasks: Automatically skipped

  • Service Management: Adapted for container constraints

  • Network Configuration: Limited to container-appropriate tasks

  • Storage: Uses container-compatible storage options

Supported Container RuntimesΒΆ

  • Podman: Preferred for testing

  • Docker: Supported for testing

  • Kubernetes: Limited support for testing scenarios

πŸ”’ Security and ComplianceΒΆ

Security Features by PlatformΒΆ

Security Feature

RHEL 8

RHEL 9

RHEL 10

Implementation

SELinux

βœ…

βœ…

βœ…

Enforcing mode supported

Firewalld

βœ…

βœ…

βœ…

Automatic configuration

FIPS Mode

βœ…

βœ…

βœ…

Compatible when enabled

Secure Boot

⚠️

βœ…

βœ…

RHEL 9+ full support

Compliance StandardsΒΆ

  • STIG: Security Technical Implementation Guide compliance

  • CIS: Center for Internet Security benchmarks

  • NIST: National Institute of Standards and Technology guidelines

πŸ“Š Performance CharacteristicsΒΆ

Performance by PlatformΒΆ

Platform

Boot Time

Memory Overhead

Storage Performance

Network Performance

RHEL 8

~30s

~2GB

Good

Good

RHEL 9

~25s

~1.8GB

Better

Better

RHEL 10

~20s

~1.5GB

Best

Best

Rocky/Alma

~30s

~2GB

Good

Good

Optimization FeaturesΒΆ

  • Hugepages: Automatic configuration

  • CPU Isolation: NUMA-aware optimization

  • I/O Scheduling: Optimal scheduler selection

  • Network Tuning: Bridge and interface optimization

πŸ”„ Upgrade PathsΒΆ

Supported Upgrade ScenariosΒΆ

From

To

Support Level

Migration Guide

RHEL 8

RHEL 9

βœ… Full Support

System Migration

RHEL 9

RHEL 10

βœ… Full Support

System Migration

CentOS 8

Rocky/Alma 8

βœ… Full Support

Distribution Migration

CentOS 8

Rocky/Alma 9

βœ… Full Support

Distribution Migration

Collection Version CompatibilityΒΆ

Collection Version

Ansible Version

Python Version

Platform Support

0.9.x

2.13+

3.9+

RHEL 8/9/10, Rocky 8/9, Alma 8/9

0.8.x

2.12+

3.8+

RHEL 8/9, Rocky 8/9, Alma 8/9

0.7.x

2.11+

3.8+

RHEL 8/9, Rocky 8/9

πŸ§ͺ Testing Platform SupportΒΆ

Test Coverage by PlatformΒΆ

Platform

Unit Tests

Integration Tests

System Tests

Container Tests

RHEL 8

βœ…

βœ…

βœ…

βœ…

RHEL 9

βœ…

βœ…

βœ…

βœ…

RHEL 10

βœ…

βœ…

βœ…

βœ…

Rocky Linux

βœ…

βœ…

βœ…

βœ…

AlmaLinux

βœ…

βœ…

βœ…

βœ…

Container Test ImagesΒΆ

test_images:
  rhel8: "registry.redhat.io/ubi8-init:latest"
  rhel9: "registry.redhat.io/ubi9-init:latest"
  rhel10: "registry.redhat.io/ubi10-init:latest"
  rocky8: "docker.io/rockylinux/rockylinux:8-ubi-init"
  rocky9: "docker.io/rockylinux/rockylinux:9-ubi-init"
  alma8: "docker.io/almalinux/almalinux:8-ubi-init"
  alma9: "docker.io/almalinux/almalinux:9-ubi-init"