1. 檢測linux VPS是Xen,OpenVZ還是KVM真假方法
用 Virt What 判斷商家虛擬架構,是可以的,但是要額外安裝這個軟體
一、相關說明:
可以判斷以下大多數虛擬架構,包括:VMware、
Hyper-V、VirtualPC、VirtualBox、OpenVZ / Virtuozzo、Linux-VServer、UML、IBM
PowerVM Lx86 Linux/x86 emulator、Hitachi Virtualization Manager (HVM)
Virtage logical 、partitioning、IBM SystemZ、Parallels、Xen、QEMU/KVM
二、下載
wget http://www.138vps.com/susu_download/virt-what-1.11.tar.gz
三、安裝
tar zxf virt-what-1.11.tar.gz #解壓縮包
cd virt-what-1.11 #進入目錄
./configure #按默認設置
make && make install #編譯並安裝
四、使用
virt-what
懶人方法
apt-get install virt-what #debian/ubuntu安裝
yum install virt-what #centos安裝
virt-what #運行
參考來源:http://www.138vps.com/vpsjc/391.html
2. 檢測windows vps是xen,openvz還是kvm真假方法
檢測Windows系統的xen?這個還真沒有聽說,怎麼個檢查法,不過你可以搜搜「vps教程」去景安VPS技術資料站找找看,看有沒有你要的答案,
3. KVM與XEN區別是什麼
一、KVM簡介
KVM是一個全虛擬化的解決方案。可以在x86架構的計算機上實現虛擬化功能。但KVM需要CPU中虛擬化功能的支持,只可在具有虛擬化支持的CPU上運行,即具有VT功能的Intel CPU和具有AMD-V功能的AMD CPU。
Xen與KVM的比較
Xen是Linux下的一個虛擬化解決方案,但由於被Citrix收購後,變成了和紅帽企業版一樣了,賣服務收取費用,Redhat從rhel6.0開始已經從內核中把XEN踢出去了,全心投入開發免費的KVM,雖然市場上老用戶還在用Xen,但相信kvm會逐步佔領大面積的市場,必竟有redhat做為強大支持源。
Xen的實現方法是運行支持Xen功能的kernel,這個kernel是工作在Xen的控制之下,叫做Domain0,使用這個kernel啟動機器後,你可以在這個機器上使用qemu軟體,虛擬出多個系統。Xen的缺點是如果你需要更新Xen的版本,你需要重新編譯整個內核,而且,稍有設置不慎,系統就無法啟動。
相比較,KVM就簡化的多了。它不需要重新編譯內核,也不需要對當前kernel做任何修改,它只是幾個可以動態載入的.ko模塊。它結構更加精簡、代碼量更小。所以,出錯的可能性更小。並且在某些方面,性能比Xen更勝一籌。
二、KVM的使用
現在以Turbolinux 11版本為基礎,介紹KVM的使用方法。
在安裝之前,你需要先確認,你的CPU是否支持虛擬化技術,執行:
# egrep '^flags.*(vmx|svm)' /proc/cpuinfo
如果有輸出返回,則表示你的CPU支持虛擬化技術。
1.KVM的安裝
從官方網站下載KVM源碼包:http://kvm.qumranet.com
我們使用KVM-33版本
# tar zxf kvm-33.tar.gz
# cd kvm-33
# ./configure --prefix=/usr/local/kvm-33
# make
# make install
make install後,kvm的模塊會安裝到/lib/moles/$KernelVersion/extra/目錄下。其他相關文件會安裝到/usr/local/kvm-33/目錄下。
將kvm相關目錄連接到系統目錄中
# ln -s /usr/local/kvm-33/bin/* /usr/bin/
# ln -s /usr/local/kvm-33/lib/* /usr/lib/
(若為x86_64系統,則執行: ln -s /usr/local/kvm-33/lib64/* /usr/lib64/)
# ln -s /usr/local/kvm-33/include/kvmctl.h /usr/include/
# ln -s /usr/local/kvm-33/include/linux/* /usr/include/linux/
# ln -s /usr/local/kvm-33/share/qemu /usr/share/
2.KVM的使用
a.你需要先建立一個映像文件作為虛擬系統的硬碟
# mkdir /images
# cd /images
# /usr/bin/qemu-img -f qcow gtes11.img 20G
b.創建網路配置腳本
# echo 』/sbin/ifconfig $1 10.0.1.1 netmask 255.255.255.0』 > /etc/qemu-ifup
c.載入KVM模塊
Intel CPU使用:
# modprobe kvm-intel
AMD CPU使用:
# modprobe kvm-amd
d.安裝虛擬系統
# /usr/bin/qemu-i386 -m 512 -k en-us -M pc -hda /images/gtes11.img -cdrom /iso/zuma-SP3-rc3-6-\
disc1-20061031.iso -net nic,vlan=1,model=rtl8139,macaddr=00:00:00:00:99:01 -net tap,vlan=1,ifname=tap0,\
script=/etc/qemu-ifup -vnc localhost:1 -boot d
在另一個終端執行:
# vncviewer localhost:1
參數分析:
我們為虛擬系統分配512MB內存。使用gtes11.img作為它的第一塊硬碟,使用Turbolinux10.5的disc1作為它的光碟。
並從光碟引導。它有一塊rtl8139的網卡,MAC地址為:00:00:00:00:99:01,並把這個網卡與主機的tap0介面連接。
tap0介面使用/etc/qemu-ifup腳本進行初始化。虛擬系統的輸出作為一個vnc伺服器,綁定在主機的localhost:1上。
註:
1.若為x86_64系統,則使用/usr/bin/qemu-system-x86_64代替qemu-i386
2.在64位系統上,可以安裝32位和64位的虛擬系統。但在32位系統上,只能安裝32位的虛擬系統。
qemu參數介紹:
-da 映像文件:使用映像文件作為虛擬系統的第一塊硬碟。同樣還可以使用hdb、hdc、hdd指定第2、3、4塊硬碟。
-drom 光碟映像文件:使用光碟映像文件作為虛擬系統的光碟。
-oot [a|c|d|n]:設置虛擬系統的引導順序。a為軟碟機、c為硬碟、d為光碟機、n為網路。
- 內存大小:設置虛擬系統使用的內存大小,單位為MB。
- 語言:設置虛擬系統鍵盤類型。
-et nic[,vlan=n][,macaddr=addr][,model=type]
建立一個虛擬網卡,並把它連接到VLAN的n埠上。
-net tap[,vlan=n][,fd=h][,ifname=name][,script=file]
把主機的TAP網路介面連接到VLAN的n埠上,並使用script指定的腳本進行初始化。
4. LINUX的XEN和KVM到底區別在什麼地方
目前為止,虛擬技術的老大仍然是VMware,雖然被EMC收購,名義上是EMC的老二,但事實上由於技術的牛X,老二不是很擺老大,當然這只是聊天的話,不做為事實依據。
一、KVM簡介
KVM是一個全虛擬化的解決方案。可以在x86架構的計算機上實現虛擬化功能。但KVM需要CPU中虛擬化功能的支持,只可在具有虛擬化支持的CPU上運行,即具有VT功能的Intel CPU和具有AMD-V功能的AMD CPU。
Xen與KVM的比較
Xen是Linux下的一個虛擬化解決方案,但由於被Citrix收購後,變成了和紅帽企業版一樣了,賣服務收取費用,Redhat從rhel6.0開始已經從內核中把XEN踢出去了,全心投入開發免費的KVM,雖然市場上老用戶還在用Xen,但相信kvm會逐步佔領大面積的市場,必竟有redhat做為強大支持源。
Xen的實現方法是運行支持Xen功能的kernel,這個kernel是工作在Xen的控制之下,叫做Domain0,使用這個kernel啟動機器後,你可以在這個機器上使用qemu軟體,虛擬出多個系統。Xen的缺點是如果你需要更新Xen的版本,你需要重新編譯整個內核,而且,稍有設置不慎,系統就無法啟動。
相比較,KVM就簡化的多了。它不需要重新編譯內核,也不需要對當前kernel做任何修改,它只是幾個可以動態載入的.ko模塊。它結構更加精簡、代碼量更小。所以,出錯的可能性更小。並且在某些方面,性能比Xen更勝一籌。
二、KVM的使用
現在以Turbolinux 11版本為基礎,介紹KVM的使用方法。
在安裝之前,你需要先確認,你的CPU是否支持虛擬化技術,執行:
# egrep '^flags.*(vmx|svm)' /proc/cpuinfo
如果有輸出返回,則表示你的CPU支持虛擬化技術。
1.KVM的安裝
從官方網站下載KVM源碼包:http://kvm.qumranet.com
我們使用KVM-33版本
# tar zxf kvm-33.tar.gz
# cd kvm-33
# ./configure --prefix=/usr/local/kvm-33
# make
# make install
make install後,kvm的模塊會安裝到/lib/moles/$KernelVersion/extra/目錄下。其他相關文件會安裝到/usr/local/kvm-33/目錄下。
將kvm相關目錄連接到系統目錄中
# ln -s /usr/local/kvm-33/bin/* /usr/bin/
# ln -s /usr/local/kvm-33/lib/* /usr/lib/
(若為x86_64系統,則執行: ln -s /usr/local/kvm-33/lib64/* /usr/lib64/)
# ln -s /usr/local/kvm-33/include/kvmctl.h /usr/include/
# ln -s /usr/local/kvm-33/include/linux/* /usr/include/linux/
# ln -s /usr/local/kvm-33/share/qemu /usr/share/
2.KVM的使用
a.你需要先建立一個映像文件作為虛擬系統的硬碟
# mkdir /images
# cd /images
# /usr/bin/qemu-img -f qcow gtes11.img 20G
b.創建網路配置腳本
# echo 』/sbin/ifconfig $1 10.0.1.1 netmask 255.255.255.0』 > /etc/qemu-ifup
c.載入KVM模塊
Intel CPU使用:
# modprobe kvm-intel
AMD CPU使用:
# modprobe kvm-amd
d.安裝虛擬系統
# /usr/bin/qemu-i386 -m 512 -k en-us -M pc -hda /images/gtes11.img -cdrom /iso/zuma-SP3-rc3-6-\
disc1-20061031.iso -net nic,vlan=1,model=rtl8139,macaddr=00:00:00:00:99:01 -net tap,vlan=1,ifname=tap0,\
script=/etc/qemu-ifup -vnc localhost:1 -boot d
在另一個終端執行:
# vncviewer localhost:1
參數分析:
我們為虛擬系統分配512MB內存。使用gtes11.img作為它的第一塊硬碟,使用Turbolinux10.5的disc1作為它的光碟。
並從光碟引導。它有一塊rtl8139的網卡,MAC地址為:00:00:00:00:99:01,並把這個網卡與主機的tap0介面連接。
tap0介面使用/etc/qemu-ifup腳本進行初始化。虛擬系統的輸出作為一個vnc伺服器,綁定在主機的localhost:1上。
註:
1.若為x86_64系統,則使用/usr/bin/qemu-system-x86_64代替qemu-i386
2.在64位系統上,可以安裝32位和64位的虛擬系統。但在32位系統上,只能安裝32位的虛擬系統。
qemu參數介紹:
-da 映像文件:使用映像文件作為虛擬系統的第一塊硬碟。同樣還可以使用hdb、hdc、hdd指定第2、3、4塊硬碟。
-drom 光碟映像文件:使用光碟映像文件作為虛擬系統的光碟。
-oot [a|c|d|n]:設置虛擬系統的引導順序。a為軟碟機、c為硬碟、d為光碟機、n為網路。
- 內存大小:設置虛擬系統使用的內存大小,單位為MB。
- 語言:設置虛擬系統鍵盤類型。
-et nic[,vlan=n][,macaddr=addr][,model=type]
建立一個虛擬網卡,並把它連接到VLAN的n埠上。
-net tap[,vlan=n][,fd=h][,ifname=name][,script=file]
把主機的TAP網路介面連接到VLAN的n埠上,並使用script指定的腳本進行初始化。
5. 如何確認虛擬機是xen kvm vmware
使用dmesg查看
騰訊雲的主機,為kvm虛擬化平台,ip段為182.254.0.0/16
#dmesg | egrep "kvm|xen|vmware" kvm-clock: Using msrs 4b564d01 and 4b564d00 kvm-clock: cpu 0, msr 0:1c39e41, boot clock kvm-clock: cpu 0, msr 0:28216e41, primary cpu clock [ 0.002999] kvm-clock: cpu 1, msr 0:28296e41, secondary cpu clock [ 0.002999] kvm-clock: cpu 2, msr 0:28316e41, secondary cpu clock [ 0.002999] kvm-clock: cpu 3, msr 0:28396e41, secondary cpu clock [ 0.211989] Switching to clocksource kvm-clock
阿里雲的主機,為xen的虛擬化平台,ip段為120.26.0.0/16
#dmesg | egrep "kvm|xen|vmware" Switching to clocksource xen xen-platform-pci 0000:00:03.0: PCI INT A -> GSI 28 (level, low) -> IRQ 28
公司提供的內網機器,使用的是VMware產品:
# dmesg | egrep -i "kvm|xen|vmware" DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 ACPI: SRAT 00000000bfef045c 000B8 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) ACPI: HPET 00000000bfef0424 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 VMware PVSCSI driver - version 1.0.1.0-k scsi2 : VMware PVSCSI storage adapter rev 2, req/cmp/msg rings: 8/8/1 pages, cmd_per_lun=64 vmw_pvscsi 0000:03:00.0: VMware PVSCSI rev 2 host #2 scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 VMware vmxnet3 virtual NIC driver - version 1.1.18.0-k-NAPI
6. kvm和Xen有何區別
kvm可使用通常的linux調度器和內存管理. 這意味著kvm更小更易使用。另外, Xen是一個外部的hypervisor程序(虛擬機管理程序);它能夠控制虛擬機和給多個客戶機分配資源.Xen支持全虛擬化和半虛擬化(修改過的客戶機能有更好的性能). kvm當前不支持半虛擬化。
7. 如何判斷自己的VPS是OpenVZ的還是Xen的
1、通過系統上的相關目錄或文件判斷
執行:ls /proc/ ,一般Xen的VPS,/proc目錄下面會有xen的目錄,openvz的會有vz目錄。
2、執行:free -m 看內存,openvz的沒有swap,當然也有xen的沒有swap,但是xen的是可以加的,openvz不行。
3、執行:uname -a 有些xen的VPS裡面會顯示有xen。
4、執行:ifconfig 查看網卡,openvz的一般都是venet0:* ,xen的一般都是eth*。
5、通過VPS控制面板查看,像SolusVM、vePortal控制面板上都顯示虛擬技術。
6、使用專門的軟體:virt-what ,virt-what是一個判斷當前環境所使用的虛擬技術的腳本,常見的虛擬技術基本上都能正常識別出來。
可以執行如下命令安裝(需要安裝好gcc、make):
wget http://people.redhat.com/~rjones/virt-what/files/virt-what-1.12.tar.gz
tar zxvf virt-what-1.12.tar.gz
cd virt-what-1.12/
./configure
make && make install
再運行 virt-what ,腳本就會判斷出當前環境所使用的虛擬技術,VPS偵探用手頭上的VPS測試成功率還是比較高的。
8. 一鍵檢測VPS是Openvz還是KVM還是Xen
1、通過系統上的相關目錄或文件判斷
執行:ls /proc/ ,一般Xen的VPS,/proc目錄下面會有xen的目錄,openvz的會有vz目錄。
2、執行:free -m 看內存,openvz的沒有swap,當然也有xen的沒有swap,但是xen的是可以加的,openvz不行。
3、執行:uname -a 有些xen的VPS裡面會顯示有xen。
4、執行:ifconfig 查看網卡,openvz的一般都是venet0:* ,xen的一般都是eth*。
5、通過VPS控制面板查看,像SolusVM、vePortal控制面板上都顯示虛擬技術。
6、使用專門的軟體:virt-what ,virt-what是一個判斷當前環境所使用的虛擬技術的腳本,常見的虛擬技術基本上都能正常識別出來。
9. 虛擬化技術KVM和XEN的區別
虛擬化類型
全虛擬化(Full Virtualization)
全虛擬化也成為原始虛擬化技術,該模型使用虛擬機協調guest操作系統和原始硬體,VMM在guest操作系統和裸硬體之間用於工作協調,一些受保護指令必須由Hypervisor(虛擬機管理程序)來捕獲處理。
圖1 全虛擬化模型
全虛擬化的運行速度要快於硬體模擬,但是性能方面不如裸機,因為Hypervisor需要佔用一些資源
半虛擬化(Para Virtualization)
半虛擬化是另一種類似於全虛擬化的技術,它使用Hypervisor分享存取底層的硬體,但是它的guest操作系統集成了虛擬化方面的代碼。該方法無需重新編譯或引起陷阱,因為操作系統自身能夠與虛擬進程進行很好的協作。
圖2 半虛擬化模型
半虛擬化需要guest操作系統做一些修改,使guest操作系統意識到自己是處於虛擬化環境的,但是半虛擬化提供了與原操作系統相近的性能。
虛擬化技術
KVM(Kernel-based Virtual Machine)基於內核的虛擬機
KVM是集成到Linux內核的Hypervisor,是X86架構且硬體支持虛擬化技術(Intel VT或AMD-V)的Linux的全虛擬化解決方案。它是Linux的一個很小的模塊,利用Linux做大量的事,如任務調度、內存管理與硬體設備交互等。
圖3 KVM虛擬化平台架構
Xen
Xen是第一類運行再裸機上的虛擬化管理程序(Hypervisor)。它支持全虛擬化和半虛擬化,Xen支持hypervisor和虛擬機互相通
訊,而且提供在所有Linux版本上的免費產品,包括Red Hat Enterprise Linux和SUSE Linux Enterprise
Server。Xen最重要的優勢在於半虛擬化,此外未經修改的操作系統也可以直接在xen上運行(如Windows),能讓虛擬機有效運行而不需要仿
真,因此虛擬機能感知到hypervisor,而不需要模擬虛擬硬體,從而能實現高性能。
圖4 Xen虛擬化平台架構
QEMU
QEMU是一套由Fabrice Bellard所編寫的模擬處理器的自由軟體。它與Bochs,PearPC近似,但其具有某些後兩者所不具備的特性,如高速度及跨平台的特性。經由kqemu這個開源的加速器,QEMU能模擬至接近真實電腦的速度。
KVM和QEMU的關系
准確來說,KVM是Linux
kernel的一個模塊。可以用命令modprobe去載入KVM模塊。載入了模塊後,才能進一步通過其他工具創建虛擬機。但僅有KVM模塊是
遠遠不夠的,因為用戶無法直接控制內核模塊去作事情,你還必須有一個運行在用戶空間的工具才行。這個用戶空間的工具,kvm開發者選擇了已經成型的開源虛
擬化軟體
QEMU。說起來QEMU也是一個虛擬化軟體。它的特點是可虛擬不同的CPU。比如說在x86的CPU上可虛擬一個Power的CPU,並可利用它編譯出
可運行在Power上的程序。KVM使用了QEMU的一部分,並稍加改造,就成了可控制KVM的用戶空間工具了。所以你會看到,官方提供的KVM下載有兩
大部分(qemu和kvm)三個文件(KVM模塊、QEMU工具以及二者的合集)。也就是說,你可以只升級KVM模塊,也可以只升級QEMU工具。這就是
KVM和QEMU 的關系。
圖5 KVM和QEMU關系
10. 如何選擇Xen、KVM和其他免費Hypervisor
兩者都是Linux hypervisor,但是它們進行虛擬化的方式卻不盡相同。 前者是安裝在X86架構電腦上的一個虛擬機(VM)監控器。通過半虛擬化技術,Xen允許hypervisor和虛擬機互相進行通訊。現在,Xen 仍然 包含在許多重要的Linux發行版本當中,比如Oracle的Unbreakable和SUSE Linux企業版伺服器,但是這項技術已經落後於其他系統管理工具了,比如基於內核的虛擬機(KVM)。 Xen包含了幾個內置的管理工具,可以支持多種主機和客戶端環境,也包括硬體架構,使得其比KVM更加成熟。而後者,是嵌入在Linux內核當中的,一些用戶認為其可以更加輕松地管理虛擬機和Linux更新。 紅帽公司是Linux市場中領先的供應商,其極力倡導使用KVM。依據oVirt標准,紅帽已經圍繞KVM開發了一整套管理平台。 除了Xen和KVM,你還可以考慮使用Linux Containers(LXC)作為免費的hypervisor。通過在主機內核之上運行多個虛擬機容器,這款產品允許你在一個Linux內核之上運行多 個Linux實例。LXC可以結余資源並且減少IT部門的開銷,但是它並不像hypervisor那樣靈活。