Hi all,
I've opened VEP #258 proposing a plan to restore and support the ppc64le (PowerPC 64-bit Little Endian) architecture in the KubeVirt upstream main branch.
Background & Motivation
As KubeVirt matures into the standard for Kubernetes-native virtualization, its success depends on being truly architecture-agnostic. The ppc64le architecture remains a cornerstone of enterprise data centers, particularly within IBM Power Systems environments. These systems offer superior memory bandwidth and I/O performance, making them ideal for high-density virtualized workloads.
Currently, KubeVirt’s build system has several regressions that prevent adoption on these platforms:
Infrastructure Gaps: The transition to newer Bazel versions and CentOS Stream 10 has left ppc64le without functional toolchains or RPM dependency trees.
Barriers to Entry: Organizations running Power Systems are currently forced to maintain custom forks or avoid KubeVirt entirely because upstream images and CI validation do not exist for this architecture.
Community Growth: Restoring this support allows the Power architecture community to contribute back to KubeVirt and ensures we don't leave a significant segment of the enterprise market behind.
The Proposed Plan
This VEP outlines a technical strategy to fix the Bazel infrastructure and establish a sustainable CI/CD pipeline:
Phased Rollout: Starting with RPM restoration (Alpha), moving to toolchain registration and cross-compilation enablement (Beta), and finally achieving full CI parity and multi-arch image publishing (GA).
Technical Highlights: The plan includes configuring the pseries machine type, supporting SLOF firmware, and ensuring that x86_64 CI nodes can cross-compile CGO-dependent components like virt-launcher.
Stability: All changes are additive and guarded by the SupportPPC64LE feature gate to ensure zero impact on existing amd64, arm64, or s390x workflows.
Links:
Tracking Issue: https://github.com/kubevirt/enhancements/issues/265
I look forward to your feedback and reviews, particularly from sig-buildsystem, sig-ci, and sig-compute.
Best regards,
Punith Kenchappa