hyper2kvm

Migration Runbook Template

Customizable template for creating migration runbooks for your specific VM migrations.


How to Use This Template

  1. Copy this template for each migration project
  2. Fill in all [PLACEHOLDER] values with your specific information
  3. Customize sections based on your requirements
  4. Review with stakeholders before migration
  5. Follow during execution
  6. Update with actual times and results

Migration Overview

Project Information

Field Value
Project Name [PROJECT_NAME]
Migration ID [MIG-YYYY-MM-DD-##]
Prepared By [YOUR_NAME]
Date Prepared [YYYY-MM-DD]
Last Updated [YYYY-MM-DD]
Status [DRAFT/APPROVED/IN-PROGRESS/COMPLETE]

Migration Schedule

Phase Planned Date/Time Actual Date/Time
Pre-Migration Testing [YYYY-MM-DD HH:MM]  
Migration Execution [YYYY-MM-DD HH:MM]  
Validation [YYYY-MM-DD HH:MM]  
Production Cutover [YYYY-MM-DD HH:MM]  

VM Inventory

VM Name OS Size (GB) Priority Dependencies
[VM-NAME-1] [OS-VERSION] [SIZE] [HIGH/MEDIUM/LOW] [LIST-DEPS]
[VM-NAME-2] [OS-VERSION] [SIZE] [HIGH/MEDIUM/LOW] [LIST-DEPS]
[VM-NAME-3] [OS-VERSION] [SIZE] [HIGH/MEDIUM/LOW] [LIST-DEPS]

Total VMs: [NUMBER] Total Size: [SIZE] GB


Pre-Migration Preparation

1. Environment Setup

Source Environment:

Target Environment:

Migration Server Details:

Hostname: [MIGRATION-SERVER]
IP Address: [IP-ADDRESS]
OS: [OS-VERSION]
CPUs: [NUMBER]
Memory: [SIZE] GB
Disk Space: [SIZE] GB
Network: [BANDWIDTH] Mbps

2. Access Requirements

Source Access:

Target Access:

3. Software Installation

4. Backup Verification

VM Backup Date Backup Location Verified
[VM-NAME-1] [YYYY-MM-DD] [LOCATION] [ ]
[VM-NAME-2] [YYYY-MM-DD] [LOCATION] [ ]
[VM-NAME-3] [YYYY-MM-DD] [LOCATION] [ ]

5. Stakeholder Communication

Role Name Email Phone Notified
Project Manager [NAME] [EMAIL] [PHONE] [ ]
Technical Lead [NAME] [EMAIL] [PHONE] [ ]
Application Owner [NAME] [EMAIL] [PHONE] [ ]
Operations Team [NAME] [EMAIL] [PHONE] [ ]

Notification Template:

Subject: VM Migration - [PROJECT_NAME] - [DATE]

Dear Team,

This is to inform you that we will be migrating the following VMs:
- [VM-LIST]

Schedule:
- Start: [START-TIME]
- Expected completion: [END-TIME]
- Expected downtime: [DURATION]

Impact:
- [DESCRIBE-IMPACT]

Rollback plan:
- [DESCRIBE-ROLLBACK]

Contact for issues:
- [CONTACT-INFO]

Migration Execution Plan

Phase 1: Pre-Migration Tasks (T-24 hours)

Time: [YYYY-MM-DD HH:MM]

Phase 2: Migration Execution

VM 1: [VM-NAME-1]

Planned Start: [HH:MM] Actual Start: ___ Actual End: ___

Pre-Migration:

Shutdown Source VM:

# On VMware
ssh root@[ESXI-HOST] "vim-cmd vmsvc/power.off [VM-ID]"
# Verify powered off
ssh root@[ESXI-HOST] "vim-cmd vmsvc/power.getstate [VM-ID]"

Execute Migration:

# Start migration
h2kvmctl --config /path/to/[VM-NAME-1].yaml 2>&1 | tee migration-[VM-NAME-1].log

# Monitor progress
tail -f migration-[VM-NAME-1].log

Configuration Used:

command: local
vmdk: [SOURCE-VMDK-PATH]
output_dir: [OUTPUT-DIR]
to_output: [VM-NAME-1].qcow2

# Options
fstab_mode: stabilize-all
regen_initramfs: true
update_grub: true
compress: [true/false]

# [Add any special options]

Validation:

# Verify output
qemu-img info [OUTPUT-DIR]/[VM-NAME-1].qcow2
qemu-img check [OUTPUT-DIR]/[VM-NAME-1].qcow2

Boot Test:

# Import to libvirt
virsh define [OUTPUT-DIR]/[VM-NAME-1].xml

# Start VM
virsh start [VM-NAME-1]

# Console access
virsh console [VM-NAME-1]

Application Validation:

Issues Encountered:

[DESCRIBE ANY ISSUES]

Resolution:

[DESCRIBE RESOLUTION]

VM 2: [VM-NAME-2]

[Repeat same structure as VM 1]


VM 3: [VM-NAME-3]

[Repeat same structure as VM 1]


Phase 3: Post-Migration Validation

Time: [HH:MM]

System Validation

For each VM:

Integration Testing

Performance Validation

Performance Test Results:

# Run performance tests
[PERFORMANCE-TEST-COMMAND]

Results:

[TEST-RESULTS]

Phase 4: Production Cutover

Planned Time: [HH:MM] Actual Time: ___

Network Cutover

Application Cutover

Monitoring Cutover

Final Validation


Rollback Plan

Decision Criteria

Rollback if:

Decision Point: [HH:MM] Decision Maker: [NAME]

Rollback Procedure

Estimated Rollback Time: [DURATION]

Step 1: Stop Migrated VMs

# Stop all migrated VMs
virsh shutdown [VM-NAME-1]
virsh shutdown [VM-NAME-2]
virsh shutdown [VM-NAME-3]

# Force if necessary
virsh destroy [VM-NAME-1]
virsh destroy [VM-NAME-2]
virsh destroy [VM-NAME-3]

Step 2: Restore Source VMs

# On VMware
ssh root@[ESXI-HOST] "vim-cmd vmsvc/power.on [VM-ID-1]"
ssh root@[ESXI-HOST] "vim-cmd vmsvc/power.on [VM-ID-2]"
ssh root@[ESXI-HOST] "vim-cmd vmsvc/power.on [VM-ID-3]"

Step 3: Verify Source VMs

Step 4: Revert Network Changes

Step 5: Notify Stakeholders

Rollback Notification:

Subject: Migration Rollback - [PROJECT_NAME]

The migration has been rolled back due to:
[REASON]

All systems have been restored to source environment.

Current status: [STATUS]

Next steps: [NEXT-STEPS]

Rollback Completed: ___


Post-Migration Tasks

Immediate (Within 24 Hours)

Short-Term (Within 1 Week)

Long-Term (Within 1 Month)


Contact Information

Emergency Contacts

Role Name Phone Email Escalation Order
Primary [NAME] [PHONE] [EMAIL] 1
Secondary [NAME] [PHONE] [EMAIL] 2
Manager [NAME] [PHONE] [EMAIL] 3

Vendor Support

Vendor Support Number Support Email Account Number
Hyper2KVM [SUPPORT-INFO] support@hyper2kvm.io [ACCOUNT]
VMware [SUPPORT-INFO] [EMAIL] [ACCOUNT]
[OTHER] [SUPPORT-INFO] [EMAIL] [ACCOUNT]

Appendix

A. Configuration Files

Location: [CONFIG-DIR]

Files:

B. Scripts

Location: [SCRIPTS-DIR]

Scripts:

C. Logs

Location: [LOGS-DIR]

Logs:

D. Sign-Off

Phase Approver Date Signature
Pre-Migration [NAME] [DATE] ___
Migration [NAME] [DATE] ___
Validation [NAME] [DATE] ___
Cutover [NAME] [DATE] ___
Completion [NAME] [DATE] ___

Change Log

Version Date Author Changes
1.0 [YYYY-MM-DD] [NAME] Initial version
1.1 [YYYY-MM-DD] [NAME] [CHANGES]

Runbook Template Version: 2.1.0 Last Updated: February 2026


Usage Notes

  1. Save a copy of this template for each migration project
  2. Fill in all placeholders ([PLACEHOLDER]) with actual values
  3. Customize sections based on your specific requirements
  4. Review and approve before migration day
  5. Print or keep open during migration execution
  6. Update in real-time with actual times and results
  7. Archive with project documentation after completion

Template: Download blank template Example: See example runbook


Last Updated: February 2026 Documentation Version: 2.1.0