11.4. 部署虚拟机
安装并激活 OpenShift Virtualization 和 Containerized Data Importer (CDI) 后,创建一个命名空间并部署虚拟机 (VM)。
流程
部署 YAML,它将创建虚拟机定义和一个包含 Fedora 操作系统的数据卷。
在以下示例中,使用命名空间
mig-vm
,并使用以下 YAML 来创建 Fedora 虚拟机,并创建包含 Fedora 操作系统的 datavolume:apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: rhel9-lime-damselfly-72 namespace: mig-vm labels: app: rhel9-lime-damselfly-72 kubevirt.io/dynamic-credentials-support: 'true' vm.kubevirt.io/template: rhel9-server-small vm.kubevirt.io/template.namespace: openshift vm.kubevirt.io/template.revision: '1' vm.kubevirt.io/template.version: v0.31.1 spec: dataVolumeTemplates: - apiVersion: cdi.kubevirt.io/v1beta1 kind: DataVolume metadata: name: rhel9-lime-damselfly-72 spec: sourceRef: kind: DataSource name: rhel9 namespace: openshift-virtualization-os-images storage: resources: requests: storage: 30Gi running: true template: metadata: annotations: vm.kubevirt.io/flavor: small vm.kubevirt.io/os: rhel9 vm.kubevirt.io/workload: server creationTimestamp: null labels: kubevirt.io/domain: rhel9-lime-damselfly-72 kubevirt.io/size: small network.kubevirt.io/headlessService: headless spec: architecture: amd64 domain: cpu: cores: 1 sockets: 1 threads: 1 devices: disks: - disk: bus: virtio name: rootdisk - disk: bus: virtio name: cloudinitdisk interfaces: - masquerade: {} model: virtio name: default rng: {} features: acpi: {} smm: enabled: true firmware: bootloader: efi: {} machine: type: pc-q35-rhel9.4.0 memory: guest: 2Gi resources: {} networks: - name: default pod: {} terminationGracePeriodSeconds: 180 volumes: - dataVolume: name: rhel9-lime-damselfly-72 name: rootdisk - cloudInitNoCloud: userData: |- #cloud-config user: cloud-user password: password chpasswd: { expire: False } name: cloudinitdisk
apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: rhel9-lime-damselfly-72 namespace: mig-vm
1 labels: app: rhel9-lime-damselfly-72 kubevirt.io/dynamic-credentials-support: 'true' vm.kubevirt.io/template: rhel9-server-small vm.kubevirt.io/template.namespace: openshift vm.kubevirt.io/template.revision: '1' vm.kubevirt.io/template.version: v0.31.1 spec: dataVolumeTemplates: - apiVersion: cdi.kubevirt.io/v1beta1 kind: DataVolume metadata: name: rhel9-lime-damselfly-72 spec: sourceRef: kind: DataSource name: rhel9 namespace: openshift-virtualization-os-images storage: resources: requests: storage: 30Gi running: true
2 template: metadata: annotations: vm.kubevirt.io/flavor: small vm.kubevirt.io/os: rhel9 vm.kubevirt.io/workload: server creationTimestamp: null labels: kubevirt.io/domain: rhel9-lime-damselfly-72
3 kubevirt.io/size: small network.kubevirt.io/headlessService: headless spec: architecture: amd64 domain: cpu: cores: 1 sockets: 1 threads: 1 devices: disks: - disk: bus: virtio name: rootdisk - disk: bus: virtio name: cloudinitdisk interfaces: - masquerade: {} model: virtio name: default rng: {} features: acpi: {} smm: enabled: true firmware: bootloader: efi: {} machine: type: pc-q35-rhel9.4.0 memory: guest: 2Gi resources: {} networks: - name: default pod: {} terminationGracePeriodSeconds: 180 volumes: - dataVolume: name: rhel9-lime-damselfly-72 name: rootdisk - cloudInitNoCloud: userData: |- #cloud-config user: cloud-user password: password chpasswd: { expire: False } name: cloudinitdisk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
持久性卷 (PV) 由操作系统填充,虚拟机已启动。