1.什麼是虛拟化(Virtualization)
虛拟化,是指通過虛拟化技術将一台計算機虛拟為多台邏輯計算機。在一台計算機上同時運作多個邏輯計算機,每個邏輯計算機可運作不同的作業系統,并且應用程式都可以在互相獨立的空間内運作而互不影響,進而顯著提高計算機的工作效率。
虛拟化使用軟體的方法重新定義劃分IT資源,可以實作IT資源的動态配置設定、靈活排程、跨域共享,提高IT資源使用率,使IT資源能夠真正成為社會基礎設施,服務于各行各業中靈活多變的應用需求。
2.傳統運作模式
- 一台計算機隻能夠運作一種作業系統

3.虛拟機(Virtual Machine)運作架構
3-1.原生架構(生産環境)
- 虛拟機軟體直接安裝在計算機硬體上
- 虛拟機本身就是一個作業系統
- 在這個虛拟機中可以同時運作多個作業系統
3-2.寄居架構(實驗環境、測試環境)
- 虛拟機作為應用軟體安裝在作業系統上
- 可以在此應用軟體上安裝多個作業系統
- 直接安裝在硬體上的系統為宿主
4.虛拟機的平台産品
4-1.微軟
- Hyper-V(寄居架構)
4-2.Vmware
- VMware Workstation(寄居架構)
- VMware vSphere(原生架構)
5.擴充
5-1.KVM kernel-based Virtual Machine
KVM是一個開源的系統虛拟化子產品,自Linux 2.6.0之後內建在Linux的各個主要發行版本中。它使用Linux自身的排程器進行管理,是以相對于Xen,其核心源碼很少。KVM目前已成為學術界的主流KVM之一。
KVM的虛拟化需要硬體支援(如Intel VT技術或者AMD V技術)。是基于硬體的完全虛拟化。而Xen早期則是基于軟體模拟的Para-Virtualization,新版本則是基于硬體支援的完全虛拟化。但Xen本身有自己的程序排程其,存儲管理子產品等,是以代碼較為龐大。廣為流傳的商業系統虛拟化軟體VMware ESX系列是基于軟體模拟的Full-Virtualization。
5.2-Docker開源的應用容器引擎
https://www.sqlsec.com/2019/10/docker2.html
Docker是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然後釋出到任何流行的Linux或Windows上,也可以實作虛拟化。容器是完全使用沙箱機制,互相之間不會有任何接口。
一個完整的Docker有以下幾個部分組成:
DockerClient用戶端
Docker Daemon守護程序
Docker Image鏡像
DockerContainer容器
關于Docker詳情,請見“ARL資訊收集篇章”https://zhuanlan.zhihu.com/p/187505981
6.作業系統 Operating System (OS)
6-1.簡介
6.2來曆
6.3功能
6.4分類
6.4.1-Windows
- Win PC版本:Win XP、Win7、Win10 Win XP常被用于銀行、ATM等更新換代比較慢的地方
- Windows Server伺服器:2003、2008、2012、2016、2019等。常用來搭建IIS,SQLServer伺服器等
6.4.2-類Unix:Linux、Mac OS等
- Unix/Linux系統 Ubuntu和CentOS被用來作為web伺服器,但是Ubuntu不如Centos常見
- Debian ——> Kali、Ubuntu、Deepin
- Red Hat ——> CentOS
6.5Linux特性
KDE:K Desktop Environment
- 一種著名的運作于 Linux、Unix 以及FreeBSD 等作業系統上的自由圖形桌面環境
6.6Linux作業系統優勢
7.安裝虛拟機Vmware Workstation Pro 16及win2008 R2+Centos7
7-1.Vmware Workstation安裝
- 完後需要輸入序列号
ZF3R0-FHED2-M80TY-8QYGC-NPKYF
YF390-0HF8P-M81RQ-2DXQE-M2UT6
ZF71R-DMX85-08DQY-8YMNC-PPHV8
- Vmware Workstation Pro16硬體相容性限制比Pro12 少很多
7.2-安裝Windows2008 R2 Enterprise
- 典型、稍後
- 固件類型;記憶體和處理器2G,2+2即可,可之後根據需求進行再次修改
- 網絡類型預設NAT,詳見下方講解
- I/O控制器類型、虛拟磁盤類型預設。底層計算機硬體,協定不一樣,速度不一樣,推薦什麼用什麼。SATA也一樣。那如果裝老系統,如XP,預設就選擇IDE,不然容易藍屏。
- 選擇磁盤:建立新的虛拟磁盤。現有磁盤的意思為使用實體機的磁盤空間(不建議)。若确定使用現有磁盤,則必須要有管理者的權限。
- 指定磁盤空間。立即配置設定不建議,不然40GB直接就從實體機沒了,不勾選的話,會慢慢地去占用實體機的磁盤空間。建議存儲為單個檔案,拷貝的時候速度快。60GB電影和60GB碎片化檔案,轉換速度和轉換率是不一樣的。之後更改名稱和路徑。
- 自定義硬體,一般來說去掉列印機、聲霸卡即可。需要特别注意USB控制器,根據挂載U盤或者硬碟的格式來定。之後選擇鏡像檔案,進行下一步,準備安裝
- 安裝windows server 2008 R2 作業系統
- 因為電腦沒有windows系統,是以選擇自定義進階;反之可以更新
- 直接選擇硬碟然後它會自動格式化,如果沒有就自行格式化
7.3-安裝虛拟機Vmware Tools
- 如果這裡是灰色的,請重新開機;如果不是直接安裝,點選這個選項,相當于點選了以下這個選項
- 出現此問題,請手動安裝或者掃描虛拟機
7.4-Vmware tools的功能
- 螢幕大小自适應
- ctrl+alt 真實與虛拟機切換滑鼠
- 克隆:注意克隆前需關閉虛拟機;兩種克隆方式,連結克隆友善,相當于快捷方式,但是依賴原先的虛拟機;完整克隆就是一個副本。無論哪種,都是為了解決建立相同作業系統浪費時間的問題。
- 快照:注意建立一個快照就會占不少空間
- 可挂載外部USB
7.5-Windows Server 2008 R2 VMWare虛拟機識别USB3.0裝置
- 使用VMware Workstation安裝的Windows Server 2008 R2系統虛拟機預設無法識别USB3.0裝置
Windows Server 2008 R2系統虛拟接入USB3.0裝置後系統提示“未能成功安裝裝置驅動程式”
- 首先開啟VMware 虛拟機相容 USB3.0
- 并根據提示網址下載下傳USB3.0驅動程式
- 打開虛拟機,将下載下傳好的USB3.0驅動程式上傳至虛拟機。安裝時可能出現以下報錯
- 此報錯解決辦法:安裝系統更新更新檔KB2533623即可
- 将下載下傳的更新檔上傳至虛拟機進行安裝,安裝後重新開機系統
- 重新開機虛拟機後,再次安裝USB3.0裝置驅動,之後重新開機就ok了
7-6.安裝Centos7
- 前面同windows,到這裡開始。選擇第一個安裝;第二個是測試安裝檔案并且安裝;第三個是修複故障
- 選擇美式鍵盤
- 設定時間
- 選擇需要安裝的軟體
- 重點:選擇Server with GUI,然後點選done
- 選擇安裝位置,對磁盤進行劃分
- 選擇'我将會配置分區',則需要自己手動;選擇左邊的auto,自動就行了
- 設定root密碼和建立一個賬戶,之後等待下方安裝成功即可
7.7-虛拟機三種網絡配置
橋接模式
- 虛拟機也會占用區域網路中的一個IP位址,并且可以和其他終端進行互相通路。
- 如果想把虛拟機當做一台完全獨立的計算機看待,并且允許它和其他終端一樣的進行網絡通信,那麼橋接模式通常是虛拟機通路網絡的最簡單途徑
- 但是,這樣做并不安全,隻能是做簡單的測試
NAT模式
- 從外部網絡來看,虛拟機和主機在共享一個IP位址,預設情況下,外部網絡終端也無法通路到虛拟機
僅主機模式
- 僅主機模式,是一種比NAT模式更加封閉的的網絡連接配接模式
- 僅主機模式的虛拟網絡擴充卡僅對主機可見,并在虛拟機和主機系統之間提供網絡連接配接
- 在預設情況下,使用僅主機模式網絡連接配接的虛拟機無法連接配接到Internet
8.CentOS 7 配置靜态IP
-
首先配置網路前,先将虛拟網卡清理掉。
輸入下方指令,等待顯示出指令提示符,然後重新開機CentOS 7即可關閉多餘的3,4虛拟網卡
systemctl disable libvirtd.service
reboot
- 輸入以下指令進入檔案進行配置
cp /etc/sysconfig/network-scripts/ifcfg-ens33 etc/sysconfig/network-scripts/ifcfg-ens33.backup
vim /etc/sysconfig/network-scripts/ifcfg-ens33
将BOOTROTO=dhcp 改為BOOTPROTO=static;再将ONBOOT=no 改為yes
再在ONBOOT下方添加以下内容,并退出儲存
IPADDR=192.168.91.100
GATEWAY=192.168.91.2
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8
- 重新開機網卡,這三種指令任選一種
systemctl restart network
service network restart
/etc/init.d/network restart
- 注意:ifconfig和netstat依賴于net_tools,有時候不能用,可以用ipaddr和ss來代替
當網卡崩潰時,嘗試輸入此指令調試
systemctl stop NetworkManager
systemctl diable NetworkManager
systemctl start network.service