共計 4612 個字符,預計需要花費 12 分鐘才能閱讀完成。
這篇文章主要介紹了 qemu-kvm 如何創建虛擬機并設置網絡,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。
一:介紹
Hypervisor:是一種“虛擬機監視器(VMM)”,它介于裸機硬件和操作系統之間的組件,通過它,可以在物理服務器上安裝多個操作系統。
VNC:是一個在 UNIX 和 Linux 平臺上的遠程控制開源程序,有:vncserver,vncviewer,vncpasswd,和 vncconnect。
KVM:Linux 2.6X 版本中加入的內核模塊,分為兩個:kvm.ko 和 kvm_intel.ko / kvm_amd.ko
QEMU-KVM:KVM 是一個可以虛擬 CPU 和內存的模塊,但是不能夠虛擬 I / O 等,所以它借鑒了 QEMU,形成了一個 QEMU-KVM 的工具。利用它,用戶可以很方便的操作 KVM 內核,虛擬出虛擬機、虛擬磁盤等。
虛擬化分為:
半虛擬化:完全用軟件模擬,不需要硬件支持,速度慢 = xen
全虛擬化:需要硬件支持,速度快 == KVM
二:創建虛擬機
1、查看 cup 是否支持虛擬
grep -E -o vmx|svm --color /proc/cpuinfo
注意:如果想在 vmwareWorkstation 的虛擬機中使用 KVM,
則需要在設置那里開啟 VT- X 技術,如圖:
2、查看 Linux 內核是否加載了 kvm 模塊
lsmod | grep kvm
3、加載 KVM 模塊
modprobe kvm
modprobe kvm_intel
4、安裝 qemu-kvm,安裝完成后會生成 /usr/libexec/qemu-kvm,是用戶空間操作 kvm 內核的接口,安裝后,會自動加載上面的 KVM 模塊
yum install -y qemu-kvm
5、通過網絡上傳 ISO 鏡像文件
通過 CRT 的 Alt + p 打開 ftp 客戶端上傳即可
6、生成一個 8G 的鏡像文件,作為虛擬機的磁盤
qemu-img create -f raw /root/hadoop.img 8G 默認生成 raw 格式,給多少就一次性劃分多少
qemu-img create -f qcow2 /root/hadoop.img 8G 生成 qcow2 格式,用多少算多少
7、使用 qemu-kvm 創建虛擬機 (參數說明 -m 指定內存大小 -smp 指定 cup 數量 -boot 啟動順序)
/usr/libexec/qemu-kvm -m 2048 -smp 1 -boot order=cd
-cdrom /iso/CentOS-6.6-x86_64-minimal.iso -hda /cloud/CentOS.img -vnc :1
參數說明: -m 指定客戶機內存大小,默認單位 MB
-smp 指定客戶機 cpu 個數。SMP:(symmetric[s? metr?k] Multi-processing) 對稱多處理
-boot 指定客戶機系統啟動順序,order=cd 是指先光盤再硬盤。c:CD-ROM d:Hard Disk
-hda 指定客戶機的 IDE 硬盤(即前面的創建的鏡像文件) -cdrom 指定客戶機的光驅
8、安裝 vnc 或使用 vnc 工具連接虛擬機,給虛擬機安裝系統
9、關閉虛擬機并再次啟動虛擬機, 指定 vnc 端口為 5901(不需要指定 cdrom,因為已經將操作系統安裝到磁盤中了,當然指定也沒有關系,因為會檢測是否安裝了操作系統!)
/usr/libexec/qemu-kvm -m 2048 -smp 1 -boot order=cd -hda /cloud/CentOS.img -vnc :1
三:配置網絡(brigde、nat、host-only)注意:brctl 和 tunctl 只是臨時創建,并不會修改 network-scripts 下面的 ifcfg-eth0 信息,所以開機會恢復。
說明:需要 bridge-utils 和 tunctl 的支持。
brctl 是 Linux 下用來創建和管理以太網橋,在內核中建立、維護、檢查網橋配置的命令 tunctl 是用來創建 tap 以及 tun 模式的網橋端口。
在計算機網絡中 TUN 與 TAP 是操作系統內核中的虛擬網絡設備。不同于普通靠硬件網路板卡實現的設備,這些虛擬的網絡設備全部用軟件實現,并向運行于操作系統上的軟件提供與硬件的網絡設備完全相同的功能。
TAP 等同于一個以太網設備,它操作第二層數據包如以太網數據幀。TUN 模擬了網絡層設備,操作第三層數據包比如 IP 數據封包。
bridge 橋接配置
1、要安裝 bridge-utils tunctl
yum install -y bridge-utils tunctl
2、添加一個 br0 網橋 (橋接類型)
brctl addbr br0
ifconfig br0 up
3、hypervisor 的 etho 也需要綁定到 bridge 上, 一步執行完成(注意修改成自己的 IP)
brctl addif br0 eth0 brctl stp br0 on ifconfig eth0 0.0.0.0
ifconfig br0 192.168.33.250 netmask 255.255.255.0 route add default gw 192.168.33.1
4、創建 TAP 類型虛擬網卡設備,用于綁定虛擬機的網卡綁定
tunctl -t vnet0
ifconfig vnet0 up
brctl addif br0 vnet0
brctl show
5、創建虛擬機并關聯網卡(可以連續帶多個 vnet)
/usr/libexec/qemu-kvm -m 2048 -smp 1 -boot order=cd -cdrom /kvmhost/iso/centos-6.7.iso
-hda /kvmhost/kvms/test.img -net nic -net tap,ifname=vnet0,script=no,downscript=no
-net nic -net tap,ifname=vnet1,script=no,downscript=no -vnc :1
6、啟動虛擬機并關聯網卡(可以連續帶多個 vnet)并添加 mac 地址
/usr/libexec/qemu-kvm -m 2048 -smp 1 -boot order=cd -hda /cloud/Centos.img
-net nic,macaddr=52:54:00:12:34:57 -net tap,ifname=vnet0,script=no,downscript=no
7、編輯 ifcfg-eth0 配置
靜態 ip(和物理機在同一個網段) 配置子網掩碼
配置 dns1
配置默認網關(和物理機同一網關)
8、重新啟動 network service network restart 即可
host-only 配置
1、要安裝 bridge-utils tunctl
yum install -y bridge-utils tunctl
2、添加一個 hostonlybr0 網橋 (橋接類型)
brctl addbr hostonlybr0
ifconfig hostonlybr0 up
3、給網橋設置一個隨意的 ip 地址(不需要吧 eth0 綁定到此網橋上,也就是和 eth0 隔離)
4、創建 TAP 類型虛擬網卡設備,用于綁定虛擬機的網卡綁定
tunctl -t vnet0
ifconfig vnet0 up
brctl addif hostonlybr0 vnet0
brctl show
5、創建虛擬機并關聯網卡
/usr/libexec/qemu-kvm -m 4096 -smp 1 -boot order=cd -hda /cloud/Centos.img -net nic -net tap,ifname=vnet0,script=no,downscript=no
6、啟動虛擬機并關聯網卡并添加 mac 地址
/usr/libexec/qemu-kvm -m 2048 -smp 1 -boot order=cd -hda /cloud/Centos.img -net nic,macaddr=52:54:00:12:34:57 -net tap,ifname=vnet0,script=no,downscript=no
7、編輯 ifcfg-eth0 配置
靜態 ip(隨意一個網段,大家都在一起即可) 配置子網掩碼
配置 dns1
配置默認網關(和物理機同一網關)
8、重新啟動 network service network restart 即可
四、qemu-img 是一個比較重要的工具,是 QEMU 的磁盤管理工具。
1、查看幫助信息
qemu-img -h
2、查看鏡像文件信息
qemu-img info /cloud/CentOS.img
3、創建一個磁盤鏡像文件
qemu-img create -f qcow2 /cloud/itcast.img 10G
4、將 raw 格式轉換成 qcow2 格式
qemu-img convert -O qcow2 /cloud/itcast.raw /cloud/itcast.qcow2
5、修改鏡像大小
qemu-img resize /cloud/test.img +2G
6、檢查鏡像
qemu-img check /cloud/itcast.qcow2
7、鏡像格式
qemu-img 支持多種鏡像格式,可通過 qemu-img - h 命令查看,常用的有 qcow2,raw
raw: 原始的磁盤鏡像格式,是 qemu-img 命令默認的文件格式,這種格式的文件的優勢在于它非常
簡單且非常容易移植到其他模擬器上使用。特點一開始就讓鏡像實際占用了分配空間,但是寫入速度稍快一下。 qcow2: 這種格式是 QEMU 目前推薦的鏡像格式,它是功能最多的格式,它支持稀疏文件以節省存儲空間, 支持加密、壓縮、快照等功能
QEMU monitor 是 QEMU 與用戶交互的一種控制臺,一般用于為 QEMU 模擬器提供較為復雜的功能,
QEMU monitor 的切換
Ctrl + Alt + 2 -- QEMU monitor 狀態
Ctrl + Alt + 1 -- 客戶機標準顯示窗口
顯示系統命令狀態:info
查看 QEMU 的版本信息
info versions
查看當前 QEMU 是否有 KVM 的支持
info kvm
info name
info status
查看客戶機各個 vCPU 的信息
info cpus
查看塊設備信息,如硬盤、軟盤、光驅等
info block
查看客戶機的網絡配置信息
info network
顯示當前系統中已保存的客戶機快照信息
info snapshots
查看當前客戶機的遷移狀態
info migrate
顯示當前客戶機的 VNC 狀態
info vnc
查看 QEMU monitor 中命令執行的歷史
info history
創建快照
savevm snap20150406
恢復快照
loadvm snap20150406
刪除快照
delvm snap20150406
感謝你能夠認真閱讀完這篇文章,希望丸趣 TV 小編分享的“qemu-kvm 如何創建虛擬機并設置網絡”這篇文章對大家有幫助,同時也希望大家多多支持丸趣 TV,關注丸趣 TV 行業資訊頻道,更多相關知識等著你來學習!