Stay organized with collections
Save and categorize content based on your preferences.
This document is intended for application owners that run Google Distributed Cloud.
This document shows you how to delete virtual machines (VMs) that use
VM Runtime on GDC. You can choose to delete both the VM and
associated disk resources, only the VM resource, or only the disk resources.
Before you begin
To complete this document, you need access to the following resources:
This option deletes the VM resource and any associated virtual disks.
Use kubectl to delete both the VM and it's associated disk resources:
kubectlvirtdeletevmVM_NAME--all
Replace VM_NAME with the name of the VM that you want to
delete.
If you want to check the resources used by the VM that would be deleted,
specify the --dry-run flag together with --all.
If you want to delete the VM without also deleting the disk resource, don't
include the --all flag, as shown in the next section.
Delete the VM resource
This option only deletes the VM resource. Any associated virtual disks remain
as part of the cluster. This option lets you create another VM and resuse the
disk resource. The lifecycle of the VM can be managed separately to the
lifecycle of the disk resource.
Use kubectl to delete only the VM:
kubectlvirtdeletevmVM_NAME
Replace VM_NAME with the name of the VM that you want to
delete.
Delete the VM disk resource
This option deletes a virtual disk resource. If the associated VM still runs in
the cluster, the VM resource isn't deleted. This approach lets you delete a disk
resource that remains if you previously deleted a VM without using the --all
parameter.
Use kubectl to delete only the VM's disk resources:
kubectlvirtdeletediskDISK_NAME
Replace DISK_NAME with the name of the disk that you want
to delete. For example, the default boot disk for a VM is named
DISK_NAME-boot-dv. You can list all existing disks using
kubectl get datavolume.
If you try to delete a VM's disk before deleting the VM, the disk
is marked for deletion. The disk is only deleted when you also delete the VM.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[],[],null,["# Delete a VM in Google Distributed Cloud\n\nThis document is intended for application owners that run Google Distributed Cloud.\nThis document shows you how to delete virtual machines (VMs) that use\nVM Runtime on GDC. You can choose to delete both the VM and\nassociated disk resources, only the VM resource, or only the disk resources.\n\nBefore you begin\n----------------\n\nTo complete this document, you need access to the following resources:\n\n- A VM that runs in one of your clusters. If needed, [create a VM in Google Distributed Cloud](/kubernetes-engine/distributed-cloud/bare-metal/docs/vm-runtime/quickstart).\n- The `virtctl` client tool installed as a plugin for `kubectl`. If needed, [install the virtctl client tool](/kubernetes-engine/distributed-cloud/bare-metal/docs/vm-runtime/quickstart#install_the_virtctl_client_tool).\n\nDelete the VM and disk resources\n--------------------------------\n\nThis option deletes the VM resource and any associated virtual disks.\n\n- Use `kubectl` to delete both the VM and it's associated disk resources:\n\n kubectl virt delete vm \u003cvar label=\"name\" translate=\"no\"\u003eVM_NAME\u003c/var\u003e --all\n\n Replace \u003cvar translate=\"no\"\u003eVM_NAME\u003c/var\u003e with the name of the VM that you want to\n delete.\n\n If you want to check the resources used by the VM that would be deleted,\n specify the `--dry-run` flag together with `--all`.\n\n If you want to delete the VM without also deleting the disk resource, don't\n include the `--all` flag, as shown in the next section.\n\nDelete the VM resource\n----------------------\n\nThis option only deletes the VM resource. Any associated virtual disks remain\nas part of the cluster. This option lets you create another VM and resuse the\ndisk resource. The lifecycle of the VM can be managed separately to the\nlifecycle of the disk resource.\n\n- Use `kubectl` to delete only the VM:\n\n kubectl virt delete vm \u003cvar label=\"name\" translate=\"no\"\u003eVM_NAME\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eVM_NAME\u003c/var\u003e with the name of the VM that you want to\n delete.\n\nDelete the VM disk resource\n---------------------------\n\nThis option deletes a virtual disk resource. If the associated VM still runs in\nthe cluster, the VM resource isn't deleted. This approach lets you delete a disk\nresource that remains if you previously deleted a VM without using the `--all`\nparameter.\n\n- Use `kubectl` to delete only the VM's disk resources:\n\n kubectl virt delete disk \u003cvar label=\"diskname\" translate=\"no\"\u003eDISK_NAME\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eDISK_NAME\u003c/var\u003e with the name of the disk that you want\n to delete. For example, the default boot disk for a VM is named\n \u003cvar translate=\"no\"\u003eDISK_NAME\u003c/var\u003e`-boot-dv`. You can list all existing disks using\n `kubectl get datavolume`.\n\n If you try to delete a VM's disk before deleting the VM, the disk\n is marked for deletion. The disk is only deleted when you also delete the VM.\n\nWhat's next\n-----------\n\n- [Create and manage disks in Google Distributed Cloud](/kubernetes-engine/distributed-cloud/bare-metal/docs/vm-runtime/create-manage-disks)."]]