How to create a virtual machine in Proxmox VE 7.4 step by step

Create a virtual machine in Proxmox VE 7.4 step by step Historical Proxmox VE 7.4 VM creation guide with current Proxmox VE notes.

Proxmox VE provides two main virtualization models: full QEMU/KVM virtual machines and LXC containers. A VM is the right choice when you need a complete guest operating system with its own kernel, such as Windows, GNU/Linux, FreeBSD, pfSense, or RouterOS.

This guide documents the VM creation workflow in Proxmox VE 7.4. The same core sequence is still recognizable in Proxmox VE 9.2: General, OS, System, Disks, CPU, Memory, Network, and Confirm.

For the current platform, see our Proxmox VE 9.2 introduction. We also preserve the historical Proxmox VE 7.4 installation guide.

Creating a virtual machine in Proxmox VE 7.4
Historical Proxmox VE 7.4 VM creation workflow with notes for Proxmox VE 9.2.

Before creating the VM

You need a working Proxmox VE node, storage with enough free space, and—if the guest will be installed from media—an ISO uploaded to storage that allows ISO image content.

The web interface normally listens on:

https://PROXMOX_HOST_OR_IP:8006

In a real environment, use a protected management network, a proper hostname, and trusted TLS where appropriate. Exposing port 8006 directly to the public Internet is not a recommended remote-management design.

1. Open the Create VM wizard

Proxmox VE 7.4 web interface with the Create VM button
The Proxmox VE 7.4 interface. Create VM launches the wizard.

Proxmox VE 9.x looks somewhat different, but the resource tree and VM creation workflow remain familiar.

2. General: node, VMID, and name

General tab of the Proxmox VE 7.4 Create VM wizard
General settings: target node, numerical VM identifier, and guest name.

In a cluster, select the node on which the VM will initially be created.

The VMID uniquely identifies a VM or container across the cluster. Older installations commonly used IDs beginning around 100. Current Proxmox VE can define the range used when suggesting the next free VMID under Datacenter options, while the ID itself still needs to be unique.

Use a meaningful guest name. Consistent naming becomes particularly valuable in larger environments, for example:

srv-dns-01
web-prod-02
db-postgresql-01

3. OS: select the ISO and guest type

OS tab of the Proxmox VE 7.4 Create VM wizard
Select the installation media and guest operating-system family.

The original example used a Kubuntu ISO stored on local. Select the image you actually intend to install and choose the closest operating-system family.

Modern Proxmox VE also supports workflows such as VM import and Cloud-Init templates, but this guide focuses on the traditional installation-from-ISO path.

4. System: machine type, firmware, EFI, TPM, and QEMU Guest Agent

System tab of the Proxmox VE 7.4 Create VM wizard
Machine type, firmware, SCSI controller, QEMU Guest Agent, and TPM settings.

i440fx or q35

i440fx emulates an older PC platform and remains useful for compatibility with legacy guests. q35 provides a more modern PCI Express-based platform and is generally a better fit for current operating systems when legacy compatibility is not required.

On Proxmox VE 9.2, q35 is a natural choice for modern Windows guests, PCIe passthrough scenarios, and recent virtual hardware.

SeaBIOS or OVMF/UEFI

SeaBIOS provides traditional BIOS boot. OVMF provides UEFI.

Modern guests—especially Windows 11—are commonly configured with q35 + OVMF. An EFI Disk should be added so UEFI variables persist.

TPM

A virtual TPM is not required for every VM. It becomes relevant when the guest or security policy requires it, including standard Windows 11 deployments with TPM 2.0 and some full-disk-encryption designs.

QEMU Guest Agent

An important correction to the original text: the QEMU Guest Agent is not what makes a VM run. The VM can operate without it.

The agent runs inside the guest and improves communication with Proxmox. It can help report guest IP addresses, perform clean shutdowns, coordinate filesystem freeze/thaw for backups, and support selected host-to-guest operations.

On Debian or Ubuntu guests:

sudo apt install qemu-guest-agent
sudo systemctl enable --now qemu-guest-agent

The corresponding QEMU Guest Agent option must also be enabled in the VM configuration.

5. Disks: an important recommendation changed after 7.4

Disks tab of the Proxmox VE 7.4 Create VM wizard
Historical disk configuration screen from Proxmox VE 7.4.

The original guide recommended VirtIO Block. Current Proxmox guidance generally favors a SCSI disk with the VirtIO SCSI single controller for new guests. This keeps VirtIO’s low overhead while supporting per-disk IO threads efficiently.

A modern baseline is:

  • Bus/Device: SCSI;
  • SCSI Controller: VirtIO SCSI single;
  • IO thread: enable where appropriate;
  • Discard: enable when the storage is thin-provisioned and the guest supports TRIM/UNMAP;
  • Backup: keep enabled for disks that belong in VM backups.

Windows VirtIO drivers

Windows may need VirtIO drivers during installation to see a VirtIO SCSI disk or use a VirtIO network adapter.

Official resources:

At the time of this review, the stable download redirects to the 0.1.302 series, so the old 0.1.229 build from the original article should no longer be hard-coded as the current version.

Disk cache

The older rule “use Write back with a UPS, Write through without one” is too broad. Current deployments should normally keep the default cache mode unless there is a specific reason to tune it.

The correct choice depends on the entire storage stack: ZFS, Ceph, LVM-thin, directory storage, NFS, SAN, host caching, and the workload itself.

Discard

Discard passes TRIM/UNMAP information from the guest to compatible storage. It is useful with thin-provisioned backends, but support is required throughout the guest filesystem, virtual controller, and storage layer.

6. CPU: sockets, cores, and CPU model

CPU tab of the Proxmox VE 7.4 Create VM wizard
Virtual CPU topology and CPU model selection.

For most VMs, a small number of sockets with multiple cores is simpler than presenting many virtual sockets, unless guest licensing or software topology requires something else.

The host CPU model has a migration tradeoff

host exposes the physical CPU’s capabilities closely and can provide excellent performance. The tradeoff is live-migration compatibility: moving the guest to a node with a different processor may fail or expose a different feature set.

Current Proxmox guidance is to use host when the relevant nodes have matching CPU models and migration compatibility is not a concern. In heterogeneous clusters, use a common generic x86-64-v* baseline supported by every node.

NUMA

The old article suggested enabling NUMA whenever more than one core was assigned. That is not correct.

NUMA becomes valuable mainly for larger VMs where the virtual topology should reflect a NUMA host and memory/CPU placement spans NUMA nodes. A small 2-, 4-, or 8-vCPU guest normally does not need NUMA merely because it has multiple cores.

AES and manual CPU flags

Do not add flags such as aes arbitrarily. With host, supported physical CPU features are already exposed. With generic CPU models, choose a baseline intentionally based on guest requirements and migration compatibility.

7. Memory: fixed allocation and ballooning

Memory tab of the Proxmox VE 7.4 Create VM wizard
Guest RAM allocation and the ballooning device.

Ballooning does not mean that part of the VM’s RAM becomes a generic “shared memory pool.” The balloon driver allows the host to reclaim guest memory under controlled conditions, subject to the configured minimum and guest-driver support.

Memory overcommit can be useful, but it must be planned. A host under severe memory pressure can swap heavily or invoke the Linux OOM killer.

8. Network: bridge, VLAN, firewall, and VirtIO

Network tab of the Proxmox VE 7.4 Create VM wizard
Bridge, VLAN, firewall, and virtual network-adapter model.

Most guests connect to a Linux bridge such as vmbr0. A VLAN tag can be assigned when the surrounding network is configured for VLANs.

VirtIO remains the preferred NIC model for supported guests because it has lower overhead than fully emulated adapters. Windows guests need the NetKVM driver from virtio-win.

The Firewall checkbox enables that virtual NIC’s integration with the Proxmox firewall. It does not automatically create a secure policy; rules still need to be designed at the appropriate Datacenter, node, and guest levels.

Multiqueue

Multiqueue can increase throughput for busy guests with multiple vCPUs, but the queue count does not always need to equal the vCPU count. More queues also add processing overhead.

For small guests, the default is often sufficient.

9. Confirm the configuration

Confirm tab of the Proxmox VE 7.4 Create VM wizard
Final review before creating the VM.

Double-check the VMID, ISO, machine type, firmware, EFI/TPM requirements, disk storage, CPU, RAM, bridge, and VLAN before clicking Finish.

Start after created can boot the VM immediately.

10. Start and inspect the VM

New virtual machine selected in Proxmox VE 7.4
The new VM appears in the resource tree and can be started from the web interface.

The exact labels have evolved, but the main guest-management areas still include:

  • Summary for status and metrics;
  • Console for the guest display;
  • Hardware for virtual devices;
  • Cloud-Init for initializing compatible guest images;
  • Options for boot order, start-at-boot, and other guest behavior;
  • Task History for operations;
  • Monitor for the QEMU monitor;
  • Backup for guest backups;
  • Replication for compatible cluster storage replication, notably local ZFS workflows;
  • Snapshots for point-in-time guest states—not a replacement for backups;
  • Firewall and Permissions.

Another correction from the original article: Cloud-Init is not “Proxmox’s cloud service.” It is a widely used standard for initializing cloud and virtual-machine images with users, SSH keys, networking, and other first-boot settings.

11. Open the console and install the guest OS

Virtual machine console in Proxmox VE 7.4
The VM console behaves much like a physical monitor connected to a computer.

From here, install the operating system normally.

KVM with paravirtualized VirtIO devices can provide performance close to native hardware, but there is no universal “3 percent virtualization penalty.” Overhead depends on CPU, storage, networking, workload, NUMA topology, passthrough, and configuration.

A sensible Proxmox VE 9.2 baseline for a modern Linux VM

  • Machine: q35 unless legacy compatibility is required;
  • Firmware: OVMF/UEFI when supported by the guest;
  • CPU: host on a single host or homogeneous cluster, common baseline on heterogeneous clusters;
  • Disk: SCSI + VirtIO SCSI single;
  • IO thread where appropriate;
  • Discard on compatible thin-provisioned storage;
  • NIC: VirtIO;
  • QEMU Guest Agent enabled and installed;
  • no TPM unless the guest or policy requires one.

A sensible Windows 11 baseline

  • Machine: q35;
  • Firmware: OVMF/UEFI;
  • EFI Disk;
  • TPM 2.0;
  • SCSI + VirtIO SCSI single;
  • Windows ISO plus virtio-win ISO as an additional CD/DVD drive;
  • VirtIO NIC;
  • QEMU Guest Agent after Windows installation.

Why keep this Proxmox VE 7.4 guide?

The interface has evolved, but the core architectural decisions remain the same: firmware, machine type, CPU compatibility, storage, networking, and paravirtualized devices.

Keeping the original screenshots makes the article useful for older installations while the notes explain how those decisions map to Proxmox VE 9.2.

Official sources

Skip to content