- KVM Virtualization Cookbook
- Konstantin Ivanov
- 314字
- 2021-07-02 22:07:08
How it works...
How to start a virtual machine with QEMU/KVM depends greatly on the type of image and how the partitions are structured inside that image.
We used two different image types with different partitioning schemes to demonstrate this concept.
In step 1, we used the qemu-system-x86_64 command to emulate a x86_64 CPU architecture, specifically we passed the -cpu Nehalem flag, emulating the Nehalem CPU model. We passed the IP address of our host as a parameter to the -vnc flag. This starts a VNC server in the VM so that we can later use a VNC client to connect to the QEMU instance. We specified the amount of memory to be allocated to the instance, in this case, 1GB with the -m flag. We instructed QEMU that we are going to use a raw image with the format=raw option and the name and location of the actual image with the file=debian.img parameter.
Recall that this raw image contains two partitions with the second partition containing the root filesystem where the bootloader is located. This is very important to remember because we need to specify from what partition index the guest OS should load. We do that with the index=2 flag. Finally, we pass the -daemonize parameter to background the QEMU process.
In step 4, we started another QEMU instance, this time using the qcow2 CentOS image we downloaded earlier. We did not have to specify from what partition we need to boot from this this time because most prebuilt images use the first partition, or only have one partition. We also used the -hda flag instead of the -drive parameter, just to demonstrate that both options can be used with the same result. The -hda flag tells QEMU the first disk for the instance should be loaded from the filename that follows it.
- 軟件界面交互設計基礎
- Java Web程序設計
- The DevOps 2.4 Toolkit
- 重學Java設計模式
- 軟件項目管理實用教程
- Getting Started with NativeScript
- INSTANT Sinatra Starter
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- 深度探索Go語言:對象模型與runtime的原理特性及應用
- Xamarin Blueprints
- Java7程序設計入門經典
- 程序員必會的40種算法
- 計算機系統(tǒng)解密:從理解計算機到編寫高效代碼
- Spring Boot學習指南:構建云原生Java和Kotlin應用程序
- 軟件開發(fā)中的決策:權衡與取舍