8.2. 编辑虚拟机
您可以使用 web 控制台中的 YAML 编辑器或命令行上的 OpenShift CLI 来更新虚拟机配置。您还可以更新 Virtual Machine Details 屏幕中的参数子集。
8.2.1. 在 web 控制台中编辑虚拟机
点相关字段旁的铅笔图标来编辑 web 控制台中虚拟机的选择值。可使用 CLI 编辑其他值。
对于预先配置的红帽模板和自定义虚拟机模板,可编辑标签和注解。所有其他值只适用于用户使用红帽模板或 Create Virtual Machine Template 向导创建 的自定义虚拟机模板。
流程
-
从侧边菜单中点 Workloads
Virtualization。 - 点 Virtual Machines 标签页。
- 选择虚拟机。
- 点 Details 标签页。
- 点击铅笔图标使该字段可编辑。
- 进行相关的更改并点击 Save。
如果虚拟机正在运行,对 Boot Order 或 Flavor 的更改在重启虚拟机后才会生效。
您可以点击相关字段右侧的 View Pending Changes 来查看待处理的更改。页面顶部的 Pending Changes 标题显示虚拟机重启时将应用的所有更改列表。
8.2.2. 使用 web 控制台编辑虚拟机 YAML 配置
您可以在 web 控制台中编辑虚拟机的 YAML 配置。某些参数无法修改。如果在有无效配置时点 Save,则会出现一个错误消息指示无法更改的参数。
如果在虚拟机运行时编辑 YAML 配置,则更改在重启虚拟机后才会生效。
编辑时离开 YAML 屏幕会取消您对配置做出的任何更改。
流程
-
从侧边菜单中点 Workloads
Virtualization。 - 选择虚拟机。
- 点击 YAML 选项卡以显示可编辑的配置。
- (可选):您可点击 Download,在本地下载当前状态的 YAML 文件。
- 编辑该文件并点击 Save。
确认消息显示修改已成功,其中包含对象的更新版本号。
8.2.3. 使用 CLI 编辑虚拟机 YAML 配置
使用这个步骤,通过 CLI 编辑虚拟机 YAML 配置。
先决条件
- 已使用 YAML 对象配置文件配置了虚拟机。
-
已安装
oc
CLI。
流程
运行以下命令以更新虚拟机配置:
$ oc edit <object_type> <object_ID>
- 打开对象配置。
- 编辑 YAML。
如果要编辑正在运行的虚拟机,您需要执行以下任一操作:
- 重启虚拟机。
运行以下命令使新配置生效:
$ oc apply <object_type> <object_ID>
8.2.4. 将虚拟磁盘添加到虚拟机
使用这个流程在虚拟机中添加虚拟磁盘。
流程
-
从侧边菜单中点 Workloads
Virtualization。 - 点 Virtual Machines 标签页。
- 选择虚拟机以打开 Virtual Machine Overview 屏幕。
- 点 Disks 选项卡。
在 Add Disk 窗口中,指定 Source、Name、Size、Type、Interface 和 Storage Class。
-
可选:在 Advanced 列表中,为虚拟磁盘指定 Volume Mode 和 Access Mode。如果没有指定这些参数,系统将使用
kubevirt-storage-class-defaults
配置映射中的默认值。
-
可选:在 Advanced 列表中,为虚拟磁盘指定 Volume Mode 和 Access Mode。如果没有指定这些参数,系统将使用
- 点 Add。
如果虚拟机正在运行,新磁盘处于 pending restart 状态,且不会在重启虚拟机前附加。
页面顶部的 Pending Changes 标题显示虚拟机重启时将应用的所有更改列表。
要配置存储类默认设置,请使用存储配置集。如需更多信息,请参阅自定义存储配置集。
8.2.4.1. 存储字段
名称 | 选择 | 描述 |
---|---|---|
Source | 空白(创建 PVC) | 创建一个空磁盘。 |
通过 URL 导入(创建 PVC) | 通过 URL(HTTP 或 HTTPS 端点)导入内容。 | |
使用现有的 PVC | 使用集群中已可用的 PVC。 | |
克隆现有的 PVC(创建 PVC) | 选择集群中可用的现有 PVC 并克隆它。 | |
通过 Registry 导入(创建 PVC) | 通过容器 registry 导入内容。 | |
容器(临时) | 从集群可以访问的 registry 中的容器上传内容。容器磁盘应只用于只读文件系统,如 CD-ROM 或临时虚拟机。 | |
名称 |
磁盘的名称。名称可包含小写字母 ( | |
Size | GiB 中磁盘的大小。 | |
类型 | 磁盘类型。示例:磁盘或光盘 | |
Interface | 磁盘设备的类型。支持的接口包括 virtIO、SATA 和 SCSI。 | |
Storage class | 用于创建磁盘的存储类。 | |
Advanced | 定义持久性卷是否使用格式化的文件系统或原始块状态。默认为 Filesystem。 | |
Advanced | 持久性卷访问模式。支持的访问模式有 Single User(RWO)、Shared Access(RWX) 和 Read Only(ROX)。 |
高级存储设置
以下高级存储设置可用于 空白、从 URL 导入 和 克隆现有的 PVC 磁盘。所有参数都是可选的。如果没有指定这些参数,系统将使用 kubevirt-storage-class-defaults
配置映射中的默认值。
名称 | 参数 | 描述 |
---|---|---|
卷模式 | Filesystem | 在基于文件系统的卷中保存虚拟磁盘。 |
Block |
直接将虚拟磁盘存储在块卷中。只有底层存储支持时才使用 | |
访问模式 | Single User (RWO) | 这个卷可以被一个单一的节点以 read/write 的形式挂载。 |
Shared Access (RWX) | 卷可以被多个节点以读写模式挂载。 注意 对于一些功能(如虚拟机在节点间实时迁移)需要这个权限。 | |
Read Only (ROX) | 卷可以被多个节点以只读形式挂载。 |
8.2.5. 将网络接口添加到虚拟机
将网络接口添加到虚拟机.
流程
-
从侧边菜单中点 Workloads
Virtualization。 - 点 Virtual Machines 标签页。
- 选择虚拟机以打开 Virtual Machine Overview 屏幕。
- 点 Network Interfaces 选项卡。
- 点击 Add Network Interface。
- 在 Add Network Interface 窗口中,指定网络接口的 Name、Model、Network、Type 和 MAC Address。
- 点 Add。
如果虚拟机正在运行,新的网络接口处于 pending restart 状态,且更改在重启虚拟机后才会生效。
页面顶部的 Pending Changes 标题显示虚拟机重启时将应用的所有更改列表。
8.2.5.1. 网络字段
名称 | 描述 |
---|---|
名称 | 网络接口控制器的名称。 |
model | 指明网络接口控制器的型号。支持的值有 e1000e 和 virtio。 |
网络 | 可用网络附加定义的列表。 |
类型 |
可用绑定方法列表。对于默认的 pod 网络, |
MAC 地址 | 网络接口控制器的 MAC 地址。如果没有指定 MAC 地址,则会自动分配一个。 |
8.2.6. 为虚拟机编辑 CD-ROM
使用以下步骤为虚拟机编辑 CD-ROM。
流程
-
从侧边菜单中点 Workloads
Virtualization。 - 点 Virtual Machines 标签页。
- 选择虚拟机以打开 Virtual Machine Overview 屏幕。
- 点 Disks 选项卡。
- 点您要编辑的 CD-ROM 的 Options 菜单 ,然后选择 Edit。
- 在 Edit CD-ROM 窗口中,编辑字段: Source、Persistent Volume Claim、Name、Type 和 Interface。
- 点 Save。