Skip to content

Conversation

@jakjang
Copy link
Contributor

@jakjang jakjang commented Jan 16, 2026

Adding a blog about deploying KubeVirt on AKS, to be published on 1-26-2026.

Adding Harshit from the Azure Linux engineering team as an author, as much of the KubeVirt doc is based off a doc he wrote.
Updated authors list to include 'harshit-gupta'.
Added an introduction to KubeVirt and its benefits for VM management in Kubernetes.
Updated tags to include 'kubevirt' for better categorization.
@jakjang jakjang requested review from a team, Copilot and mangalorereshmi January 16, 2026 23:20
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new blog post about deploying KubeVirt on AKS, scheduled for publication on January 26, 2026. The post provides a step-by-step guide for users to set up KubeVirt, an open-source CNCF project that enables running virtual machines within Kubernetes clusters.

Changes:

  • Added a new blog post explaining KubeVirt benefits and providing deployment instructions for AKS
  • Added new author "harshit-gupta" to authors.yml
  • Added new "kubevirt" tag to tags.yml
  • Fixed incomplete description for the "kueue" tag

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 8 comments.

File Description
website/blog/2026-01-26-kubevirt-on-aks/index.md New blog post with KubeVirt deployment guide including cluster creation, installation steps, and VMI creation examples
website/blog/authors.yml Added new author entry for Harshit Gupta
website/blog/tags.yml Added kubevirt tag and fixed truncated kueue tag description

Copilot AI review requested due to automatic review settings January 16, 2026 23:24
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings January 16, 2026 23:26
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings January 16, 2026 23:30
jakjang and others added 2 commits January 16, 2026 15:37
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.

Comment on lines 56 to 78
1. Next, we want to install the KubeVirt custom resource. Save the yaml below as `kubevirt-cr.yaml`.

```yaml
apiVersion: kubevirt.io/v1
kind: KubeVirt
metadata:
name: kubevirt
namespace: kubevirt
spec:
certificateRotateStrategy: {}
configuration:
developerConfiguration:
featureGates: []
customizeComponents: {}
imagePullPolicy: IfNotPresent
workloadUpdateStrategy: {}
infra:
nodePlacement: {}
```
Notice the empty `nodePlacement: {}` line. By default, KubeVirt sets the node-affinity of control plane components to control plane nodes. On AKS, control plane nodes are fully managed by Azure and not accessible to KubeVirt. This update to `nodePlacement` avoids issues that this may cause.

Once the yaml is saved, apply it to your cluster.
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Per Microsoft Style Guide, use "YAML" (all caps) when referring to the file format or language, not "yaml" in prose. Change "Save the yaml below" to "Save the YAML below" and "Once the yaml is saved" to "Once the YAML is saved".

Copilot uses AI. Check for mistakes.

With KubeVirt successfully installed on your cluster, you can now go ahead and create your VMIs.

1. Create your VMI. Save the following yaml, which will create a VMI based on Fedora OS, as `vmi-fedora.yaml`.
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Per Microsoft Style Guide, use "YAML" (all caps) when referring to the file format in prose. Change "Save the following yaml" to "Save the following YAML".

Suggested change
1. Create your VMI. Save the following yaml, which will create a VMI based on Fedora OS, as `vmi-fedora.yaml`.
1. Create your VMI. Save the following YAML, which will create a VMI based on Fedora OS, as `vmi-fedora.yaml`.

Copilot uses AI. Check for mistakes.
1. Start with creating your AKS cluster.

```azurecli-interactive
az aks create --resource-group <resource-group> --name <cluster-name> --node-vm-size Standard_D4s_v5
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing closing triple backticks for the code block. The azurecli-interactive code block starting on line 38 is not properly closed before the next step begins.

Suggested change
az aks create --resource-group <resource-group> --name <cluster-name> --node-vm-size Standard_D4s_v5
az aks create --resource-group <resource-group> --name <cluster-name> --node-vm-size Standard_D4s_v5

Copilot uses AI. Check for mistakes.

With KubeVirt successfully installed on your cluster, you can now go ahead and create your VMIs.

1. Create your VMI. Save the following yaml, which will create a VMI based on Fedora OS, as `vmi-fedora.yaml`.
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent list item indentation. The content in line 102 has only one space of indentation after the numbered list item marker, but according to standard Markdown formatting, it should have two spaces to align with the text from line 103.

Suggested change
1. Create your VMI. Save the following yaml, which will create a VMI based on Fedora OS, as `vmi-fedora.yaml`.
1. Create your VMI. Save the following yaml, which will create a VMI based on Fedora OS, as `vmi-fedora.yaml`.

Copilot uses AI. Check for mistakes.
https://github.com/kubevirt/kubevirt/releases/download/v1.6.3/kubevirt-operator.yaml
```

1. Next, we want to install the KubeVirt custom resource. Save the yaml below as `kubevirt-cr.yaml`.
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the Microsoft Style Guide and blog guidelines, use "we" sparingly and prefer direct imperatives. Change "we want to" to a more direct instruction. For example: "Next, install the KubeVirt custom resource" instead of "Next, we want to install the KubeVirt custom resource."

Copilot generated this review using guidance from repository custom instructions.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings January 16, 2026 23:41
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

Corrected capitalization of 'YAML' in multiple instances.
Copilot AI review requested due to automatic review settings January 16, 2026 23:44
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

az aks create --resource-group <resource-group> --name <cluster-name> --node-vm-size Standard_D4s_v5
```
2. After your cluster is up and running, get the access credentials for the cluster.
2. After your cluster is up and running, make sure you grab the access credentials for the cluster.
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent spacing in the numbered list. Step 2 is numbered as "2." on both lines 41 and 42 (where line 42 is a duplicate). Proper numbered list formatting should have each step numbered sequentially.

Suggested change
2. After your cluster is up and running, make sure you grab the access credentials for the cluster.

Copilot uses AI. Check for mistakes.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings January 17, 2026 00:19
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.


### Creating VirtualMachineInstance (VMI) resources in KubeVirt

With KubeVirt successfully installed on your cluster, you can now go ahead and create your VMIs.
Copy link

Copilot AI Jan 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The phrase "go ahead and" is conversational filler that should be removed for more concise writing. Change to "With KubeVirt successfully installed on your cluster, you can now create your VMIs."

Copilot generated this review using guidance from repository custom instructions.
kubectl apply -f vmi-fedora.yaml
```

If successful, you should see a one-liner akin to `virtualmachineinstance.kubevirt.io/vmi-fedora created`.
Copy link

Copilot AI Jan 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The phrase "one-liner" is informal. According to the Microsoft Style Guide, use more professional language in technical documentation. Change to "If successful, you should see output similar to: virtualmachineinstance.kubevirt.io/vmi-fedora created".

Copilot generated this review using guidance from repository custom instructions.

In this post, you will learn how KubeVirt lets you run, deploy, and manage VMs on Kubernetes, alongside your containerized applications, using Kubernetes as the orchestrator.
<!-- truncate -->

Copy link

Copilot AI Jan 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the blog post guidelines, a hero image should be included after the truncate marker. Consider adding an image to visually represent KubeVirt architecture or the deployment workflow.

Copilot generated this review using guidance from repository custom instructions.

## Deploying KubeVirt

Users today are able to deploy KubeVirt on AKS.
Copy link

Copilot AI Jan 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The sentence "Users today are able to deploy KubeVirt on AKS" is passive and weak. Following the Microsoft Style Guide, rewrite it using active voice and a more direct tone. For example: "You can deploy KubeVirt on AKS" or "Deploy KubeVirt on AKS to...".

Copilot generated this review using guidance from repository custom instructions.
Copilot AI review requested due to automatic review settings January 17, 2026 00:45
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.


## Please share your feedback!

If you are already using KubeVirt on AKS, plan to after reading this blog, or this blog piqued your interest, we'd love to hear from you! Your feedback/interest will be invaluable as we in AKS look to the future of how we can best support these type of workloads on our platform. Please share your thoughts in our [GitHub Issue](https://github.com/Azure/AKS/issues/5445).
Copy link

Copilot AI Jan 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The link text "GitHub Issue" should be more descriptive. According to the Microsoft Style Guide and blog post guidelines, avoid generic link text.

Consider revising to: "Please share your thoughts in the KubeVirt on AKS feedback issue."

Copilot generated this review using guidance from repository custom instructions.
Comment on lines +204 to +206
## Please share your feedback!

If you are already using KubeVirt on AKS, plan to after reading this blog, or this blog piqued your interest, we'd love to hear from you! Your feedback/interest will be invaluable as we in AKS look to the future of how we can best support these type of workloads on our platform. Please share your thoughts in our [GitHub Issue](https://github.com/Azure/AKS/issues/5445).
Copy link

Copilot AI Jan 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the Microsoft Style Guide, avoid using "please" in instructions. The phrase "Please share your feedback!" should be "Share your feedback!" to maintain a more direct, professional tone while still being friendly.

Suggested change
## Please share your feedback!
If you are already using KubeVirt on AKS, plan to after reading this blog, or this blog piqued your interest, we'd love to hear from you! Your feedback/interest will be invaluable as we in AKS look to the future of how we can best support these type of workloads on our platform. Please share your thoughts in our [GitHub Issue](https://github.com/Azure/AKS/issues/5445).
## Share your feedback!
If you are already using KubeVirt on AKS, plan to after reading this blog, or this blog piqued your interest, we'd love to hear from you! Your feedback/interest will be invaluable as we in AKS look to the future of how we can best support these type of workloads on our platform. Share your thoughts in our [GitHub Issue](https://github.com/Azure/AKS/issues/5445).

Copilot uses AI. Check for mistakes.

## Why KubeVirt matters

KubeVirt can help organizations that are in various stages of their Kubernetes journey manage their infrastructure more effectively. Being able to manage your Kubernetes and traditional VM estate through one method can help avoid the sprawl that would otherwise come with managing multiple platforms.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: It could be helpful to have more specific terminology in place of "one method", such as "unified API" or "the same Kubernetes constructs"


## Deploying KubeVirt

Users today are able to deploy KubeVirt on AKS.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: This intro sentence can be more specific - on any AKS version? On an existing AKS cluster or new cluster, compatible with any node ossku?


### Confirm the KubeVirt pods are up and running on the cluster

Once all the components are installed, you can quickly check if all the KubeVirt components are up and running properly in your cluster. You can do so via `kubectl get pods -n kubevirt -o wide`. You should see something like this:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion: Move the kubectl command to a new line for easier readability as the audience is following along


## Why KubeVirt matters

KubeVirt can help organizations that are in various stages of their Kubernetes journey manage their infrastructure more effectively. Being able to manage your Kubernetes and traditional VM estate through one method can help avoid the sprawl that would otherwise come with managing multiple platforms.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest adding something like "KubeVirt allows customers to manage legacy VM workloads alongside containerized applications using the same Kubernetes APIs."

https://github.com/kubevirt/kubevirt/releases/download/v1.6.3/kubevirt-operator.yaml
```

1. Next, we want to install the KubeVirt custom resource. Save the YAML below as `kubevirt-cr.yaml`.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO we should reference upstream url otherwise this will quickly go out of date.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants