登录
  • 人们都希望被别人需要 却往往事与愿违
  • 过早的优化是万恶之源 Premature optimization is the root of all evil@Donald Knuth (算法大牛 图灵奖得主)

ESXi入门指南

IT那些事 Benny小土豆 425次浏览 6050字 4个评论
文章目录[显示]

什么是ESXi

VMware ESXi是由VMware开发的用于部署和服务虚拟计算机的企业级1类管理程序。作为Type-1虚拟机管理程序,ESXi不是操作系统上安装的软件应用程序;相反,它包括并集成了重要的OS组件,例如内核。在4.1版之后,VMware将ESX重命名为ESXi。

摘自维基百科英文版翻译

简单的说,ESXi就是一个虚拟机。但是与VMware Workstation、VirtualBox等工具却又有些不同。更具体的说,VMware Workstation等工具是运行在操作系统之上的一个软件,如果没有对应的操作系统(Windows、macOS、Linux)等,它自身是无法运行的,操作系统不让它做的事情它也做不了,这种虚拟机我们一般叫“Type 2”虚拟机。

既然有Type 2,那也是有Type 1的,所谓Type 1虚拟机,就是它本身就是一个操作系统,直接运行在裸机上。ESXi就属于这种。

 

ESXi硬件要求

ESXi的硬件要求很低,总结来说大概如下:

  • 至少双核CPU
  • 至少4G内存
  • 以太网控制器

除此之外,最好再支持硬件虚拟化Intel VT-x 或 AMD RVI

具体详细硬件配置可以查看官网的文档 ESXi硬件要求

相信大家的配置绝对足够跑ESXi了,不过有几点需要注意的地方

  • ESXi本身不支持无线网卡,但是我们可以把无线网卡直通给虚拟机
  • “不支持”Realtek 螃蟹🦀️网卡,VMware因为商业化原因移除了对Realtek的支持,但是可以找办法添加回去的

使用什么设备运行ESXi

很简单,用旧的笔记本,各种服务器……好吧,对于个人使用来说,服务器还是算了,那个耗电和噪音受不了的。

对于个人使用来说, 淘汰的笔记本(配置足够的话)、各种迷你主机是比较好的选择。

比如说Intel NUC就是很不错的选择,但是NUC价格又有些贵;所以最终我选择的是占美主机,便宜省电呀……如下图所示

ESXi入门指南

只不过这个无线网卡,被我拆了卖咸鱼了。

由于NUC这类都是不带内存硬盘的,所以咱要自己买。推荐的话,既然都跑虚拟机了,起步16G为佳。存储的话,自然是M2 NVME或者mSATA的固态了。SATA接口建议还是别插固态,SATA接口留给普通的机械硬盘,做备份存储之类的用途。土豪直接上1T的固态那就不算啦!

ESXi入门指南

这个功耗很低吧,一个月下来也就是三四块钱的电费

ESXi安装镜像调整(打补丁)

判断网卡类型

前面说过,ESXi不支持🦀️网卡(有好些网卡都是不支持的,所以可以参考上面的硬件要求链接),所以这里需要先判断下自己的机器上什么网卡?如果是螃蟹卡的话,那么需要对安装镜像进行调整。具体判断方法,拆开看芯片,看产品介绍,Live CD下lspci什么的都可以

下载ESXi镜像

ESXi介绍页面

https://www.VMware.com/products/vsphere.html

ESXi下载

https://my.VMware.com/en/web/VMware/info/slug/datacenter_cloud_infrastructure/VMware_vsphere/6_7

我们就点击页面上的 VMware vSphere Hypervisor (ESXi) 6.7U3 下载就可以了。

镜像有两种类型

ESXi入门指南

第一种的ISO,直接能启动;第二种下载回来说一个zip包,我们可以用它来打补丁。如果你是🦀️卡,那就选第二种吧

ESXi打补丁

这个网上文章真的是太多了,基本上就是用ESXi-customer-PS之类的把网卡驱动添加进去

ESXi-customer-ps官网

https://www.v-front.de/p/ESXi-customizer-ps.html

需要先安装powercli,下载页面

https://code.VMware.com/web/tool/11.2.0/VMware-powercli

网卡补丁,根据自己的型号下载offline-bundle,避免网络问题

https://vibsdepot.v-front.de/wiki/index.php/List_of_currently_available_ESXi_packages

如何打补丁可以自己搜索下,我这里贴上来两篇

https://www.smbinn.com/vmnetwork.html

https://rexzhang.com/post/cf06a796-44d5-11e4-9bb5-f23c9150b910

简单描述是这样的,打开powershell,切换到对应的目录

# 取消可能的系统限制
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
Set-ExecutionPolicy Unrestricted

# 离线打补丁  official.zip是ESXi的offline bundle,drivers目录包含了vib文件的目录
.\ESXi-Customizer-PS-v2.6.0.ps1 -izip .\official.zip -pkgDir C:\Users\abc\Dropbox\ESXi\drivers

# 在线打补丁,依赖比较好的网络环境
.\ESXi-Customizer-PS-v2.6.0.ps1 -v67 -vft -load net55-r8168

支持Realtek 8168/8111/8411/8118的成品

如果你的网卡也是Realtek 8168/8111/8411/8118的话,并且信任我,可以考虑用我的现成的,戳这里去dropbox

ESXi安装

把iso写到U盘中,比如说使用rufus这种,然后启动插U盘启动电脑,哦对了还要有个显示器和HDMI……

安装过程很简单,接受,输入密码,下一步,下一步……

 

哦当然了,ESXi要插网线直接连到网络设备(如路由器)的,要不玩什么呀!

ESXi管理

ESXi安装完成之后,想办法获取到它的IP地址,直接浏览器访问就可以了。

使用ESXi网页端管理虚拟机

界面很简洁,看着就会用

ESXi入门指南

使用VMware Workstation管理虚拟机

如果你的电脑上装有VMware Workstation的话,文件-连接到服务器,输入IP用户名(root)、密码也是可以进行简单的管理的

进一步的管理:Vcenter

ESXi本身的管理功能比较基础,甚至连克隆、迁移等功能都没有。为了做到这点,可以开个虚拟机安装vcenter。

什么是注册虚拟机

ESXi创建虚拟机方法

ESXi的使用非常简单,只要是用过虚拟机的人应该就是十分清楚的,傻瓜化操作

直接创建虚拟机

ESXi入门指南

从ovf部署虚拟机

从VMware Workstation和virtualbox导出的文件都可以导入进来的

ESXi入门指南

注册虚拟机

假如已经有了虚拟机的vmdk文件,并且这个文件在datastore中,那么我们可以直接注册虚拟机的。方法太简单了,不说了。

使用cloud image

作为非常爱惜硬盘的我,如果从Ubuntu Server安装一个服务器版Ubuntu的话,不仅浪费时间,需要手工干预安装,而且还很占用硬盘。所以ubuntu官方维护了一个云镜像,其中包含各种环境使用的镜像,可以直接导入。

下面这个链接是每日构建的,点进去选一个日期,下载对应的ovf/ova文件就可以了

https://cloud-images.ubuntu.com/bionic/

这个链接是发布版的,同样下载ovf/ova文件

https://cloud-images.ubuntu.com/releases/

ESXi入门指南

下载回来直接导入就可以了

但是这个cloud image的root密码是什么呀!别怕,随机密码。开机按shift进grub,选择recovery mode破个密码就好了。然后再parted或者fdisk弄下分区,完美。Cloud image安装完占用硬盘不到1G哦~

ESXi 虚拟机设置

CPU资源限制

如下图所示,我们可以为此虚拟机预留一定的CPU资源、限制CPU资源(虚拟机不会使用超过这个频率的CPU)、份额,以及常见的硬件虚拟化、性能计数器等。

ESXi入门指南

份额这个概念比较特殊,详细解释如下:

份额指定虚拟机(或资源池)的相对重要性。如果某个虚拟机的资源份额是另一个虚拟机的两倍,则在这两个虚拟机争用资源时,第一个虚拟机有权消耗两倍于第二个虚拟机的资源。

份额通常指定为高、正常或低,这些值将分别按 4:2:1 的比例指定份额值。还可以选择自定义为各虚拟机分配特定的份额值(表示比例权重)。

举个例子,

一台聚合 CPU 容量为 8 GHz 的主机上运行着两个受 CPU 约束的虚拟机。它们的 CPU 份额设置为正常,因此各得 4GHz。

现在打开了第三个受 CPU 约束的虚拟机的电源。它的 CPU 份额设置为高,这意味着它拥有的份额值应该是设置为正常的虚拟机的两倍。新的虚拟机获得 4GHz,其他两个虚拟机各自仅获得 2GHz。如果用户为第三个虚拟机指定的自定义份额值为 2000,也会出现相同的结果。

内存资源限制

与CPU资源限制类似,内存也是可以进行限制的,道理类似

ESXi入门指南

硬盘资源限制

同理,可以限制硬盘写入,所以知道怎么做石头盘了吧!

ESXi入门指南

添加其他设备

前面提过,ESXi不支持无线网卡,但是我们可以把无线网卡直接分配给虚拟机,那么就要用到网卡直通。具体方法就是编辑虚拟机设置,添加其他设备-PCI设备/USB设备

ESXi入门指南

虚拟机引导选项

和VMware Workstation的设置基本差不多,一看就懂

ESXi入门指南

ESXi 控制台连接

我们可以直接通过网页端访问控制台端口,也可以通过下载VMware Remote Console,或是VMware Workstation访问。

数据存储管理

要装虚拟机,自然就要用ISO镜像,那ISO镜像自然就要上传到ESXi中……具体就是使用数据存储功能。

左侧导航栏直接点进去存储

ESXi入门指南

数据存储管理器

点击数据存储管理器,太简明易懂了……上传就是了。

ESXi入门指南

添加存储

ESXi默认会识别接驳的硬盘等设备,但是我们也可以添加网络存储,比如NFS,点击新建数据存储,选择NFS

ESXi入门指南

相应的添加就好了

ESXi网络设置之物理网卡

熟悉VMware Workstation可能知道,VMware Workstation的网络可以分为桥接、NAT、host only等,那么ESXi呢……对不起,ESXi天生桥接。

在ESXi的网络设置中……

物理网卡的概念很好理解,就是真实接线的网卡,ESXi本身是支持多网卡的,利用多网卡可以玩出很多花样,比如软路由……

ESXi入门指南

ESXi网络设置之虚拟交换机

交换机这个概念,对于不是搞网络的人来说,可能很生疏。路由器、交换机、集线器这三者究竟有啥区别啊?这不是本文讨论的重点。

ESXi中的虚拟机交换机的概念很简单,简单的说就是连到虚拟机的那个“设备”,由ESXi的内核提供,只有二层桥接的功能,不像真实的交换机,又能配ACL又能配这配那的。比如我们看下下面的这个图

ESXi入门指南

这么多台虚拟机都“连接”到了这一虚拟交换机上,然后这个虚拟交换机用两条真实的网线连接到了我的路由器上。

虚拟交换机有啥意义呢?比如我有两块物理网卡,一块是192.168.1.0/24,另一块是192.168.2.0/24,那么我们就可以通过添加两个vSwitch,然后不同的虚拟机就可以属于不同的网段啦。

添加vSwitch

虚拟交换机这东西,由于是内核虚拟的,自然也可以自己添加。方法也很简单,直接点击添加,起个名字,选择绑定到哪块物理网卡,确定就可以了。如下图所示

ESXi入门指南

当然了需要注意的是,一块网卡一旦属于某个虚拟交换机,那它就不能属于其他的虚拟交换机了。

虚拟交换机、添加上行链路

俗话说,狡兔三窟。一个虚拟交换机,如果增加网线作为备份线路,那也是有备无患的。

所以编辑vSwitch,添加另外一条上行链路作为冗余。这样当你拔掉一条网线,虚拟机们还能无缝切换(真的是无缝,可能连TCP丢包都没有),一点不受影响。

添加方法很简单,直接编辑,添加另一条物理链路就好了

另外,假如你的ESXi不接网线,那么属于同一个vSwitch之间的虚拟机还是能通信的,而且是万兆网卡哦!只是流量不能往外走,要不怎么叫上行链路呢。

虚拟交换机 网卡绑定

所谓网卡绑定,就是当你为一个虚拟交换机添加多条上行链路的时候,想让ESXi怎么调度啊?类似链路聚合,你是想round-robin,还是active backup,还是load balance呢?网卡绑定就是干这个事情的。

ESXi入门指南

ESXi的这四种模式,对应的意义如下:

  • 基于源端口 ID 的路由(默认):则根据流量进入虚拟交换机的虚拟端口选择上行链接。

基于 IP 哈希的路由:根据每个数据包的源和目标 IP 地址的 Hash 选择上行链接。对于非 IP 数据包,会使用位于这些偏移上的任何内容计算 Hash。

  • 基于源 MAC 哈希的路由:根据源以太网的 Hash 选择上行链接。
  • 使用明确故障切换顺序:始终使用“活动适配器”列表中位于最前列的符合故障切换检测标准的上行链路。(本图就是vmnic0)

虚拟交换机 流量调整

买VPS的时候……你这个口不是独享的!好吧,ESXi也能针对虚拟交换机进行流量限制,如下图所示

ESXi入门指南

ESXi 网络设置 端口组

实际上呢,虚拟机并不是直接连到vSwitch的。虚拟机上直接连接到端口组上的。不同的虚拟机可以属于不同的端口组。

端口组与虚拟机网络设置

ESXi入门指南

添加端口组

ESXi入门指南

ESXi VMkernel网卡

ESXi本身是通过网络管理的,那么自然也要有一个对应的“网卡”,这里就是vmk网卡。可以把它理解成一个特殊的端口组,主要就是提供管理相关的访问。

ESXi入门指南

有的时候,我们可能希望,所有虚拟机使用某一段的IP,但是管理使用另一段IP,这里就可以通过添加VMKernel网卡做到。

ESXi入门指南

比如我们希望ESXi的管理IP能够有多个,做个备份,那么添加vmkernel也能做到

添加之后的结果

ESXi入门指南

此时Vmkernel的拓扑

ESXi入门指南

我的ESXi玩法

  • kali,还有一个XP,用途你懂的;
  • Windows 7,用于下载电影电视剧什么的;
  • Ubuntu Desktop,装了点GUI应用,开了samba服务,默认启动到multi-user。上面的Windows 7下载的文件直接存到了这里,然后电视iPad等直接就能看了;
  • csr1000v,模拟Cisco IOS网络设备,其实并无卵用,放着吃灰的。
  • TimeMachine,从Cloud Image导入的,用于macOS的时间机器备份,做了LVM,啥都不怕。
  • Ubuntu Minimal,从Cloud Image导入的,我也不知道干啥的
  • Tiny Core,不知道干啥的,玩的吧。

总结

ESXi真是太强大了,开虚拟机随便玩,部分硬件可以直通到虚拟机中;甚至可以给ESXi主机开ssh,然后可以执行一些ssh命令,甚至可以运行Python,吼。

 


文章版权归原作者所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明原作者和本文原始地址:
https://www.bennythink.com/esxi-tutorial.html
喜欢 (1)
分享:-)
Benny小土豆
关于作者:
If you have any further questions, feel free to contact me in English or Chinese.
发表我的评论(代码和日志请使用Pastebin或Gist)
取消评论

                     

去你妹的实名制!

  • 昵称 (必填)
  • 邮箱 (必填,不要邮件提醒可以随便写)
  • 网址 (选填)
(4)个小伙伴在吐槽
  1. :oops: :oops: 感谢土豆带我了解ESXi!
    七七2019-11-17 11:35 回复
    • Benny小土豆
      别怕!
      Benny小土豆2019-11-20 18:01 回复
  2. 大佬这是真的效率啊!
    弦上韫玉2019-11-16 17:12 回复
    • Benny小土豆
      那当然啦!
      Benny小土豆2019-11-16 20:50 回复