kvm虛擬化安裝與部署(2)

1、虛擬化VT開啓確認

  KVM 自己也有一些弱點,那就是相比裸金屬虛擬化架構的 Xen 、 VMware ESX 和 HyperV , KVM 是運行在 Linux 內核之上的寄居式虛擬化架構,會消耗比較多的計算資源;不過針對這一點, Intel 、 AMD 已經在處理器設計上有專門的VT-x 和 AMD-V 擴展,這種特性在每次硬件更新的時候也會更新,每每每次更新後都對虛擬化性能和速度上有明顯的提高,因此長遠來看,也不是什麼大問題。
  KVM 的虛擬化須要硬件支持(須要處理器支持虛擬化:如 Intel 廠商的 Intel-VT ( vmx )技術&&AMD 廠商的 AMD-V ( svm )技術。是基於硬件的徹底虛擬化。而 Xen 早期則是基於軟件模擬的半虛擬化( Para-Virtualization ),新版本則是基於硬件支持的徹底虛擬化。但 Xen 自己有本身的進程調度器,存儲管理模塊等,因此代碼較爲龐大。
  你當前的 CPU 是否支持 VT 技術?當不肯定你當前 CPU 是否支持 VT 技術時
  1. 能夠在 windows 下使用 cpu-z 軟件來進行測試
  2. 能夠在 Linux 下查看 CPU 的相信信息來肯定
  CPU 虛擬化給咱們帶來了哪些好處?
  CPU 的虛擬化技術能夠將單 CPU 模擬多 CPU 並行,容許一個平臺同時運行多個操做系統,而且應用程序均可以在相互獨立的空間內運行而互不影響,從而顯著提升計算機的工做效率。
  虛擬化技術與多任務超線程的技術的區別?
  虛擬化技術與多任務以及超線程技術是徹底不一樣的。多任務是指在一個操做系統中多個程序同時並行運行,而在虛擬化技術中,則能夠同時運行多個操做系統,並且每個操做系統中都有多個程序運行,每個操做系統都運行在一個虛擬的 CPU 或者是虛擬主機上;而超線程技術只是單 CPU 模擬雙 CPU 來平衡程序運行性能,這兩個模擬出來的 CPU 是不能分離的,只能協同工做
  安裝kvm前準備工做
  1. 肯定處理器有 VT
  命令行: grep vmx /proc/cpuinfo (INTEL 芯片 )
      grep svm /proc/cpuinfo (AMD 芯片 )
      cat /proc/cpuinfo | grep -e vmx -e nx -e svm
  不知道芯片的生產廠商則輸入:egrep '(vmx|svm)' /proc/cpuinfo
  若是 flags:裏有 vmx 或者 svm 就說明支持 VT ;若是沒有任何的輸出,說明你的 cpu 不支持,將沒法成功安裝 KVM 虛擬機。
  2. 當你硬件自己支持虛擬化,但查詢相應參數無果時,請檢查 BIOS 設定,確認你的 BIOS 中開啓了硬件支持虛擬化的功能!
  將以下選項設爲Enabled
  Intel(R) Virtualization Tech [Enabled]python

2、KVM虛擬化安裝

一、安裝 KVM 要求
(1)64bitCPU( 支持虛擬化 VT-x or AMD-V)
(2)2G 以上空閒內存,確認內存大小
  grep -e MemTotal /proc/meminfo
  free -m
(3)6GB 空閒存儲空間
二、安裝 KVM 並檢測
(1)YUM 安裝 KVMlinux

yum -y install kvm virt-manager libvirt libvirt-python python-virtinst libvirt-client qemu-kvm qemu-img

(2)YUM 安裝 KVM( 簡單版 )vim

yum install kvm virt-manager libvirt* -y

(3)若是沒法連入互聯網 , 可自行創建源來完成安裝並避免各類關聯。創建一個本地的 YUM 源:windows

< 掛載 RHEL 光盤 > #mount /dev/cdrom /mnt/cdrom < 創建 YUM 本地源 > #cd /etc/yum.repos.d #vim kvms.repo kvms.repo裏的內容 [kvms] name=Red Hat baseurl=file:///mnt/cdrom/ enabled=1 gpgcheck=0

也能夠上傳一個鏡像文件至宿主機上,進行僞文件系統掛載:服務器

mount -o loop -t iso9660 /var/lib/libvirt/images/CentOS-7-x86_64-DVD-1810.iso /mnt

(4)kvm虛擬化所需組件介紹
  kvm:核心套件
  virt-manager:圖形化 KVM 管理軟件
  libvirt:提供虛擬機與宿主相互通訊的機制
  libvirt-python:容許使用 libvirt API
  python-virtinst:CLI 下建立 KVM 的工具
  libvirt-client:提供 client 訪問 kvm 服務器的機制 ,幷包含 virsh 命令進行 管理和控制VMs
  qemu-kvm:提供用戶級 KVM 環境
  qemu-img:VMs 磁盤管理
三、啓動 KVM
  (1)modprobe kvm    加載 kvm 模塊
  (2)lsmod | grep kvm   查看加載成功
  (3)systemctl start libvirtd  啓動kvm
  (4)systemctl status libvirtd  查看kvm狀態
四、啓動並檢測 KVM
  virsh list --all
網絡

  如出現
  Id Name State
  -------------------------------------------------------
  則安裝成功架構

  virsh list  表示列出已開機的虛擬機
五、在 GUI 模式下安裝虛擬機,啓動虛擬系統管理器工具

3、KVM網絡模式設置

一、NAT ( 默認上網 ):虛擬機利用 host 機器的 ip 進行上網。對外顯示一個 ip;
  virbr0 是 KVM 默認建立的一個 Bridge,其做用是爲鏈接其上的虛機網卡提供 NAT 訪問外網的功能,默認ip爲192.168.122.1oop


二、自帶的Bridge:將虛擬機橋接到 host 機器的網卡上 ,vm和 host 機器都經過 bridge 上網 . 對外有同網段的不通 ip,此種方式host卻不能和vm聯通
三、Linux Bridge:基本原理就是建立一個橋接接口 br0 ,在物理網卡和虛擬網絡接口之間傳遞數據。此種方式host也能夠和vm連通性能


  Linux Bridge 是 Linux 上用來作 TCP/IP 二層協議交換的設備,其功能你們能夠簡單的理解爲是一個二層交換機或者 Hub。多個網絡設備能夠鏈接到同一個 Linux Bridge,當某個設備收到數據包時,Linux Bridge 會將數據轉發給其餘設備
(1)添加 br0 網卡的配置文件

cd /etc/sysconfig/network-scripts cp ifcfg-ens33 ifcfg-br0

(2)修改網卡配置文件

vim ifcfg-ens33
TYPE=Ethernet NAME=ens33 DEVICE=ens33 ONBOOT=yes BRIDGE=br0
vim ifcfg-br0
TYPE=Bridge NAME=br0 DEVICE=br0 ONBOOT=yes BOOTPROTO=none IPADDR=192.168.11.12 PREFIX=24(NETMASK=255.255.255.0) GATEWAY=192.168.11.2 DNS=192.168.11.2

(3)重啓host:reboot
(4)檢查
  # ethtool br0
  # brctl show
  # ifconfig br0

  #lsblk 命令用來查看block設備的信息

4、virt-manager建立虛擬機

(1)首先經過命令 virt-manager 啓動圖形界面:
  點下面的圖標建立虛機

(2)給虛機命名爲 kvm1,這裏選擇從哪裏啓動虛機。若是是安裝新的 OS,能夠選擇第一項。若是已經有安裝好的鏡像文件,選最後一項(以下圖)。


(3)接下來須要告訴 virt-manager 鏡像的位置,點擊 「Browser」


(4)須要在系統中上傳一個鏡像文件到屬主機上,放到 /var/lib/libvirt/images/ 目錄下,這是 KVM 默認查找鏡像文件的地方。


(5)爲虛擬機分配 CPU、內存和磁盤


(6)爲虛擬機命名,並在安裝前配置硬件參數,點擊「Finish」。網絡選擇三節課建立的br0網橋,點擊綠色「對勾」開始安裝

(7)控制檯彈出以下圖,安裝linux安裝步驟安裝便可:


virt-manager 能夠對虛機進行各類管理操做,界面直觀友好,很容易上手。 同時咱們也能夠用命令 virsh 管理虛機,好比查看宿主機上的虛機:

相關文章
相關標籤/搜索