A structured and safety-focused framework for migrating Red Hat Enterprise Linux virtual machines from Microsoft Hyper-V to KVM/libvirt.
This project demonstrates migration planning, guest preparation, virtual disk conversion, libvirt configuration, validation, rollback planning, and operational documentation.
This repository uses fictional systems and documentation-only network addresses. It contains no employer, customer, or production infrastructure data.
- Reduce migration risk through repeatable prechecks
- Prepare RHEL guests for KVM virtio devices
- Convert Hyper-V virtual disks into KVM-compatible formats
- Validate storage, networking, boot mode, and application health
- Define clear rollback conditions and recovery steps
- Maintain an auditable migration record
- Assess the Hyper-V source virtual machine
- Validate RHEL guest readiness
- Prepare virtio-capable initramfs
- Confirm KVM host capacity and networking
- Establish the migration and rollback window
- Shut down the source virtual machine
- Export and verify the source virtual disk
- Convert the disk to
qcow2 - Apply ownership and SELinux labeling
- Define the KVM virtual machine
- Start and validate the migrated guest
- Complete application acceptance testing
- Retain rollback assets until approval
.
├── checklists/ # Pre-migration and acceptance checklists
├── diagrams/ # Architecture and migration-flow diagrams
├── docs/ # Procedures, risk controls, and rollback plans
├── sample-output/ # Fictional examples of successful validation
├── scripts/ # Sanitized assessment and validation helpers
└── templates/ # Generic libvirt configuration templates