在linux中,虛擬化可以擴大硬件的容量,簡化軟件的重新配置過程。linux虛擬化的優勢:1、資源超分;2、降低資金成本和運維成本;3、最大限度減少或消除停機;4、提高IT部門的工作效率、效益、敏捷性和響應能力;5、加快應用和資源的調配速度;6、提高業務連續性和災難恢復能力;7、簡化數據中心管理;8、減少端口的沖突。
本教程操作環境:linux7.3系統、Dell G3電腦。
linux虛擬化是什么
虛擬化(Virtualization)是一種資源管理技術,是將計算機的各種實體資源(CPU、內存、磁盤空間、網絡適配器等),予以抽象、轉換后呈現出來并可供分割、組合一個或多個計算機配置環境,并重新分割、重新組合,以達到最大化合理利用物理資源的目的。
虛擬化技術是一種將計算機物理資源進行抽象、轉換為虛擬的計算機資源提供給程序使用的技術。這里所指的計算機資源,就包括了 CPU 提供的運算控制資源,硬盤提供的數據存儲資源,網卡提供的網絡傳輸資源等。
虛擬化技術可以擴大硬件的容量,簡化軟件的重新配置過程。CPU的虛擬化技術可以單CPU模擬多CPU并行,允許一個平臺同時運行多個操作系統,并且應用程序都可以在相互獨立的空間內運行而互不影響,從而顯著提高計算機的工作效率——百度百科。虛擬化主要指的是特殊的技術,通過隱藏特定計算平臺的實際物理特性,為用戶提供抽象的、統一的、模擬的計算環境(稱為虛擬機)——IBM定義。
虛擬化優點
(1)資源超分,如物理內存128G,可以給虛擬機分配200G內存,一般在測試環境使用,生產環境一般不推薦。
(2)降低資金成本和運維成本
(3)最大限度減少或消除停機
(4)提高IT部門的工作效率、效益、敏捷性和響應能力
(5)加快應用和資源的調配速度
(6)提高業務連續性和災難恢復能力
(7)簡化數據中心管理
(8)真正的Software-Defined Data Center的可用性
(9)減少端口的沖突
常見的虛擬化廠商及產品
系列 |
常見PC/服務器端版本 |
VMware |
VMware Workstation、vSphere |
Microsoft |
VirtualPC、Hyper-V |
RedHat |
KVM、RHEV |
Oracle |
Oracle VM VirtualBox |
Citrix |
Xen |
安裝虛擬化服務器平臺(KVM)
1、主要軟件包
qemu-kvm https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b為kvm提供底層仿真支持
libvirt-daemon? https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15blibvirtd守護進程,管理虛擬機
libvirt-client https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b用戶端軟件,提供客戶端管理命令
libvirt-daemon-driver gemu https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15blibvirtd 連接gemu的驅動
virt-manager https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b圖形管理工具
2、準備工作
1)準備一臺設備(這里博主準備一臺Centos7的服務器)
2)關閉SELinux、防火墻(可能導致虛擬機內部無法通信)
3)安裝KVM相關包,命令如下
yum -y install kvm bridge-utils virt-v2v libgesttfs-tools libcanberra-gtk2 qemu-kvm.x86_64 qemu-kvm-tools.86_64 libvirt.x86_64 libvirt-cim.x86_64 libvirt-client.x86_64 lsbvirt-java.noarch libvirt-python.x86_64 libiscsidbus-devel virt-clone tunctl virt-manager python-virtinst virt-vieeer virt-top dejavu-lgc-sans-fonts nfs-utils epel-release
3、啟動libvirtd服務端
libvirtd 為管理虛擬機提供服務接口,提供DNS、DHCP等功能
1)命令
systemctl?restart?libvirtd systemctl?restart?libvirtd
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b systemctl restart libvirtd [root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b systemctl restart libvirtd
4、打開管理工具
1)命令
virt-manager
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virt-manager
5、點擊圖標創建一臺新的虛擬機
6、選擇安裝操作系統的方式
這里選擇“Local install media (ISO?image or CDROM)”后,點擊“ForWard”
注:
1)Local install media (ISO?image or CDROM)
本地安裝介質(ISO鏡像或CDROM)
2)Network Install(HTTPFTPor NFS)
網絡安裝(HTTP、FTP或NFS)
3)Network Boot(PXE)
網絡引導(PXE)
4)Import existing disk image
導入現有磁盤鏡像
7、查找安裝介質
選擇“Use ISO image”,點擊“Browse…”選擇ISO鏡像位置后點擊“ForWard”
注:
1)Use CDROM or DVD
使用光盤或 DVD?
2)Use ISO image
使用ISO鏡像
3)Automatically detect operating system based on install media
自動檢測操作系統上的基礎安裝介質
8、設置內存大小和CPU數量,設置完畢后點擊“ForWard”
9、創建虛擬磁盤
勾選“Enable storage for this virtual machine”,創建并設置磁盤容量,點擊“ForWard”
注:
1)Enable storage for this virtual machine
為虛擬機啟用存儲
2)Create a disk image for the virtual machine
為虛擬機創建磁盤映像
3)Select or create custom storage
選擇或創建自定義存儲
10、準備開始安裝,設置好虛擬機名稱,點擊“Finish”
注:
1)Name:虛擬機名稱
2)OS:系統名稱
3)Install:安裝操作系統方式
4)Memory:內存大小
5)CPUs:處理器數量
6)Storage:存儲容量與位置
7)Customize configuration before install:安裝前自定義配置
8)Network selection:網絡設置
四、操作虛擬機
1、使用virsh命令工具
?virsh命令工具提供管理各虛擬機的命令接口,支持交互模式,包括查看、創建、停止、關閉等功能。
1)常用格式
virsh 控制指令 虛擬機名稱?參數
2)命令
virsh
3)實例
[root@wangwu~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15bvirsh https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b啟動virsh命令工具 歡迎使用virsh,虛擬化的交互式終端 輸入:'help'來獲得命令的幫助信息 'quit'退出 virsh https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b
2、查看虛擬化信息
查看KVM節點(服務器)信息
1)命令
virsh?nodeinfo
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh nodeinfo https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b查看KVM節點(服務器)信息 CPU 型號: x86_64 CPU: 1 CPU 頻率: 2600 MHz CPU socket: 1 每個 socket 的內核數: 1 每個內核的線程數: 1 NUMA 單元: 1 內存大小: 1,048,576 KiB
列出虛擬機狀態
1)命令
virsh list –all
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh list --all https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b列出所有虛擬機的狀態 Id Name State 6 centos7.0 shut off
查看指定虛擬機的信息
1)命令
virsh dominfo 虛擬機名稱
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh dominfo centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b查看centos7.0虛擬機的信息 Id: 6 名稱: centos7.0 UUID: 78fa5915-c060-4731-b4c5-bd4aaaea8fee OS 類型: hvm 狀態: running CPU: 1 CPU 時間: 28.7s 最大內存: 1048576 KiB 使用的內存: 1048576 KiB 持久: 是 自動啟動: 禁用 管理的保存: 否 安全性模式: none 安全性 DOI: 0
3、虛擬機開關機操作
啟動|重啟|關閉?指定的虛擬機
1)命令
virsh?start?虛擬機名稱 virsh?reboot?虛擬機名稱 virsh?shutdown?虛擬機名稱
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh start centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b啟動centos7.0虛擬機 Domain centos7.0 started [root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh list https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b驗證 Id Name State 6 centos7.0 running
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh shutdown centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b關閉centos7.0虛擬機 Domain centos7.0 is being shutdown [root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh list --all https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b驗證 Id Name State - centos7.0 shut off
強制關閉指定的虛擬機
1)命令
virsh?destroy?虛擬機名稱
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh destroy centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b強制關閉centos7.0虛擬機 Domain centos7.0 destroyed [root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh list --all https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b驗證 Id Name State - centos7.0 shut off
將指定的虛擬機設為|取消開機自動運行
1)命令
virsh?autostart?虛擬機名稱 virsh?autostart?--disable?虛擬機名稱
2)實例
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh autostart centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b 設置centos7.0虛擬機自啟動 Domain centos7.0 marked as autostarted [root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh dominfo centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b驗證 Id: Name: centos7.0 ... ... ... Autostart: enable ... ... ...
[root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh autostart --disable centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b 取消centos7.0虛擬機自啟動 Domain centos7.0 unmarked as autostarted [root@wangwu ~]https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b virsh dominfo centos7.0 https://www.php.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b驗證 Id: Name: centos7.0 ... ... ... Autostart: disable ... ... ...
相關推薦:《Linux視頻教程》