<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
美國環境保護EPA報告中曾經統計過一組統計資料:EPA研究伺服器和資料中心得能源效率時發現,實際上伺服器只有5%得時間時在工作的,其他時間一直處於休眠狀態,這樣伺服器的利用率就會很低,而且這些伺服器一直處於開機狀態,消耗的能源自然就很多
通過虛擬化技術將一臺計算機虛擬為多臺邏輯計算機,在一臺計算機上同時執行多個邏輯計算機,同時每個邏輯計算機可執行不同的作業系統,應用程式都可以在相互獨立的空間內執行而互相不影響,從而提高計算機的工作效率
雛形:
1961年,IBM709機器實現了分時系統,將CPU佔用切分為多個極短的時間片(1/100sec)每一個時間片執行不同的工作,通過對這些時間片進行輪詢
從而將一個CPU偽裝成多個CPU
1972年, IBM正式將system370機的分時系統命名為虛擬機器器
1990年, IBM推出的system390機支援邏輯分割區(將一個CPU分為多份,相互獨立,也就是邏輯分割)
Xen 2003年問世,是一個外部的hypervisor程式(虛擬機器器管理程式),能夠控制虛擬機器器和給多個客戶機分配資源
KVM:2007年問世,現已內建在kernel核心中的
Xen 支援的虛擬化技術:全虛擬化,半虛擬化
KVM:支援的虛擬化技術:全虛擬化
1)全虛擬化:將物理硬體資源全部通過軟體的方式抽象化,最後進行呼叫
使用的方法:使用hypervisor(VMM)軟體,其原理是在底層硬體和伺服器之間建立一個抽象層,而基於核心的虛擬機器器是面向Linux系統的開源產品hypervisor(VMM)可以捕捉CPU的指令,為指令存取硬體控制器和外設充當中介。
2)半虛擬化:需要修改作業系統
3)直通:直接使用物理硬體資源(需要支援,還不完善)
優勢:
劣勢:
KVM 是基於虛擬化擴充套件(Intel VT 或者 AMD-V)的 X86 硬體的開源的 Linux 原生的全虛擬化解決方案。KVM 中,虛擬機器器被實現為常規的 Linux 程序,由標準 Linux 排程程式進行排程;虛機的每個虛擬 CPU 被實現為一個常規的 Linux 執行緒。這使得 KMV 能夠使用 Linux 核心的已有功能。
Kernel-based Virtual Machine的簡稱,是一個開源的系統虛擬化模組,是RHEL 5.4推出的最新虛擬化技術,目前紅帽只支援在64位元的RHEL l5.4以上執行KVM,同時硬體需要支援VT技術,必須在64位元bit環境中使用KVM。自Linux 2.6.20之後整合在Linux的各個主要發行版本中。它使用Linux自身的排程器進行管理,所以相對於Xen,其核心原始碼很少。KVM已成為學術界的主流VMM之一。
KVM的虛擬化需要硬體支援(如Intel VT技術或者AMD V技術)。是基於硬體的完全虛擬化。而Xen早期則是基於軟體模擬的Para-Virtualization,新版本則是基於硬體支援的完全虛擬化。但Xen本身有自己的程序排程器,儲存管理模組等,所以程式碼較為龐大。廣為流傳的商業系統虛擬化軟體VMware ESX系列是基於軟體模擬的Full-Virtualization。
通過一下命令可以檢視系統是否支援VT
cat /proc/cpuinfo | grep ‘vmx'
KVM的前身是QEMU,08年被紅帽收購併獲得一項技術hypervisor,不過RedHat的KVM被認為是將成為未來Linux hypervisor的主流。
客戶機在作業系統中執行的模式,客戶機分為使用者模式和Linux核心模式,作用如下:
為使用者提供虛擬機器器管理的使用者空間工具以及代表使用者執行I/O,Qemu工作在此模式下(Qemu的主要功能)
模擬CPU、記憶體,實現客戶模式切換,處理從客戶模式的推出,KVM即執行在此模式下
使用者模式的 Qemu 利用介面 libkvm 通過 ioctl 系統呼叫進入核心模式。 KVM驅動為虛擬機器器建立虛擬 CPU 和虛擬記憶體,然後執行 VMLAU·NCH 指令進入客戶模式,裝載 Guest OS 並執行。Guest OS 執行過程中如果發生異常,則暫停Guest OS的執行並儲存當前狀態同時退出到核心模式來處理這些異常。
核心模式處理這些異常時如果不需要 I/O則處理完成後重新進入客戶模式。如果需要 I/O 則進入到使用者模式, 則由 Qemu 來處理 I/O,處理完成後進入核心模式,再進入客戶模式
6、KVM的優勢
1)KVM與VMware的優勢
ESX的底層是VMkernel + linux,VMkernel啟動後開始接管對硬體管理,然後啟動第一個linux虛擬機器器,協助VMkernel一起來管理和排程硬體資源。
KVM是直接將linux kernel變成hypervisor,只需要從標準linux核心啟動即可,linux kernel擁有的特性可以全部利用上。KVM架構上的優勢使得它非常簡潔,在開發出來僅三個多月就被合併到了標準核心。
2)KVM與Xen的優勢
Kvm和xen的最大區別就是架構,KVM是直接構建在linux kernel之上,把linux kernel變成hypervisor,是利用kernel已有的的功能基礎上開發KVM所不具備的功能。
Xen的hypervisor是自己從頭開始構建的,對硬體資源的排程管理,虛擬機器器的管理,還有很多介面與linux kernel不相容,然後對於xen,hypervisor需要通過Domain0對虛擬機器器提供硬體存取驅動支援。
雖然說現在3.0的kernel中結合了xen,但是大部分linux OS的核心還是2.6,即便是一些新的發行版OS,也還是2.6的核心,新核心要單獨去升級。
CPU:雙核雙執行緒-CPU虛擬化開啟
記憶體:8G
硬碟:300G
雙網路卡:單網路卡
作業系統:Centos 7.4(1708)
1)修改主機名
[root@kvm ~]# hostnamectl set-hostname kvm [root@kvm ~]# bash
2)將映象光碟設為自動/永久掛載
[root@kvm ~]# vim /etc/fstab /dev/cdrom /mnt iso9660 defaults 0 0 [root@kvm ~]# mount -a [root@kvm ~]# df -hT /dev/sr0 iso9660 4.3G 4.3G 0 100% /mnt
3)環境優化
#是否反解DNS,設定為NO可以讓使用者端連線伺服器更快
[root@kvm ~]# vim /etc/ssh/sshd_config UseDNS no #取消DNS註釋,改為NO
4)製作本地YUM倉庫
[root@kvm ~]# mkdir /abc [root@kvm ~]# cd /etc/yum.repos.d/ [root@kvm yum.repos.d]# ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo [root@kvm yum.repos.d]# mkdir bak [root@kvm yum.repos.d]# mv CentOS-* bak [root@kvm yum.repos.d]# ls bak [root@kvm yum.repos.d]# vim local.repo [local] name=kvm baseurl=file:///abc gpgcheck=0 enabled=1 [root@kvm yum.repos.d]# yum clean all [root@kvm yum.repos.d]# yum repolist
5)關閉防火牆、核心防護
[root@kvm yum.repos.d]# systemctl stop firewalld [root@kvm yum.repos.d]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@kvm yum.repos.d]# setenforce 0
1) 安裝KVM基本元件
# 安裝 GNOME 桌面環境 如果裝了圖形介面可以不需要裝 yum groupinstall -y "GNOME Desktop" # KVM 模組 yum -y install qemu-kvm # 安裝KVM 偵錯工具,可不安裝 yum -y install qemu-kvm-tools # 構建虛擬機器器的命令列工具 yum -y install virt-install # qemu 元件,建立磁碟、啟動虛擬機器器等 yum -y install qemu-img # 網路支援工具 yum -y install bridge-utils # 虛擬機器器管理工具 yum -y install libvirt # 圖形介面管理虛擬機器器 yum -y install virt-manager
2)檢測CPU是否支援虛擬化
[root@kvm ~]# cat /proc/cpuinfo | grep vmx flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilitie
3)檢視KVM模組是否已安裝
Lsmod:顯示已載入的系統模組
[root@kvm ~]# lsmod | grep kvm kvm_intel 183621 0 kvm 586948 1 kvm_intel irqbypass 13503 1 kvm
4) 設定開啟啟動介面的顯示模式
[root@kvm ~]# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
1)KVM網路的兩種模式:
① NAT: 預設設定,封包由 NAT 方式通過主機的介面進行
傳送,可以存取外網,但是無法從外部存取虛擬機器器網路
**② 網橋:**這種模式允許虛擬機器器像一臺獨立的主機一樣擁有網路,外部的機器可以直接存取到虛擬機器器內部,但需要網路卡支援(一般有線網路卡都支援)
使用Bridge網橋模式進行部署
[root@bdqn ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=noIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33UUID=aac61931-47a6-40e5-9511-68adf20e97c5DEVICE=ens33ONBOOT=yes#IPADDR=192.168.100.46#PREFIX=24#GATEWAY=192.168.100.1BRIDGE=br0 #刪除原先地址,設定為網橋模式,關聯br0網路卡
2)建立、編輯橋接網路卡
[root@bdqn ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0TYPE=BridgeBOOTPROTO=staticDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=br0DEVICE=br0ONBOOT=yesIPADDR=192.168.226.200NETMASK=255.255.255.0GATEWAY=192.168.226.2
1)建立KVM儲存和映象資料的目錄、上傳centos7映象
[root@kvm network-scripts]# mkdir -p /data_kvm/iso[root@kvm network-scripts]# mkdir -p /data/_kvm/store[root@kvm network-scripts]# mkdir /abc[root@kvm network-scripts]# mount.cifs //192.168.226.1/LAMP-C7 /mntPassword for root@//192.168.226.1/LAMP-C7: [root@kvm network-scripts]# cd /abc[root@kvm abc]# cp -p CentOS-7-x86_64-DVD-1806.iso /data_kvm/iso/#檢視映象[root@kvm abc]# ll /data_kvm/iso/總用量 4481024-rwxr-xr-x. 1 root root 4588568576 2月 20 2019 CentOS-7-x86_64-DVD-1810.iso
2)使用虛擬系統管理器管理虛擬機器器
[root@kvm kvmdata]# virt-manager
3)操作步驟
① 第一步:建立儲存池
一樣的操作建立iso儲存池
② 在store儲存池中建立儲存卷
③ 建立虛擬機器器
啟用最小化安裝,節省空間
到此這篇關於KVM 介紹的文章就介紹到這了,更多相關KVM 介紹內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45