日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用libvirt管理kvm(virsh篇)

發(fā)布時(shí)間:2025/5/22 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用libvirt管理kvm(virsh篇) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? 一、簡介

libvirtLinux上的虛擬化庫,是長期穩(wěn)定的C語言API,支持KVM/QEMUXenLXC等主流虛擬化方案。鏈接:http://libvirt.org/

virshlibvirt對(duì)應(yīng)的shell命令。

二、環(huán)境介紹

OSUbuntu 12.04.1 LTS

內(nèi)核:Linux 3.2.0-33-generic-pae #52-Ubuntu SMP Thu Oct 18 16:39:21 UTC 2012 i686 i686 i386 GNU/Linux

libvirt0.9.8

三、準(zhǔn)備工作

ubuntu安裝,直接apt-get install

1、安裝kvm/qemu

sudo apt-get install kvm qemu

2、安裝libvirt

sudo apt-get install libvirt-bin libvirt-dev

3、網(wǎng)橋管理工具

sudo apt-get install bridge-utils

4、統(tǒng)一建模語言

sudo apt-get install uml-utilities

5vnc 虛擬機(jī)查看工具

sudo apt-get install vncviewer vnc4server

四、創(chuàng)建鏡像

在指定目錄下

執(zhí)行 ?qemu-img create -f raw template.img 3G

這樣就創(chuàng)建了一個(gè)大小為3G的鏡像(img

有人可能問鏡像是什么東西。簡單的說,我們?cè)阽R像上啟動(dòng)一個(gè)虛擬機(jī),這個(gè)3G的鏡像就相當(dāng)于這個(gè)虛擬機(jī)對(duì)應(yīng)的磁盤空間。

也有人執(zhí)行 qemu-img create -f qcow2 template.img 3G,(備注:qcow2支持動(dòng)態(tài)擴(kuò)張)來獲得一個(gè)動(dòng)態(tài)擴(kuò)張的鏡像。我沒有用這個(gè)。不同情景下可能這種模式更好,有興趣的朋友自己試一下。

五、libvirt xml配置文件

libvirt(包括virsh)使用xml文件對(duì)虛擬機(jī)進(jìn)行配置,其中包括虛擬機(jī)名稱、分配內(nèi)存、vcpu等多種信息。定義、創(chuàng)建虛擬機(jī)等操作都需要xml配置文件的參與,因此這里先介紹xml配置文件。我編輯了一個(gè)名為template.xmlxml文件,其中定義了一個(gè)名為demokvm 虛擬機(jī)。

<domain?type?=?'kvm'>????????//虛擬機(jī)類型,kvm<name>demo</name>????????//虛擬機(jī)名稱<memory>1048576</memory>?//分配內(nèi)存,單位kb<vcpu>1</vcpu>???????????//分配vcpu,單位個(gè)數(shù)<os><type?arch?=?'x86_64'machine?=?'pc'>hvm</type><boot?dev?=?'cdrom'/>?//cd?啟動(dòng)<boot?dev?=?'hd'/>????//硬盤啟動(dòng)</os><features><acpi/><apic/><pae/></features><clock?offset?=?'localtime'/><on_poweroff>destroy</on_poweroff><on_reboot>restart</on_reboot><on_crash>destroy</on_crash><devices><emulator>/usr/bin/kvm</emulator><disk?type?=?'file'?device?=?'disk'>??//對(duì)應(yīng)的鏡像,就是之前使用qemu-img命令新建的img文件,注意路徑要正確<driver?name?=?'qemu'?type?=?'raw'/><source?file?=?'/var/lib/lynn/img/template.img'/><target?dev?=?'hda'?bus?=?'ide'/></disk><disk?type?=?'file'?device?=?'cdrom'>?//可選項(xiàng),iso通常是操作系統(tǒng)的安裝光盤<source?file?=?'/var/lib/lynn/img/template.iso'/><target?dev?=?'hdb'?bus?=?'ide'/></disk><interface?type?=?'bridge'>???????????//libvirt默認(rèn)虛擬機(jī)的網(wǎng)絡(luò)配置是NAT模式,就是虛擬機(jī)與宿主機(jī)的網(wǎng)絡(luò)拓?fù)涫荖AT形式。實(shí)際中,許多開發(fā)者更希望使用網(wǎng)橋模式。<source?bridge?=?'br0'/></interface><input?type?='tablet'?bus='usb'/><input?type?=?'mouse'?bus?=?'ps2'/><graphics?type?=?'vnc'?port?=?'-1'?listen?=?'0.0.0.0'?autoport?=?'yes'?keymap?=?'en-us'/>????//vnc端口系統(tǒng)自動(dòng)配置</devices> </domain>

六、查看虛擬機(jī)列表

查看本機(jī)默認(rèn)(kvm)連接的虛擬機(jī):virsh list 。出現(xiàn)如下列信息:

$ virsh list

Id 名稱 ? ? ? ? ? ? ? 狀態(tài)

----------------------------------


$ virsh list

Id 名稱 ? ? ? ? ? ? ? 狀態(tài)

----------------------------------

1 demo ? ? ? ? ? ? ? ? running


七、定義、啟動(dòng)、創(chuàng)建虛擬機(jī)

這里以上述template.xml配置文件為例

1、定義虛擬機(jī)

virsh define template.xml

備注:此時(shí)虛擬機(jī)只被定義了,并沒有真正啟動(dòng)。因此此時(shí)執(zhí)行virsh list沒有任何虛擬機(jī)信息

$ virsh list

Id 名稱 ? ? ? ? ? ? ? 狀態(tài)

----------------------------------

2、啟動(dòng)虛擬機(jī)

virsh start ?demo

啟動(dòng)了由template.xml定義的、名為demo的虛擬機(jī)。此時(shí)執(zhí)行virsh list出現(xiàn)如下信息:

$ virsh list

Id 名稱 ? ? ? ? ? ? ? 狀態(tài)

----------------------------------

1 demo ? ? ? ? ? ? ? ? running

3、創(chuàng)建虛擬機(jī)

創(chuàng)建虛擬機(jī)的作用相當(dāng)于定義虛擬機(jī)+啟動(dòng)虛擬機(jī)

virsh create template.xml

此時(shí)執(zhí)行virsh list,結(jié)果如下:

$ virsh list

Id 名稱 ? ? ? ? ? ? ? 狀態(tài)

----------------------------------

1 demo ? ? ? ? ? ? ? ? running

八、通過vnc查看虛擬機(jī)

前面都沒有直觀感受,我們可能需要進(jìn)入虛擬機(jī)內(nèi)部進(jìn)行操作。

1、查看vnc端口

$ virsh vncdisplay demo

:0



2、通過vnc查看虛擬機(jī)內(nèi)部

$ vncviewer 127.0.0.1:0

效果如下:

備注:這個(gè)鏡像是我之前創(chuàng)建好的鏡像,所以已經(jīng)安裝好了操作系統(tǒng)。如果你從頭建了一個(gè)新的鏡像,就需要在虛擬機(jī)內(nèi)安裝操作系統(tǒng)(操作就像在物理機(jī)上安裝os一樣)。

九、關(guān)閉、銷毀、取消定義虛擬機(jī)

1、關(guān)閉虛擬機(jī)

virsh shutdown demo

虛擬機(jī)將慢慢關(guān)閉,就像平時(shí)我們關(guān)閉計(jì)算機(jī)那樣。此步驟與virsh start demo對(duì)應(yīng)

2、取消定義虛擬機(jī)

virsh undefine demo

libvirt取消demo的定義,系統(tǒng)無法在辨識(shí)demo。此步驟與virsh define template.xml對(duì)應(yīng)。

2、銷毀虛擬機(jī)

virsh destroy demo

libvirt直接銷毀demo,取消demo的定義。此步驟之后無法在執(zhí)行virsh undefine demo

轉(zhuǎn)載于:https://blog.51cto.com/speakingbaicai/1161964

總結(jié)

以上是生活随笔為你收集整理的使用libvirt管理kvm(virsh篇)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。