第四章:KVM使用進(jìn)階
比如ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
https://launchpad.net/cirros/+download //可以下載別人已經(jīng)安裝好的鏡像文件 ,就是一個(gè)已經(jīng)安裝好的ios
很小,也就9M
qemu-kvm -name "cirros" -smp 4,cores=2,socket=4 -m 512 -drive file=/root/cirros-0.3.0-x86_64-disk.img,media=disk -net nic -net tap,ifname=vnet0,downscript=no -nographic
//不使用圖形化界面
沒有圖形化界面的時(shí)候,也可以使用monitor //ctrl +1 ,ctrl +2在
Ctrl +a ,c //在control和monitor之間進(jìn)行切換
Ctrl+a ,h /顯示幫助信息
//ctrl +a ,c :infor 查看具體硬件信息
//help info查看幫助信息
//控制界面,info信息
:info kvm
:info name
:info status
:info mem
:info tlb
:info cpus
:info vnc
:info mice //查看幫助信息
:info history
// help 則可以查看所有的幫助信息,包括所有的
Savevm :實(shí)現(xiàn)掛起
Loadvm:載入快照
Stop:停止當(dāng)前emulation進(jìn)程
C|conn :繼續(xù)使用當(dāng)前進(jìn)程
Device_add : --add device :添加設(shè)備
Device_del :刪除設(shè)備
Migrate:遷移設(shè)備 //migrate:遷移
遷移://把A上的遷移到B上去
兩個(gè)hypervisor之間實(shí)現(xiàn)遷移//A上運(yùn)行一個(gè)hypervisor,B想要實(shí)施遷移,也要啟動(dòng)一個(gè)虛擬機(jī)實(shí)例
//B啟動(dòng)的時(shí)候需要說明incoming機(jī)制,他不會(huì)啟動(dòng)起來,會(huì)等到其他其他虛擬機(jī)實(shí)例遷移到這里來
A上使用migrate,B上使用incoming,//傳遞完成后,A也就結(jié)束了
A和B應(yīng)該在同一個(gè)網(wǎng)段內(nèi)
Ha,Hb主機(jī)
Hb:
Qemu-kvm .... -incoming tcp:0:6767 //6767是一個(gè)tcp,0表示允許任意其他主機(jī)發(fā)起連接請(qǐng)求指令,進(jìn)行遷移的
Ha:
Monitor: migrate tcp:10.0.0.1:6767 //遷移的是內(nèi)存中的數(shù)據(jù)
登錄進(jìn)去后:
Cat /proc/sysinfo :查看cpu信息,默認(rèn)是qemu的cpu
Qemu-kvm -cpu ?//可以啟動(dòng)的時(shí)候指定cpu類型,
Qemu-kvm -cpu host //使用主機(jī)的cpu
Qemu-kvm的其它的用到的參數(shù):
動(dòng)態(tài)遷移時(shí)用到的選項(xiàng):-incoming tcp:0:PORT //使用的端口
讓qemu-kvm進(jìn)程運(yùn)行在后臺(tái):-daemonize
開啟USB總線:-usb
guest os為windows時(shí),-usb -usbdevice tablet //使用usb鼠標(biāo)
打開KVM的支持:
-enable-kvm //打開kvm支持,qemu-kvm默認(rèn)就啟用了此選項(xiàng)
打開聲音設(shè)備:
qemu-kvm -soundhw ?
指定存儲(chǔ)設(shè)備:
-iSCSI //使用iscsi協(xié)議,直接關(guān)聯(lián)到某設(shè)備協(xié)議的話
通過URL指定使用的iscsi設(shè)備// iscsi://<target_ip>[:port]/<target_iqn>/<lun>
Qemu-kvm -drive file=iscsi://tgt.magedu.com/iqn.2014-05.com.magedu.tg1/1 //使用iscsi設(shè)備作為存儲(chǔ)設(shè)備
Qemu-kvm -iscsi initiator-name= -drive file=iscsi:/tgt.magedu.com/iqn.2014-05.com.magedu.tgt1/1
指定使用bios文件:
-bios /path/to/some_bios_program //指定bios文件
-initrd
-append:向內(nèi)核傳遞的參數(shù)列表
Libvirt:工具實(shí)現(xiàn)虛擬機(jī)管理:
Virt-manger,virt-install,virsh //一般通過virsh-install創(chuàng)建虛擬機(jī),然后通過virsh去使用模板去創(chuàng)建其他主機(jī)
Libvirt使用的安裝的話娿
Virst-install工具的使用
virt-install是一個(gè)命令行工具,它能夠?yàn)镵VM、Xen或其它支持libvrit API的hypervisor創(chuàng)建虛擬機(jī)并完成GuestOS安裝;此外,它能夠基于串行控制臺(tái)、VNC或SDL支持文本或圖形安裝界面。安裝過程可以使用本地的安裝介質(zhì)如CDROM,也可以通過網(wǎng)絡(luò)方式如NFS、HTTP或FTP服務(wù)實(shí)現(xiàn)。對(duì)于通過網(wǎng)絡(luò)安裝的方式,virt-install可以自動(dòng)加載必要的文件以啟動(dòng)安裝過程而無須額外提供引導(dǎo)工具。當(dāng)然,virt-install也支持PXE方式的安裝過程,也能夠直接使用現(xiàn)有的磁盤映像直接啟動(dòng)安裝過程。
virt-install命令有許多選項(xiàng),這些選項(xiàng)大體可分為下面幾大類,同時(shí)對(duì)每類中的常用選項(xiàng)也做出簡(jiǎn)單說明。
◇一般選項(xiàng):指定虛擬機(jī)的名稱、內(nèi)存大小、VCPU個(gè)數(shù)及特性等;
-n NAME, --name=NAME:虛擬機(jī)名稱,需全局惟一;
//virst-install安裝好后,在etc/libvt目錄會(huì)生成該虛擬機(jī)的配置文件,而且該配置文件將來被這個(gè)虛擬機(jī)永遠(yuǎn)使用
//除非刪除,qemu-kvm安裝一個(gè)虛擬機(jī),關(guān)機(jī)后,重啟需要重新制定參數(shù)
-r MEMORY, --ram=MEMORY:虛擬機(jī)內(nèi)在大小,單位為MB;
--vcpus=VCPUS[,maxvcpus=MAX][,sockets=#][,cores=#][,threads=#]:VCPU個(gè)數(shù)及相關(guān)配置;
--cpu=CPU:CPU模式及特性,如coreduo等;可以使用qemu-kvm -cpu ?來獲取支持的CPU模式;
◇安裝方法:指定安裝方法、GuestOS類型等;
-c CDROM, --cdrom=CDROM:光盤安裝介質(zhì);
-l LOCATION, --location=LOCATION:安裝源URL,支持FTP、HTTP及NFS等,如ftp://172.16.0.1/pub;
--pxe:基于PXE完成安裝;
--livecd: 把光盤當(dāng)作LiveCD;
--os-type=DISTRO_TYPE:操作系統(tǒng)類型,如linux、unix或windows等;
--os-variant=DISTRO_VARIANT:某類型操作系統(tǒng)的變體,如rhel5、fedora8等;
-x EXTRA, --extra-args=EXTRA:根據(jù)--location指定的方式安裝GuestOS時(shí),用于傳遞給內(nèi)核的額外選項(xiàng),例如指定kickstart文件的位置,--extra-args "ks=http://172.16.0.1/class.cfg"
--boot=BOOTOPTS:指定安裝過程完成后的配置選項(xiàng),如指定引導(dǎo)設(shè)備次序、使用指定的而非安裝的kernel/initrd來引導(dǎo)系統(tǒng)啟動(dòng)等 ;例如:
--boot cdrom,hd,network:指定引導(dǎo)次序;
--boot kernel=KERNEL,initrd=INITRD,kernel_args=”console=/dev/ttyS0”:指定啟動(dòng)系統(tǒng)的內(nèi)核及initrd文件;
◇存儲(chǔ)配置:指定存儲(chǔ)類型、位置及屬性等;
--disk=DISKOPTS:指定存儲(chǔ)設(shè)備及其屬性;格式為--disk /some/storage/path,opt1=val1,opt2=val2等;常用的選項(xiàng)有:
device:設(shè)備類型,如cdrom、disk或floppy等,默認(rèn)為disk;
bus:磁盤總結(jié)類型,其值可以為ide、scsi、usb、virtio或xen;
perms:訪問權(quán)限,如rw、ro或sh(共享的可讀寫),默認(rèn)為rw;
size:新建磁盤映像的大小,單位為GB;
cache:緩存模型,其值有none、writethrouth(緩存讀)及writeback(緩存讀寫);
format:磁盤映像格式,如raw、qcow2、vmdk等;
sparse:磁盤映像使用稀疏格式,即不立即分配指定大小的空間;
--nodisks:不使用本地磁盤,在LiveCD模式中常用;
◇網(wǎng)絡(luò)配置:指定網(wǎng)絡(luò)接口的網(wǎng)絡(luò)類型及接口屬性如MAC地址、驅(qū)動(dòng)模式等;
-w NETWORK, --network=NETWORK,opt1=val1,opt2=val2:將虛擬機(jī)連入宿主機(jī)的網(wǎng)絡(luò)中,其中NETWORK可以為:
bridge=BRIDGE:連接至名為“BRIDEG”的橋設(shè)備;
network=NAME:連接至名為“NAME”的網(wǎng)絡(luò);
其它常用的選項(xiàng)還有:
model:GuestOS中看到的網(wǎng)絡(luò)設(shè)備型號(hào),如e1000、rtl8139或virtio等;
mac:固定的MAC地址;省略此選項(xiàng)時(shí)將使用隨機(jī)地址,但無論何種方式,對(duì)于KVM來說,其前三段必須為52:54:00;
--nonetworks:虛擬機(jī)不使用網(wǎng)絡(luò)功能;
◇圖形配置:定義虛擬機(jī)顯示功能相關(guān)的配置,如VNC相關(guān)配置;
--graphics TYPE,opt1=val1,opt2=val2:指定圖形顯示相關(guān)的配置,此選項(xiàng)不會(huì)配置任何顯示硬件(如顯卡),而是僅指定虛擬機(jī)啟動(dòng)后對(duì)其進(jìn)行訪問的接口;
TYPE:指定顯示類型,可以為vnc、sdl、spice或none等,默認(rèn)為vnc;
port:TYPE為vnc或spice時(shí)其監(jiān)聽的端口;
listen:TYPE為vnc或時(shí)所監(jiān)聽的IP地址,默認(rèn)為127.0.0.1,可以通過修改/etc/libvirt/qemu.conf定義新的默認(rèn)值;
password:TYPE為vnc或spice時(shí),為遠(yuǎn)程訪問監(jiān)聽的服務(wù)進(jìn)指定認(rèn)證密碼;
--noautoconsole:禁止自動(dòng)連接至虛擬機(jī)的控制臺(tái);
◇設(shè)備選項(xiàng):指定文本控制臺(tái)、聲音設(shè)備、串行接口、并行接口、顯示接口等;
--serial=CHAROPTS:附加一個(gè)串行設(shè)備至當(dāng)前虛擬機(jī),根據(jù)設(shè)備類型的不同,可以使用不同的選項(xiàng),格式為“--serial type,opt1=val1,opt2=val2,...”,例如:
--serial pty:創(chuàng)建偽終端;
--serial dev,path=HOSTPATH:附加主機(jī)設(shè)備至此虛擬機(jī);
--video=VIDEO:指定顯卡設(shè)備模型,可用取值為cirrus、vga、qxl或vmvga;
◇虛擬化平臺(tái):虛擬化模型(hvm或paravirt)、模擬的CPU平臺(tái)類型、模擬的主機(jī)類型、hypervisor類型(如kvm、xen或qemu等)以及當(dāng)前虛擬機(jī)的UUID等;
-v, --hvm:當(dāng)物理機(jī)同時(shí)支持完全虛擬化和半虛擬化時(shí),指定使用完全虛擬化;
-p, --paravirt:指定使用半虛擬化;
--virt-type:使用的hypervisor,如kvm、qemu、xen等;所有可用值可以使用’virsh capabilities’命令獲??;
◇其它:
--autostart:指定虛擬機(jī)是否在物理啟動(dòng)后自動(dòng)啟動(dòng);
--print-xml:如果虛擬機(jī)不需要安裝過程(--import、--boot),則顯示生成的XML而不是創(chuàng)建此虛擬機(jī);默認(rèn)情況下,此選項(xiàng)仍會(huì)創(chuàng)建磁盤映像;
--force:禁止命令進(jìn)入交互式模式,如果有需要回答yes或no選項(xiàng),則自動(dòng)回答為yes;
--dry-run:執(zhí)行創(chuàng)建虛擬機(jī)的整個(gè)過程,但不真正創(chuàng)建虛擬機(jī)、改變主機(jī)上的設(shè)備配置信息及將其創(chuàng)建的需求通知給libvirt;
-d, --debug:顯示debug信息;
盡管virt-install命令有著類似上述的眾多選項(xiàng),但實(shí)際使用中,其必須提供的選項(xiàng)僅包括--name、--ram、--disk(也可是--nodisks)及安裝過程相關(guān)的選項(xiàng)。此外,有時(shí)還需要使用括--connect=CONNCT選項(xiàng)來指定連接至一個(gè)非默認(rèn)的hypervisor。
實(shí)驗(yàn)安裝
yum install virt-viewer libvirt python-virtinst virt-manager -y
Ifconfig //libvirt會(huì)自動(dòng)創(chuàng)建一個(gè)virbr0的接口,
Ifconfig virbr0 down
Brctl delbr virbr0 //刪除原有的,自己創(chuàng)建新的
Service libvirtd start //啟動(dòng)libvirtd服務(wù)
systemctl start libvirtd
Virsh //即可進(jìn)入virsh的交互命令行
Uri:查看當(dāng)前主機(jī)的連接接口
另外一臺(tái)主機(jī): yum install libvirt python-virtinst //不使用,只是告訴可以使用而已
Sytemctl start libvirtd
Virsh
Help iface-bridge //查看使用方法,然后 exit
//注意:加入也有virnet的話,也要?jiǎng)h除后自己創(chuàng)建
// virsh iface-bridge enp14s0 br0 :老失敗 //生成橋接設(shè)備
[root@localhost ~]# virt-install -n "centos7" --vcpus 2 -r 512 -l /usr/local/src/iso7/Ce
ntOS-7-x86_64-DVD-1511.iso --disk path=/p_w_picpaths/centos7.qcow2,bus=virtio,size=20 --network bridge=virbr0,model=virtio
//親自實(shí)踐過
1.這里有一個(gè)橋接的接口,
下面這個(gè)示例創(chuàng)建一個(gè)名為rhel5的虛擬機(jī),其hypervisor為KVM,內(nèi)存大小為512MB,磁盤為8G的映像文件/var/lib/libvirt/p_w_picpaths/rhel5.8.img,通過boot.iso光盤鏡像來引導(dǎo)啟動(dòng)安裝過程。
# virt-install \
--connect qemu:///system \ //這是制定連接到哪一個(gè)hypervisor上去創(chuàng)建,默認(rèn)為本機(jī)的hypervisor
--virt-type kvm \
--name rhel5 \
--ram 512 \
--disk path=/var/lib/libvirt/p_w_picpaths/rhel5.img,size=8 \
--graphics vnc \
--cdrom /tmp/boot.iso \
--os-variant rhel5
2.下面的示例將創(chuàng)建一個(gè)名為rhel6的虛擬機(jī),其有兩個(gè)虛擬CPU,安裝方法為FTP,并指定了ks文件的位置,磁盤映像文件為稀疏格式,連接至物理主機(jī)上的名為brnet0的橋接網(wǎng)絡(luò):
# virt-install \
--connect qemu:///system \
--virt-type kvm \
--name rhel6 \
--ram 1024 \
--vcpus 2 \
--network bridge=brnet0 \
--disk path=/VMs/p_w_picpaths/rhel6.img,size=120,sparse \
--location ftp://172.16.0.1/rhel6/dvd \
--extra_args “ks=http://172.16.0.1/rhel6.cfg”\
--os-variant rhel6 \
--force //強(qiáng)制回答為yes
3.下面的示例將創(chuàng)建一個(gè)名為rhel5.8的虛擬機(jī),磁盤映像文件為稀疏模式的格式為qcow2且總線類型為virtio,安裝過程不啟動(dòng)圖形界面(--nographics),但會(huì)啟動(dòng)一個(gè)串行終端將安裝過程以字符形式顯示在當(dāng)前文本模式下,虛擬機(jī)顯卡類型為cirrus:
# virt-install \
--connect qemu:///system \
--virt-type kvm \
--name rhel5.8 \
--vcpus 2,maxvcpus=4 \
--ram 512 \
--disk path=/VMs/p_w_picpaths/rhel5.8.img,size=120,format=qcow2,bus=virtio,sparse \
--network bridge=brnet0,model=virtio
--nographics \
--location ftp://172.16.0.1/pub \
--extra-args "ks=http://172.16.0.1/class.cfg console=ttyS0 serial" \
--os-variant rhel5 \
--force \
--video=cirrus
4.下面的示例則利用已經(jīng)存在的磁盤映像文件(已經(jīng)有安裝好的系統(tǒng))創(chuàng)建一個(gè)名為rhel5.8的虛擬機(jī):
# virt-install \
--name rhel5.8
--ram 512
--disk /VMs/rhel5.8.img
--import
每個(gè)虛擬機(jī)創(chuàng)建后,其配置信息保存在/etc/libvirt/qemu目錄中,文件名與虛擬機(jī)相同,格式為XML。
virsh uri: 查看當(dāng)前主機(jī)上hypervisor的連接路徑;
實(shí)驗(yàn):使用原有的配置文件,創(chuàng)建新的虛擬機(jī)// 視頻也沒有完成
virsh dumpxml centos7 > /etc/libvirt/qemu/cirros5.xml //備份xml文件,拷貝配置文件
Vim cirros5.xml //修改配置文件,并復(fù)制磁盤
Name
Uuid
Source :硬盤文件需要修改 //可以復(fù)制原有的硬盤文件,到自己制定的目錄中
Cp /p_w_picpaths/cirros-0.3.0-x86_64-disk.img /p_w_picpaths/vm5/cirros.img
virt-install -n "cirros5" -r 512 --vcpus=2 --disk path=/p_w_picpaths/vm5/cirrors.img --network bridge=br0 --import
//導(dǎo)入,已經(jīng)安裝好系統(tǒng)的硬盤,然后直接使用即可
Virsh:
undefine centos7 //刪除虛擬機(jī),
//這個(gè)錯(cuò)誤哦,一般是服務(wù)沒有啟動(dòng)
Virsh的命令介紹:
1.Domain //管理各個(gè)虛擬機(jī)的
//加入把圖形界面關(guān)閉了,使用virsh console cirros:cirross為虛擬機(jī)創(chuàng)建時(shí)的名字,即可連接
create //創(chuàng)建虛擬機(jī),并打開
define //都可以用來創(chuàng)建虛擬機(jī),但是define不會(huì)打開虛擬機(jī)
undefine //刪除一個(gè)虛擬機(jī)
start //手動(dòng)啟動(dòng)一個(gè)虛擬機(jī)實(shí)例
shutdown //關(guān)閉一個(gè)虛擬機(jī)實(shí)例
setvcpus //調(diào)整cpu的個(gè)數(shù)
save //保存一個(gè)域狀態(tài)到文件中
restore //恢復(fù)域
domstate //查看狀態(tài)
doiflist //列出實(shí)例的接口
2.hypervisor相關(guān)
sysinfo //狀態(tài)信息
capabilities //當(dāng)前hypervisor的虛擬能力
nodeinfo //當(dāng)前hypervisor的信息,系統(tǒng)信息
3.interface接口的//hypervisor上的接口
4.network:虛擬機(jī)上的接口
5.snapshot 快照
6.storage pool :存儲(chǔ)池//存儲(chǔ)池中大多數(shù)都是卷
當(dāng)前題目:kvm-virsh使用
網(wǎng)站URL:http://jinyejixie.com/article26/psgccg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、微信公眾號(hào)、Google、App設(shè)計(jì)、品牌網(wǎng)站設(shè)計(jì)、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)