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
Recommended HardwareΒΆ
Production EnvironmentΒΆ
cpu:
cores: 8+
threads: 16+
features: ["vmx", "ept", "vpid"] # Intel
features: ["svm", "npt", "nrips"] # AMD
memory:
total: 64GB+
hugepages: 25% of total memory
storage:
system_disk:
size: 500GB+
type: SSD
vm_storage:
size: 2TB+
type: NVMe SSD (preferred)
network:
interfaces: 2+ (management + VM traffic)
speed: 1Gbps+ (10Gbps preferred)
Development EnvironmentΒΆ
cpu:
cores: 4+
threads: 8+
memory:
total: 16GB+
storage:
system_disk:
size: 200GB+
type: SSD
network:
interfaces: 1+
speed: 100Mbps+
π» 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 |
|
RHEL 9 |
RHEL 10 |
β Full Support |
|
CentOS 8 |
Rocky/Alma 8 |
β Full Support |
|
CentOS 8 |
Rocky/Alma 9 |
β Full Support |
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"