Azure Virtual Machines
Linux or Windows machines you boot from an image and patch yourself, on demand or on Spot capacity, optionally confidential.
- Provider
- azure
- Kind
- Virtual machine
- Category
- Compute
- Also known as
- Spot VM, Azure Spot Virtual Machines, Confidential VM
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| attestation | boolean | — | no | — | inherited |
| capacity | enum | on-demand | spot | no | on-demand | inherited |
| confidentialComputingTechnology | enum | amd-sev-snp | intel-tdx | no | — | inherited |
| confidentialOsDiskEncryption | boolean | — | no | — | inherited |
| diskEncryption | boolean | — | no | — | ▸ true |
| evictionNoticeSeconds | integer | — | no | — | inherited |
| evictionPolicy | enum | deallocate | delete | no | — | inherited |
| instances | integer | — | no | — | inherited |
| managed | boolean | — | no | false | ▸ false |
| managedDisks | boolean | — | no | true | inherited |
| maxPriceUsd | string | — | no | — | inherited |
| memoryEncryption | boolean | — | no | — | inherited |
| memoryGib | integer | — | no | — | inherited |
| os | enum | linux | windows | aix | ibm-i | no | linux | inherited |
| osDiskSizeGib | integer | — | no | 127 | inherited |
| publicIp | boolean | — | no | — | inherited |
| secureBoot | boolean | — | no | — | inherited |
| securityType | enum | standard | trusted-launch | confidential | no | trusted-launch | inherited |
| sizeVcpu | integer | — | no | — | inherited |
| slaBacked | boolean | — | no | — | inherited |
| virtualTpm | boolean | — | no | — | inherited |
| zoneRedundant | boolean | — | no | — | ▸ false |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
stateful-node-without-zone-redundancy
A stateful compute node pinned to exactly one availability zone disappears with that zone, and its state goes with it. Nodes inside a cell are exempt, because there the cell is deliberately single-zone and redundancy comes from the other cells.
- — all of these hold:
- — the node's `stateless` is false
- — the node sits inside exactly 1 availability-zone group
- — this does not hold:
- — the node sits inside at least one cell group
nodes:
- { id: "virtual-machine", component: "azure-virtual-machine" }Auto Scalingalibaba-auto-scalingElastic Compute Servicealibaba-ecsEdge Node Servicealibaba-ensSimple Application Serveralibaba-simple-application-serverAmazon EC2aws-ec2Amazon EC2 Auto Scalingaws-ec2-auto-scalingAmazon EC2 Dedicated Hostsaws-ec2-dedicated-hostAmazon Elastic VMware Serviceaws-evsAmazon Lightsailaws-lightsailAWS Nitro Enclavesaws-nitro-enclaveAzure BareMetal Infrastructureazure-baremetal-infrastructureAzure Compute Fleetazure-compute-fleetAzure Dedicated Hostazure-dedicated-hostAzure Data Science Virtual Machineazure-dsvmNutanix Cloud Clusters on Azureazure-nutanix-cloud-clustersAzure Virtual Machine Scale Setsazure-vm-scale-setAzure VMware Solutionazure-vmware-solutionCrusoe Cloud VMcrusoeFirecrackerfirecrackerMicrosoft Hyper-Vhyper-vKubeVirtkubevirtLambda Cloud instancelambda-labsKVM with libvirtlibvirtNebius AI Cloud VMnebiusNutanix AHVnutanix-ahvOpenStack Novaopenstack-novaoVirtovirtProxmox VEproxmoxRunpod PodrunpodVast.ai instancevast-aiGeneric virtual machinevirtual-machineVMware vSpherevsphereXCP-ngxcp-ngXenServerxenserverDigitalOcean Bare Metal GPUsdigitalocean-bare-metal-gpuDropletsdigitalocean-dropletDroplet Autoscale Pooldigitalocean-droplet-autoscaleBare Metal Solutiongoogle-bare-metal-solutionCloud TPUgoogle-cloud-tpuCompute Enginegoogle-compute-engine
and 20 more → Virtual machine page# yaml-language-server: $schema=../../schema/component.schema.json # Azure Virtual Machines: a leased machine you boot from an image and keep patching yourself # ("Overview of virtual machines in Azure"). Managed disks are encrypted at rest with # platform-managed keys by default ("Server-side encryption of Azure managed disks"). # # Spot and confidential VMs are this component, not separate ones: both are priced and created as # Virtual Machines. # # capacity: "spot" is Azure Spot Virtual Machines, unused capacity that Azure reclaims with 30 # seconds' notice and no SLA ("About Azure Spot Virtual Machines", # https://learn.microsoft.com/en-us/azure/virtual-machines/spot-vms). evictionPolicy, maxPriceUsd, # evictionNoticeSeconds and slaBacked mean something only when capacity is "spot", so none is # defaulted. Azure's own defaults for a Spot VM: eviction policy Deallocate, max price -1 (never # evicted for price), 30 seconds' notice, no SLA. # # securityType: "confidential" is an Azure confidential VM: memory encrypted in use by the hardware, # behind a hardware-enforced boundary between the guest and the virtualization stack ("About Azure # confidential VMs", # https://learn.microsoft.com/en-us/azure/confidential-computing/confidential-vm-overview). It boots # only after successful attestation and carries a dedicated vTPM; confidential OS disk encryption # is optional and cannot be changed after deployment, and Secure Boot is on only when that # encryption is selected. confidentialComputingTechnology, memoryEncryption, attestation and # confidentialOsDiskEncryption mean something only when securityType is "confidential"; virtualTpm # and secureBoot also apply to "trusted-launch". None is defaulted. schemaVersion: "1" type: "component" id: "azure-virtual-machine" kind: "virtual-machine" provider: "azure" docs: "https://learn.microsoft.com/en-us/azure/virtual-machines/overview" aliases: ["Spot VM", "Azure Spot Virtual Machines", "Confidential VM"] defaults: managed: false diskEncryption: true zoneRedundant: false properties: capacity: type: "enum" values: ["on-demand", "spot"] default: "on-demand" securityType: type: "enum" values: ["standard", "trusted-launch", "confidential"] default: "trusted-launch" osDiskSizeGib: type: "integer" default: 127 managedDisks: type: "boolean" default: true evictionPolicy: type: "enum" values: ["deallocate", "delete"] maxPriceUsd: type: "string" evictionNoticeSeconds: type: "integer" slaBacked: type: "boolean" confidentialComputingTechnology: type: "enum" values: ["amd-sev-snp", "intel-tdx"] memoryEncryption: type: "boolean" attestation: type: "boolean" virtualTpm: type: "boolean" confidentialOsDiskEncryption: type: "boolean" secureBoot: type: "boolean"