macOS
brew install virtctllocal Homebrew formula metadata
brew
Allows for using more advanced kubevirt features. Version 1.8.4 via Homebrew; verified 2026-06-16.
install
brew install virtctllocal Homebrew formula metadata
sudo apk add virtctlAlpine Linux edge package indexes · virtctl · source: dl-cdn.alpinelinux.org
overview
Allows for using more advanced kubevirt features
history
virtctl is the command-line companion to KubeVirt, the Kubernetes virtualization project that lets users define and manage virtual machines through Kubernetes APIs. In KubeVirt's own documentation, ordinary VirtualMachineInstance operations can be handled with kubectl, while virtctl is the extra client used for advanced VM workflows such as console access, lifecycle convenience commands, live migration, and image upload.
KubeVirt was founded at Red Hat in January 2017 and published early releases during the period when Kubernetes-native virtualization was still a proof-of-concept space. The KubeVirt release notes list v0.1.0 as released on December 8, 2017, and early Red Hat examples already treated virtctl as the auxiliary tool for reaching VM consoles.
The project entered the Cloud Native Computing Foundation as a Sandbox project in September 2019, moved to Incubating on April 19, 2022, and announced KubeVirt v1.0 in July 2023. virtctl's significance grew with that arc: it remained the user-facing binary for VM-specific operations that do not map cleanly to generic kubectl verbs.
CNCF's incubation announcement described KubeVirt as having grown beyond its Red Hat origin, with contributors from companies including Amadeus, Apple, CloudFlare, IBM, NVIDIA, SAP, SUSE, and others, and production use at companies such as Arm, CIVO, CoreWeave, H3C, and Kubermatic. The v1.0 announcement later framed the project as a maturing bridge for organizations that wanted Kubernetes operations without abandoning VM workloads.
Downstream Kubernetes virtualization products, especially OpenShift Virtualization and OKD Virtualization documentation, expose virtctl as a normal operator tool for serial console, VNC, SSH/SCP-style access, and service exposure. That downstream documentation helped make virtctl recognizable outside the upstream KubeVirt community.
Typical usage starts with a KubeVirt cluster and VM resources managed by Kubernetes manifests or kubectl. Users reach for virtctl when they need VM-specific actions: `virtctl console` for serial console access, `virtctl vnc` for graphical console access, `virtctl start` and `virtctl stop` for lifecycle shortcuts, `virtctl migrate` for live migration, and image-upload commands for populating VM disks.
For package users, virtctl is intentionally small in conceptual scope: it is not a separate virtualization platform, but a client that speaks to KubeVirt resources through the Kubernetes control plane. Its value is that it keeps the cluster API as the source of truth while filling the ergonomic gaps left by a generic Kubernetes CLI.
virtctl is interesting to package maintainers because it is a Kubernetes ecosystem CLI whose version should track the KubeVirt control plane closely enough to avoid feature skew. It belongs to the same family of specialized cluster clients as kubectl plugins and operator CLIs: tiny binary, high operational leverage, and mostly useful to people already inside a particular platform.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
virtctl | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/kubevirt/kubevirt
install metadata
| Package key | brew:virtctl |
|---|---|
| Version | 1.8.4 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/virtctl |
| Homepage | https://kubevirt.io/ |
| Repository | https://github.com/kubevirt/kubevirt |
| Upstream docs | https://kubevirt.io/user-guide/user_workloads/virtctl_client_tool |
| License | Apache-2.0 |
| Source archive | https://github.com/kubevirt/kubevirt/archive/refs/tags/v1.8.4.tar.gz |
| Last updated | 2026-06-16T23:26:56Z |
| Pulse | updated |
| Build dependencies | go |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | virtctl |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
virtctl 1.8.2-r0
CLI client for KubeVirt - the Kubernetes Virtualization API
sudo apk add virtctlvirtctl-bash-completion 1.8.2-r0
Bash completions for virtctl
sudo apk add virtctl-bash-completionvirtctl-fish-completion 1.8.2-r0
Fish completions for virtctl
sudo apk add virtctl-fish-completionvirtctl-zsh-completion 1.8.2-r0
Zsh completions for virtctl
sudo apk add virtctl-zsh-completionsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.