KVM 虚拟化环境搭建 - ProxmoxVE
送大家一套完全开源免费的 VmWare / vSphere 的代替方案,代价是稍微动一下手,收获是你再也不需要任何商用付费的虚拟机软件了。KVM 整套解决方案一般分三层:
- KVM:内核级别的虚拟化功能,主要模拟指令执行和 I/O
- QEMU:提供用户操作界面,VNC/SPICE 等远程终端服务
- Libvirtd:虚拟化服务,运行在 Hypervisor 上提供 TCP 接口用于操作虚拟机的创建和启停
第一个是 Linux 内核自带,后两个是各大发行版自带的标准组件。这里的 qemu 不是原生的 Fabrice 的 qemu,而是定制的 kvm 版本的 qemu 。
你当然可以用 qemu-system-x86 程序写很长的一串参数来启动你的虚拟机,但是这样十分不友好,所以有了 Libvirtd 这个东西,将物理机的所有资源:存储/网络/CPU 管理起来,并且提供统一的服务接口。
那么 KVM + Libvirtd 有几种不同层次的玩法:
- 初级:在 /etc/libvirtd/qemu 下面用 xml 描述每一台虚拟机的配置,然后用 virsh 在命令行管理虚拟机,最后用 VNC/SPICE 按照配置好的端口链接过去,模拟终端操作。
- 中级:使用各种 libvirtd 的前端,比如基于桌面 GUI 的 Virt Manager 给你界面上直接编辑和管理虚拟机,桌面版本的 VNC/SPICE 会自动弹出来,像 VmWare 一样操作。
- 高级:使用基于 Web 的各种 virt manager 进行集群管理,比如轻量级的 WebVirtMgr / Kimchi,适合小白的 Proxmox VE。基本是用 WebVnc/Web
- 超级:上重量级的 OpenStack,搭配自己基于 libvirt (libvirtd 的客户端库,比如有 python-libvirt 的封装)写的各种自动化脚本。
前两种太弱智了,OpenStack 又基本需要一个 DevOps 团队才玩得转。所以作为个人或者中小团队,买了台硬件过来,想把它变成一套小型的阿里云,腾讯云的系统,可以在 web 上创建/配置虚拟机,装系统,管理硬件资源,进行迁移备份等,基本就是第三套解决方案。
不想折腾的话,最简单的做法是直接下载 ProxmoxVE 社区版的 ISO ,刻录到 U 盘里,按照安装普通操作系统一样的安装到物理机上,立马把你的物理机变成一台 Hypervisor:
Proxmox VE 安装后启动,你可以登陆进去,ProxmoxVE 基于 Debian 9 ,进去可以用 apt-get 进行版本升级。接着按提示打开网页:https://your-ip:8006/ 用系统 root 密码登陆:
ProxmoxVE 可以方便的管理各种硬件资源(计算,存储,网络)和虚拟机系统,你可以方便的新建一台虚拟机并进行硬件配置:
各项配置应有尽有:
配置好了以后启动虚拟机,选择“console”就可以使用 webvnc 终端安装操作系统了:
嫌终端太小看不过来的话,可点右上角的 Console 按钮,弹出一个终端独占窗口,全屏化安装:
ProxmoxVE 除了上面这些功能外,还能方便的对虚拟机进行:复制,快照,迁移。你如果有硬盘阵列,它还能使用 ZFS 帮你做软件 Raid,保证数据安全性,不需要学习复杂的 zfs 命令行,web上点点点就出来了。
小到个人 Linux Box ,大到商用的虚拟化集群,Proxmox VE 都能帮你方便的管理起来,提供开箱即用的体验,全部都是基于开源免费方案。唯一的问题是 Proxmox VE 本身和 Sublime Text 一样属于付费软件,但是可以免费使用,只不过免费版每次登陆 web后台会弹出一个对话框:
提醒你要去注册而已,不过连这个烦人的对话框也是可以干掉的,登陆到物理机的系统里面,修改一下 pvemanagerlib.js 这个文件的判断条件就行:
sed -i.bak "s/data.status !== 'Active'/false/g" /usr/share/pve-manager/js/pvemanagerlib.js
不过该对话框也只有登陆的时候才会出现一次,如果不是强迫症的话,犯不着更改。
个人使用的话,二十分钟就可以在安装完 Proxmox VE,里面创建三个虚拟机,一个跑黑群晖或者各种 Docker 容器,一个开发用 Ubuntu/Debian ,另外一个跑个 Windows 10,网络设置成桥接模式,同一个路由器下可以直接访问,最后把他们的电源选项都配置成随同物理机开机自动启动,妥了,基本满足日常使用。
跑 Windows 的话,web 上用 VNC 操作桌面效率太低了,可以考虑使用 SPICE ,或者安装完系统以后打开 Windows 的远程桌面服务,以后用远程桌面操作。
到这里,你真的不需要 VmWare / HyperV / vSphere 这些乱七八糟的东西了。性能问题?KVM对性能的损耗只有 1%-2% ,你就是 VmWare 再快,1%了不起了嘛?99% 和 98% 有区别么?当然 VmWare / HyperV 的图形性能模拟的不错,虚拟机里可以玩点小游戏,这属于娱乐需求了,跑后台服务的话基本不用考虑。
KVM 虚拟化环境搭建 - ProxmoxVE相关推荐
- KVM虚拟化环境搭建
使用ProxmoxVE 完成环境的搭建. Proxmox VE是一款套开源的虚拟化管理软件,用户可通过网页的方式来管理服务器上使用 kvm 以及 lxc 技术运行的虚拟机.同时提供了一些先进功能的支持 ...
- kvm虚拟化_KVM 虚拟化环境搭建 - WebVirtMgr
前文<KVM 虚拟化环境搭建 - ProxmoxVE>已经给大家介绍了开箱即用的 PVE 系统,PVE 是方便,但还是有几点问题: 第一:始终是商用软件,虽然可以免费用,但未来版本还免费么 ...
- linux搭建虚拟化平台报告,部署KVM虚拟化平台------搭建(示例代码)
一 .部署KVM虚拟化平台 hyper-v是windows中的虚拟化 1.KVM模块直接整合在Linux内核中,kvm是内核模块,虚拟机与kvm模块之间为管理工具 2.KVM组成 1.KVM Driv ...
- KVM虚拟化平台搭建、工作模式与原理
文章目录 简介 1.虚拟化技术 1.1 概述 1.2 虚拟化技术的发展雏形 1.3 虚拟化类型 2.KVM架构和原理 2.1 KVM简介 2.2 KVM虚拟化架构/三种模式 2.3 KVM原理 2.3 ...
- KVM虚拟化平台搭建+理论
文章目录 一.KVM虚拟化架构 二.KVM组成 三.KVM原理简介 四.KVM 运行时的三种模式 五.KVM工作原理 六.案例 1.案例概述 2.案例环境 3.KVM虚拟化平台部署 1)安装系统 2) ...
- KVM虚拟化平台搭建
目录 一.虚拟化技术概述 1.1 虚拟化技术 1.2 虚拟化技术发展(雏形) 1.3 虚拟化特点 1.4 虚拟化类型 1.5 虚拟化的特性 1.6 虚拟化前后对比 1.6.1 对比 1.6.1.1 操 ...
- 云教室桌面虚拟化环境搭建——flexVDI Dashboard 3.0 云桌面管理系统的使用
flexVDI Dashboard是一款云桌面管理系统,用于管理服务器主机,存储,网络,桌面等资源,使用flexVDI Dashboard将会使VDI环境搭建变得简单. 本教程是教大家如何快速简单地将 ...
- PVE虚拟服务器配置,虚拟化环境搭建Proxmox Virtual Environment(PVE)系统安装部署图文教程说明...
摘要:Proxmox VE 全称:Proxmox Virtual Environment(以下简称:PVE)是一个非常专业的集成OPENVZ 支持KVM应用的开源虚拟化平台,有方便易用的WEB界面,你 ...
- KVM 虚拟化环境安装
修改内核模式为内核启动: vi /boot/grub2/grub.cfg defaults=1 关闭selinux 关闭防火墙 --bios开启虚拟化 安装 yum -y install kvm py ...
最新文章
- ubuntu16.04 下安装Opencv2.4.9
- Java 时间日期整理
- QT5的exe的发布
- 1029mysql_今日编码学习(1029)
- java用十字链表实现无向图_实验四:图的实现与应用
- spring学习(38):注入set类型
- CCNA 学习笔记(四)--路由协议(RIP)
- PHP __FILE__
- vue实用组件——表格
- M2M技术、标准与智慧城市顶层设计方法
- 毕设题目:Matlab DTMF双音多频
- Git部署Git使用Git子模块
- 史上最详细的sqlmap使用教程
- SCM供应链协同管理系统解决方案
- 作为面试官,如何甄别应聘者的包装程度?
- P0-CS架构软件-BS架构软件-万维网-万维网联盟-进制-计算机存储-编解码
- 银行软件性能测试,银行手机银行系统性能测试方案.pdf
- 苹果首款自研芯片 M1 惊艳亮相,带来最强三款 Mac 电脑!
- 基于SmartThreadPool线程池技术实现多任务批量处理
- 鸿蒙系统第一批升级名单,鸿蒙系统首批升级名单详细介绍
热门文章
- kangle服务器返回信息为空,kangle API 详细说明
- C语言位操作,清除和置位
- EDM邮件营销之老客户发送策略
- C++ 泛型(模板与容器)
- ContentProvider操作数据库—一项古老的Android技术
- SQL Server中的数字,浮点数和小数之间的差异
- 【招生简章】北京交通大学计算机与信息技术学院2023年【学术型博士】研究生申请考核制招生实施办法
- Excel:如何将vlookup 中#N/A全部替换为0。
- iOS开发工程师与UI视觉设计师不得不说的故事
- 【课程设计】基于C++的计算机辅助教学(CAI)软件开发:教学生学英语