kubev2v/forklift

Toolkit for migrating VMs from VMware, OVA, EC2, HyperV, oVirt and OpenStack to KubeVirt

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on May 7th, 2023
Created on September 8th, 2022
Open Issues & Pull Requests: 231 (+0)
GitHub issues: Enabled
Number of forks: 117
Total Stargazers: 197 (+0)
Total Subscribers: 6 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 29.2 hours
Mean response time: 99.3 days
90th percentile: 381.6 days
Tracked items: 60

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 7, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits.

How this project is maintained

80% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 56% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 84
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 703 days
Stale 30+ days: 82
Stale 90+ days: 79

Recent activity

Opened in 7 days: 1
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • OpenStack (21)
  • bug (14)
  • RHV (11)
  • OpenShift (9)
  • vSphere (6)
  • enhancement (4)
  • OVA (3)
  • console-plugin (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Forklift is a toolkit designed to migrate virtual machines at scale from multiple legacy virtualization platforms to Kubernetes KubeVirt. The project enables organizations to move workloads from VMware, OVA, EC2, Hyper-V, oVirt, and OpenStack environments into Kubernetes clusters. Written primarily in Go, Forklift addresses the challenge of cloud-native transformation by automating the complex process of converting traditional virtual machines into containerized workloads running on KubeVirt.

The migration workflow in Forklift follows a structured three-step process. Users first provide source and destination credentials to establish connections with both the legacy infrastructure and target Kubernetes environment. Next, they map the source and destination infrastructure components and create a choreographed migration plan. Finally, the system executes the actual migration effort. This orchestrated approach reduces manual intervention and helps ensure consistency across large-scale migration operations.

Forklift implements several advanced migration capabilities to minimize downtime and ensure compatibility. Warm migration using Change Block Tracking and Incremental Backup is supported for VMware and oVirt migrations, allowing virtual machines to continue running during the initial migration phases. For VMware migrations specifically, Forklift leverages virt-v2v for guest conversions, which automatically installs virtio drivers and modifies the guest operating system to run on QEMU-KVM. The toolkit also supports migrating virtual machines to remote clusters, enabling users to install Forklift on one cluster while orchestrating migrations on other clusters. Cross-cluster VM migration is facilitated through the KubeVirt Export API. Additionally, Forklift includes validation mechanisms that check virtual machines before migration execution, alerting users to potential issues that require resolution before proceeding.

The project maintains active development with structured contribution practices. The project's contributor base shows overlap with major open-source projects including Microsoft's VSCode and TypeScript repositories as well as the Rust language project.

Deployment of Forklift involves installing the operator index to a Kubernetes cluster, with support for both single-architecture development deployments and multi-architecture production deployments covering AMD64 and ARM64 platforms. The build system is highly configurable, allowing customization of registry locations, image tags, target platforms, and component versions through environment variables. The operator can be deployed to a configurable namespace, defaulting to konveyor-forklift, and supports multiple OLM channels for different release tracks. Development contributions follow a structured commit message format requiring references to MTV issue numbers or explicit exclusion markers, enforced through GitHub Actions validation that automatically skips bot users and chore commits.