1. 程式人生 > >linux虛擬化概述

linux虛擬化概述

方案 虛擬化技術 network 服務器 廠商 vsp window ifcfg lin

虛擬化
硬件虛擬化:
一臺物理機虛擬出多臺邏輯上的計算機
cpu,內存可分配給多個虛擬機
軟件虛擬化:
一個LAMP平臺支撐多個網站
桌面虛擬化
......

虛擬機:通過軟件平臺模擬出的計算機
對最終用戶來說,感受不到與物理計算機的差異
根據虛擬化程度不同,所需的修改也不同

虛擬化實現程度:
完全虛擬化,Full Virtualization
由平臺軟件來模擬實現,客戶機的操作系統代碼幾乎不做修改
版虛擬化,Para Virtualization
平臺軟件只提供最核心的虛擬機功能,需要修改客戶機的系統內核,兼容性較差
KVM,完全虛擬化------支持各種OS
XEN,部分虛擬化------不支持windows

硬件輔助虛擬化:
將實現虛擬化技術的部分功能硬件化,主要指intel/amd等cpu支持

常見的虛擬化軟件
主要廠商及產品
—————————————————————————————
系列 pc/服務版代表 |
vmware vsphere平臺 vmware workstartion |
microsoft virtualpc hyper-v |
redhat kvm ,rhev平臺 |
citrix xen |
oracle oracle vm virtualbox |
—————————————————————————————

KVM虛擬化
基於內核的完全虛擬化解決方案
紅帽5.4版本開始推出,可替代早先的xen產品
需要intel vt或amd v處理器技術支持
支持linux/unix/windows客戶機

host os與guest os
host os———》物理機/宿主機
運行kvm虛擬化平臺的物理機的操作系統
guest os——》虛擬機。客戶機
虛擬機上運行的操作系統

虛擬網絡類型
橋接模式:虛擬機能夠與真實機互相通信(相同網段)
隔離模式:虛擬機不能夠與真實機互相通信(不同網段)

網絡訪問模式(隔離的虛擬機與真實網絡通信)
nat模式:kvm服務器作為網關,連接的虛擬機組成一個內網,
這些虛擬機共用kvm服務器的外網地址去訪問外部真機
路由模式:kvm服務器作為路由器,手動設置路由記錄

————————————————————————————————————————-
搭建KVM平臺
安裝虛擬化相關包組
Virtualization,Virtualization Client,
Virtualization Tools,Virtualization Platform
啟動libvirtd服務,並設為開機自啟
[[email protected] ~]# yum -y groupinstall Virtualization,Virtualization Client,Virtualization Tools,Virtualization Platform
(支持中文安裝[[email protected] ~]# yum -y groupinstall 虛擬化 虛擬化客戶端 虛擬化工具 虛擬化平臺)
[[email protected] ~]# service libvirtd restart
[[email protected] ~]# chkconfig libvirtd on
[[email protected] ~]# ifconfig virbr0(會多出一個網卡)
(常見錯誤:libvirtd服務無法啟動。原因:需要調用dnsmasq服務可能與dhcp,dbs沖突,停用沖突的服務dhcpd,named)

kvm服務器提供的虛擬網絡
隔離+nat:virbr0
橋接:br0
(註意停用NetworkManager)
建立虛擬接口br0的配置
把真實接口eth0加入到橋接
[[email protected] ~]# cd /etc/sysconfig/network-scripts
[[email protected] network-scripts]# cp ifcfg-eth0 ifcfg-br0(復制網卡配置到虛擬接口)
[[email protected] network-scripts]# vim ifcfg-br0
DEVICE=br0(網卡名)
TYPE=Bridge(橋接)
[[email protected] network-scripts]# vim ifcfg-eth0(把真實接口eth0加入到橋接)
BRIDGE=br0(添加)
[[email protected] network-scripts]# service network restart(重啟服務,測試橋接結果)
正在關閉接口 eth0: bridge br0 does not exist!
[確定]
正在關閉接口 eth1: [確定]
正在關閉接口 eth2: [確定]
正在關閉接口 eth3: [確定]
關閉環回接口: [確定]
彈出環回接口: [確定]
彈出界面 eth0: [確定]
彈出界面 eth1: [確定]
彈出界面 eth2: [確定]
彈出界面 eth3: [確定]
彈出界面 br0: Determining if ip address 192.168.4.205 is already in use for device br0...

——————————————————————————————————————————————————————

kvm虛擬機的硬件設備
配置文件(cpu,內存,顯卡...)
虛擬磁盤文件
[[email protected] /]# mkdir /opt/images(創建虛擬機磁盤)
[[email protected] ~]# dd if=/dev/zero of=/opt/images/hydra1.img bs=10M count=1000 (創建10G的虛擬機的磁盤)
記錄了1000+0 的讀入
記錄了1000+0 的寫出
10485760000字節(10 GB)已復制,303.181 秒,34.6 MB/秒

ssh免密碼驗證的實現
[[email protected] 桌面]# ssh-keygen(創建一對密鑰)
[[email protected] .ssh]# ls
authorized_keys id_rsa id_rsa.pub known_hosts
[[email protected] .ssh]# ssh-copy-id [email protected](把公鑰部署到遠程用戶的家目錄)

一個私鑰——》多份公鑰(把公鑰分別發送到不同的主機上)
多分私鑰——》一個公鑰(不常見)

————————————————————————————————————————————————

linux虛擬化概述