在VMware Workstation的Centos上實現KVM虛擬機的安裝部署:詳細安裝部署過程(保姆級)

KVM概述

? 以色列qumranet公司研發,后被RedHad公司收購
(1)kvm只支持x86平臺
(2)依賴于 HVM,inter VT AMD-v

? KVM是(Kernel-based Virtual Machine)的簡稱,是一個開源的系統虛擬化模塊,自Linux 2.6.20之后集成在Linux的各個主要發行版本中。它使用Linux自身的調度器進行管理,所以相對于Xen,其核心源碼很少。

? KVM的虛擬化需要硬件支持(如Intel VT技術或者AMD V技術)。是基于硬件的完全虛擬化。而Xen早期則是基于軟件模擬的Para-Virtualization,新版本則是基于硬件支持的完全虛擬化。但Xen本身有自己的進程調度器,存儲管理模塊等,所以代碼較為龐大。廣為流傳的商業系統虛擬化軟件VMware ESX系列是基于軟件模擬的Full-Virtualization。

工作原理

KVM 是基于虛擬化擴展(Intel VT 或者 AMD-V)的 X86 硬件的開源的 Linux 原生的全虛擬化解決方案。KVM 中,虛擬機被實現為常規的 Linux 進程,由標準 Linux 調度程序進行調度;虛機的每個虛擬 CPU 被實現為一個常規的 Linux 進程。這使得 KMV 能夠使用 Linux 內核的已有功能。
但是,KVM 本身不執行任何硬件模擬,需要客戶空間程序通過 /dev/kvm 接口設置一個客戶機虛擬服務器的地址空間,向它提供模擬的 I/O,并將它的視頻顯示映射回宿主的顯示屏。目前這個應用程序是 QEMU。

KVM的整體結構:

從GUI到Linux內核,包括以下五個組件:
1、virt-manager: 一個用來管理VM的GUI/CUI用戶接口,它使用libvirt api 調用VM的各種功能。
2、libvirt:API庫,作為較通用的服務器虛擬化軟件,它支持Xen,VMware ESXi/GSX,當然,還有QEMU/KVM。
3、QEMU:一個和KVM內核模塊交互的模擬器,處理多種客戶機系統請求如I/O,一個QEMU進程對應一個客戶機系統。
4、KVM內核模塊: 從狹義上來說,KVM是一個Linux內核模塊,主要負責vCPU的創建,虛擬內存的分配,vCPU寄存器的讀寫以及vCPU的運行。
5、Bridge-utils - Bridge-utils是一個Linux橋接工具集合,用于創建和配置網絡橋接設備。在KVM中使用網絡橋接可以實現更高效的網絡通信。

KVM的安裝與部署

鏡像下載地址: http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/

如果是物理服務器,需要在BIOS中打開虛擬化功能(Virtualization Technology),一般的服務器默認是打開這個功能的。
如果是用VMware Workstation做實驗,建立的虛擬機的CPU要勾選虛擬化功能,這樣虛擬機才會支持KVM虛擬化

首先準備一臺新的虛擬機,處理器也不要只給一個
在這里插入圖片描述
配置好以后就可以啟動了
查看內核中的KVM模塊是否已經安裝

[root@server159 ~]# lsmod  | grep kvm
kvm_intel             188740  0 
kvm                   637289  1 kvm_intel
irqbypass              13503  1 kvm

在這里插入圖片描述
然后就安裝KVM所需要的組件

[root@server159 ~]# yum install qemu qemu-img qemu-kvm  libvirt  libvirt-python  libguestfs-tools virt-manager  virt-viewer  virt-install -y

啟動libvirtd服務,并設置為開機自啟

[root@server159 ~]# systemctl  start  libvirtd
[root@server159 ~]# systemctl  enable  libvirtd

創建一個目錄來存放虛擬磁盤,跟在window上創建一個目錄存放VMware一樣
然后創建虛擬磁盤

[root@server159 ~]#  mkdir  -p  /data/kvm
[root@server159 ~]# qemu-img  create  -f  raw  /data/kvm/server1.raw  10G
Formatting '/data/kvm/server1.raw', fmt=raw size=10737418240 

我們創建了一個10G的虛擬磁盤,但是并不會直接占用我們的10G內存,是根據使用量來決定的

[root@server159 ~]# ls  -lh  /data/kvm/server1.raw 
-rw-r--r-- 1 root root 10G Nov 23 19:52 /data/kvm/server1.raw
[root@server159 ~]# du  -h  /data/kvm/server1.raw 
0	/data/kvm/server1.raw

然后創建一個目錄來保存并下載KVM安裝的鏡像,

[root@server159 ~]# ls /data/iso/
CentOS-7-x86_64-Minimal-2009.iso

配置br0網卡來提供橋接網絡

[root@server159 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-br0

然后ens33和br0網卡的設置

[root@server159 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0 
TYPE=Bridge
DEVICE=br0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.121.159
PREFIX=24
DNS1=192.168.121.2
GATEWAY=192.168.121.2
[root@server159 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE=Ethernet
DEVICE=ens33
BOOTPROTO=static
ONBOOT=yes
BRIDGE=br0

然后重啟網絡

[root@server159 ~]# systemctl restart network

查看ip在哪張網卡

[root@server159 ~]# ifconfig 
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.121.159  netmask 255.255.255.0  broadcast 192.168.121.255inet6 fe80::250:56ff:fe22:e283  prefixlen 64  scopeid 0x20<link>ether 00:50:56:22:e2:83  txqueuelen 1000  (Ethernet)RX packets 32  bytes 2012 (1.9 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 34  bytes 2500 (2.4 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet6 fe80::250:56ff:fe22:e283  prefixlen 64  scopeid 0x20<link>ether 00:50:56:22:e2:83  txqueuelen 1000  (Ethernet)RX packets 874221  bytes 1263022646 (1.1 GiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 68757  bytes 6441324 (6.1 MiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

然后修改VNC訪問的密碼

[root@server159 ~]# vim /etc/libvirt/qemu.conf 

在這里插入圖片描述

然后開始安裝我們的虛擬機

[root@server159 ~]# virt-install --name=server1  --virt-type=kvm --memory 1024,maxmemory=2048  --cdrom=/data/iso/CentOS-7-x86_64-Minimal-2009.iso  --disk path=/data/kvm/server1.raw   --network bridge=br0  --vnc --vncport=5901 --vnclisten=0.0.0.0  --noautoconsole  --autostart

在這里插入圖片描述
看一下端口啟動沒有
在這里插入圖片描述
然后去我們window上安裝的Real VNC通過這個端口訪問
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

連接進來以后就是這個界面,這個大家都熟悉, 我就不介紹了
根據自己要求來配就好了
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
安裝好以后就直接重啟KVM虛擬機,當然VNC就會直接斷開連接
然后在宿主機查看KVM虛擬機的情況

[root@server159 ~]# virsh listId    Name                           State
----------------------------------------------------
[root@server159 ~]# virsh start server1
Domain server1 started[root@server159 ~]# virsh listId    Name                           State
----------------------------------------------------2     server1                        running

然后這時候就可以用VNC來連接KVM虛擬機了
在這里插入圖片描述
然后使用Xshell連接
在這里插入圖片描述
在這里插入圖片描述

可以看到是可以連接的,也ping通百度訪問外網,現在就和我們的宿主機差不多了

這樣我們的KVM虛擬機就安裝好了

希望對大家有用

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/165776.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/165776.shtml
英文地址,請注明出處:http://en.pswp.cn/news/165776.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spark---補充算子

一、Spark補充Transformation算子 1、join,leftOuterJoin,rightOuterJoin,fullOuterJoin 作用在K&#xff0c;V格式的RDD上。根據K進行連接&#xff0c;對&#xff08;K&#xff0c;V&#xff09;join&#xff08;K&#xff0c;W&#xff09;返回&#xff08;K&#xff0c;&a…

世界復合醫學雜志世界復合醫學雜志社世界復合醫學編輯部2023年第8期目錄

論著 能譜&#xff08;Revolution&#xff09;CT胸腹聯合胸痛三聯CTA掃描對急性胸痛患者疾病的差異分析 左明飛;溫麗娟;焦宇; 1-38 超聲引導下肩袖間隙注射及肩胛上神經阻滯聯合觸發點針刺治療粘連性肩關節囊炎的療效分析 余菲;王嫻;戴甫成;張維;劉武;孫勇; 4-8 神…

python tkinter 使用(六)

python tkinter 使用&#xff08;六&#xff09; 本文主要講述tkinter中進度條的使用。 1:確定的進度條 progressbar tkinter.ttk.Progressbar(root, mode"determinate", maximum100, value0) progressbar.pack()def updateProgressBar():for i in range(100):pr…

【Unity】 UGUI的PhysicsRaycaster (物理射線檢測)組件的介紹及使用

1. 什么是PhysicsRaycaster組件&#xff1f; PhysicsRaycaster是Unity UGUI中的一個組件&#xff0c;用于在UI元素上進行物理射線檢測。它可以檢測鼠標或觸摸事件是否發生在UI元素上&#xff0c;并將事件傳遞給相應的UI元素。 2. PhysicsRaycaster的工作原理 PhysicsRaycast…

【Proteus仿真】【51單片機】智能垃圾桶設計

文章目錄 一、功能簡介二、軟件設計三、實驗現象聯系作者 一、功能簡介 本項目使用Proteus8仿真51單片機控制器&#xff0c;使用報警模塊、LCD1602液晶模塊、按鍵模塊、人體紅外傳感器、HCSR04超聲波、有害氣體傳感器、SG90舵機等。 主要功能&#xff1a; 系統運行后&#xf…

基于GPRS的汽車碰撞自動報警系統(論文+源碼)

1. 系統設計 本次基于GPRS的汽車碰撞自動報警系統的設計中&#xff0c;其主要的目標功能如下&#xff1a;1、實時檢測當前的GPS精度和緯度坐標&#xff1b;2.當發生碰撞后系統自動將當前的信息通過GPRS數據發送到遠端數據進行報警&#xff1b;3、系統在碰撞后一方面進行本地報警…

聽GPT 講Rust源代碼--src/tools(2)

題圖來自AI生成 File: rust/src/tools/rust-analyzer/crates/hir-def/src/src.rs rust-analyzer 是一個 Rust 語言的語法分析器和語義分析器&#xff0c;用于提供代碼補全、導航、重構等開發工具。而 rust-analyzer 的代碼實現存儲在 rust/src/tools/rust-analyzer 這個文件夾中…

010 OpenCV中的4種平滑濾波

目錄 一、環境 二、平滑濾波 2.1、均值濾波 2.2、高斯濾波 2.3、中值濾波 2.4、雙邊濾波 三、完整代碼 一、環境 本文使用環境為&#xff1a; Windows10Python 3.9.17opencv-python 4.8.0.74 二、平滑濾波 2.1、均值濾波 在OpenCV庫中&#xff0c;blur函數是一種簡…

遞歸剪枝題

期中考終于考完了&#xff0c;整道題獎勵下自己 我一北大同學問我的&#xff0c;說他遞歸超時了&#xff0c;叫我想一個辦法 后面他說他加了個剪枝就過了&#xff0c;然后我自己嘗試了一個方法&#xff1a; 就是先把城市按1到n排列&#xff0c;然后考慮互換&#xff0c;如果互…

考過了PMP,面試的時候應該怎么辦?

近期喜番在后臺收到了很多同學們的私信&#xff0c;表示自己已經過了8月份的PMP考試&#xff0c;開始著手往項目管理崗位轉型&#xff0c;但是對于項目管理崗位的面試卻一籌莫展。放輕松&#xff0c;大家的需求喜番都了解了&#xff0c;喜番給大家總結了一些項目經理在面試的時…

SpringCloud 微服務全棧體系(十七)

第十一章 分布式搜索引擎 elasticsearch 七、搜索結果處理 搜索的結果可以按照用戶指定的方式去處理或展示。 1. 排序 elasticsearch 默認是根據相關度算分&#xff08;_score&#xff09;來排序&#xff0c;但是也支持自定義方式對搜索結果排序。可以排序字段類型有&#…

【Python】Fastapi swagger-ui.css 、swagger-ui-bundle.js 無法加載,docs無法加載,redocs無法使用

使用fastapi的時候&#xff0c;swagger-ui.css 、swagger-ui-bundle.js、redoc.standalone.js 有時候無法加載&#xff08;國內環境原因或者是局域網屏蔽&#xff09;&#xff0c;此時就需要自己用魔法下載好對應文件&#xff0c;然后替換到fastapi里面去。 fastapi里面依靠這…

計算機視覺(CV)技術的優勢:

計算機視覺&#xff08;CV&#xff09;技術的優勢&#xff1a; 自動化&#xff1a;計算機視覺技術可以自動化處理大量的視覺數據。 精度和速度&#xff1a;計算機視覺技術可以在很短的時間內對大量的圖像數據進行處理&#xff0c;并且可以達到非常高的精度。 可靠性&#xff…

【微軟技術棧】使用(TAP)基于任務的異步模式

本文內容 使用 Await 掛起執行取消異步操作監視進度使用內置的基于任務的連結符構建基于任務的連結符構建基于任務的數據結構 c#使用基于任務的異步模式 (TAP) 處理異步操作時&#xff0c;可以使用回叫實現等待&#xff0c;而不會阻塞。 對于任務&#xff0c;這可通過 Task.C…

java學習part07數組工具類

1比較內容 2輸出信息 3值填充 4快速排序 5二分查找 負數沒找到&#xff0c;其他表示下標

ES6 — ES14 新特性

一、ES6 新特性&#xff08;2015&#xff09; 1. let和const 在ES6中&#xff0c;新增了let和const關鍵字&#xff0c;其中 let 主要用來聲明變量&#xff0c;而 const 通常用來聲明常量。let、const相對于var關鍵字有以下特點&#xff1a; 特性varletconst變量提升??全局…

【漏洞復現】金蝶云星空管理中心 ScpSupRegHandler接口存在任意文件上傳漏洞 附POC

漏洞描述 金蝶云星空是一款云端企業資源管理(ERP)軟件,為企業提供財務管理、供應鏈管理以及業務流程管理等一體化解決方案。金蝶云星空聚焦多組織,多利潤中心的大中型企業,以 “開放、標準、社交”三大特性為數字經濟時代的企業提供開放的 ERP 云平臺。服務涵蓋:財務、供…

什么是切片

切片&#xff0c;是一個比較生疏的名詞&#xff0c;這是現代計算機編程語言或者說Python里的一個概念&#xff0c;大致意思是從一個集合里切出一塊來&#xff0c;就像切一塊豆腐&#xff0c;一刀下去切出兩塊豆腐 先看一個函數range、返回值是列表&#xff0c;內容和傳入range…

【MySQL】mysql中不推薦使用uuid或者雪花id作為主鍵的原因以及差異化對比

文章目錄 前言什么是UUID?什么是雪花ID?什么是MySql自增ID?優缺點對比UUID:優點1.全球唯一性2.無需數據庫支持 缺點1.存儲空間大2.索引效率低3.查詢效率低 雪花ID&#xff1a;優點1.分布式環境下唯一性 缺點1.依賴于機器時鐘2.存儲空間較大3.查詢效率低 MYSQL自增:優點1.簡單…

qml PathView使用介紹

PathView 是 QML 的一個強大的元素,它能夠在任意路徑上布局和滾動項目。這使得創建復雜的滾動視圖和項目動畫變得相對更簡單。 以下是 PathView 的一些主要特性: 路徑定義: PathView 根據 Path 元素定義的路徑布局項目。路徑可以是簡單的直線,復雜的曲線,或者包含多個不同…