10.8. 启用或禁用虚拟机删除保护
您可以通过为虚拟机启用删除保护来防止意外删除虚拟机(VM)。您还可以禁用虚拟机的删除保护。
您可以通过 OpenShift Container Platform Web 控制台中的命令行或虚拟机的 VirtualMachine 详情页 启用或禁用删除保护。选项默认为禁用。
您还可以选择删除您管理的集群中任何虚拟机的删除保护选项可用。在这种情况下,启用了该功能的虚拟机会保留保护,而选项对任何新创建的虚拟机都不可用。
10.8.1. 使用 web 控制台启用或禁用虚拟机删除保护 复制链接链接已复制到粘贴板!
要防止意外删除虚拟机(VM),您可以使用 OpenShift Container Platform web 控制台启用虚拟机删除保护。您还可以禁用虚拟机的删除保护。
默认情况下,虚拟机不启用删除保护。您必须为每个独立虚拟机设置选项。
流程
在 OpenShift Container Platform Web 控制台中选择您的视图:
-
对于以虚拟化为中心的视图,请选择 Administrator
Virtualization VirtualMachines。 -
对于常规视图,进入到 Virtualization
VirtualMachines。
-
对于以虚拟化为中心的视图,请选择 Administrator
- 在 VirtualMachines 列表中,选择删除您要启用或禁用的保护的虚拟机。
- 点 Configuration 选项卡。
在 VirtualMachines 详情中,选择启用或禁用保护,如下所示:
启用保护:
- 将 Deletion 保护 开关设置为 On。
- 单击 Enable 以确认保护。
禁用保护:
- 将删除 保护 开关设置为 Off。
- 点 Disable 来禁用保护。
10.8.2. 使用 CLI 启用或禁用虚拟机删除保护 复制链接链接已复制到粘贴板!
要防止意外删除虚拟机(VM),您可以使用命令行启用虚拟机删除保护。您还可以禁用虚拟机的删除保护。
默认情况下,虚拟机不启用删除保护。您必须为每个独立虚拟机设置选项。
先决条件
-
已安装 OpenShift CLI(
oc
)。
流程
运行以下命令为虚拟机启用删除保护:
oc patch vm <vm_name> --type merge -p '{"metadata":{"labels":{"kubevirt.io/vm-delete-protection":"True"}}}' -n <namespace>
$ oc patch vm <vm_name> --type merge -p '{"metadata":{"labels":{"kubevirt.io/vm-delete-protection":"True"}}}' -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令禁用虚拟机的删除保护:
oc patch vm <vm_name> --type json -p '[{"op": "remove", "path": "/metadata/labels/kubevirt.io~1vm-delete-protection"}]' -n <namespace>
$ oc patch vm <vm_name> --type json -p '[{"op": "remove", "path": "/metadata/labels/kubevirt.io~1vm-delete-protection"}]' -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.8.3. 删除 VM 删除保护选项 复制链接链接已复制到粘贴板!
当您启用对虚拟机(VM)的删除保护时,您可以确保无法意外删除虚拟机。您还可以禁用虚拟机的保护。
作为集群管理员,您可以选择使 VM 删除保护选项可用。启用了删除保护的虚拟机会保留该设置;对于任何创建的新虚拟机,不允许启用该选项。
您可以通过为集群建立验证准入策略来删除删除保护选项,然后创建必要的绑定以在集群中使用策略。
先决条件
- 您必须具有集群管理员特权。
-
已安装 OpenShift CLI(
oc
)。
流程
创建验证准入策略,如下例所示:
验证准入策略文件示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将验证准入策略应用到集群:
oc apply -f disable-vm-delete-protection.yaml
$ oc apply -f disable-vm-delete-protection.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建验证准入策略绑定,如下例所示:
验证准入策略绑定文件示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将验证准入策略绑定应用到集群:
oc apply -f disable-vm-delete-protection-binding.yaml
$ oc apply -f disable-vm-delete-protection-binding.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow