Easy install using AWS

We have created AWS images that automatically install Kubernetes and KubeVirt inside an EC2 instance to help you quickly deploy a trial environment.

In Step 1, we guide you through selecting an AMI and some factors to consider when launching the EC2 instance through the AWS console.

After you have launched your EC2 instance, navigate back to this page and then dive into the two labs below to help you get acquainted with KubeVirt.

Step 1: Launch KubeVirt in Amazon EC2

To use the images in the table below, you should already have an AWS account. The images are free to use but AWS will bill you for instance hours, storage, and associated services unless you are in an AWS trial period. These images are not meant to be used in production.

  • First, open one of the AMI links below in a new tab or window to start up an instance in your preferred EC2 region.
EC2 Region Location AMI Type AMI ID
us-east-1 N. Virginia HVM ami-0a931f01389894a65
us-east-2 Ohio HVM ami-007e7962f0221bf3f
us-west-1 N. California HVM ami-0213abf4e045cafdc
us-west-2 Oregon HVM ami-0fc9402e92a34c972
ca-central-1 Canada HVM ami-0bbfb75f9c7f9cc6b
eu-west-1 Ireland HVM ami-0f0f1099dbf06d9ff
eu-west-2 London HVM ami-044fcec85282e0b84
eu-west-3 Paris HVM ami-081dee4cf5fd48a0c
eu-central-1 Frankfurt HVM ami-0749b25ef0f69d33d
ap-northeast-1 Tokyo HVM ami-0ffa71b8fe2bbea6e
ap-southeast-1 Singapore HVM ami-07838d9608605f303
ap-southeast-2 Sydney HVM ami-0b07b77fd6396deab
ap-south-1 Mumbai HVM ami-0d64d9f3c68588fb1
sa-east-1 Sao Paulo HVM ami-0230216ffe2936a55
  • At the instance type selection screen, select a type that has at least 4GB of memory. This is the minimum amount of memory required to complete the labs in Step 2. Select more memory or storage if you are planning to deploy VMs with larger memory or storage requirements than what is used in the labs.


  • You will need to be able to log into your instance through SSH. Depending on your network configuration, you may need to enable public IP. To enable a public IP, in the “Instance Details” screen select “Enable” for “Auto-assign Public IP” or select “Use subnet setting” if public IPs are enabled for your subnet.


  • At the security group configuration screen, allow ingress to SSH by enabling access to port 22 from your IP address.


  • Finally, you will need to associate a key pair with your instance. If you have created one before, select it. If haven’t created one before, select “Create a new key pair”, enter a name, download the private key, and note where you place it because you will use it in a few minutes. Once you made your selection, hit “Launch Instance”. It takes about 5 mins after the EC2 instance is started for the instance to be ready for SSH login.


  • Once your instance is ready, SSH to your EC2 instance using your private key. Note “centos” is the default username.
ssh -i <aws-private-key> centos@<ec2_public_ip_or_hostname>

Step 2: KubeVirt labs

After you have connected to your instance through SSH, you can work through a couple of labs to help you get acquainted with KubeVirt and how to use it to create and deploy VMs with Kubernetes.

The first lab is “Use KubeVirt”. This lab walks you through the creation of a Virtual Machine instance on Kubernetes and then shows you how to use virtctl to interact with its console.

The second lab is “Experiment with CDI”. This lab shows you how to use the Containerized Data Importer (CDI) to import a VM image into a Persistent Volume Claim (PVC) and then how to define a VM to make use of the PVC.

Found a bug?

We are interested in hearing about your experience.

If you encounter an issue with deploying your cloud instance or if Kubernetes or KubeVirt did not install correctly, please report it to the cloud-image-builder issue tracker.

If experience a problem with the labs, please report it to the kubevirt.io issue tracker.