Haste makes waste

一. 理解vSphere的基本构成

Posted on By lijun

1. vSphere的基本组件

如下图,是一个vSphere的全体结构图。

image

  • 在各个物理主机上安装了ESXi(基于linux的精简OS),在这ESXi OS之上,运行着Guest OS(如Windows)和各种程序。

  • 统合管理这些物理ESXi的是vCenter,通过vSphere Client或是vSphere Web Client访问vCenter,实现对物理主机的管理。

2. VMware ESXi - vSphere的基础虚拟化软件

虚拟化存在下面两种方式:

image

  • Host OS类型

前一种方式,就是我在家里做实验的方式。 在物理主机上,运行着Windows10,window10上安装了vmware workstation,然后在workstation上新建了两个虚拟机,一个虚拟机上安装了ESXi,另一个虚拟机上安装了Windows Server2008,然后在WindowsServer2008上安装了vCenter之后,将另一台ESXi的虚拟机添加到vCenter中,这样vCenter就能实现对ESXi主机的管理。

如果物理主机性能足够强大,还可以继续在vmware workstation上添加ESXi虚拟机,再将加入到vCenter中。

  • Hypervisor类型

这种方式就是公司工作中实际运行的方式。 单台超级强大的服务器上安装了ESXi,以16台服务器为一个单位,另外还有一台更强大的物理服务器上安装着Windows和vCenter,通过vCenter管理着16台ESXi服务器。

如果不安装vCenter的话,通过ESXi提供的vSphere WebClient可以访问单机(ESXi),也能作成虚拟机vm等,但是这样的云服务没有任何工业意义,即不能实现高可用性,不能实现共享存储,只能单纯的将一台强大的服务器分成若干台小型机而已。

下图是ESXi的系统界面,可以把它想象成linux OS的一个简易UI版,使用 Alt + F1 也可以切换到命令行模式,在命令行模式中

image

可以直接输入command进行操作,但是跟linux的命令有差异。另外如果要开启SSH连接的话,可以在之前的简易UI版中进行设置。

3. vCenter Server - 虚拟化平台的司令部

vCenter是管理虚拟化平台的核心服务,通过vCenter实现对所有vSphere内环境的统括性管理,vCenter可以安装在物理主机上,

也可以安装在虚拟机上。vCenter主要有如下的大的功能:

  1. 对所有vSphere内的设备进行统一管理。
  2. 对vSphere自身的各种功能进行管理。(这里所说的vSphere包含了ESXi和vCenter)

vCenter的功能是在太庞大了,后面再慢慢写。

4. vSphere client / vSphere WebClient - 虚拟化的入口

vSphere client是C#编写的客户端,vSphere WebClient是一个运行在本地的通过浏览器运行的网络程序,vSphere Client客户端运行更快,但是自动VMware6.5之后就不提供了,只能使用vSphere webClient或是之前版本的vSphere Client。

如果要访问vSphere环境,即vCenter中的服务器存储器之类,必须要通过上面的两个client接口。

如下是WebClient的界面:

image

5. 虚拟机

如下图中,运行在ESXi中的OS/APP,都是一个个的文件,可以导出为OVF模板文件。(相当于将通常概念的PC环境整体打包备份)

image

这些虚拟机运行在各自ESXi定义出来的硬件环境上,就是说这些虚拟OS它所接触到的CPU/HDD/Memory,都是ESXi通过软件定义出来的,通过vSphere WebClient可以动态调整它的硬件资源。

上面说了这些虚拟机实际上都是一个个的文件(.vmdk/.vmx)等,就跟通常的文件一样能方便的备份或传输。

参考下面的这个图:

image

上图中,一台ESXi Server上运行了三个虚拟机。

逻辑上说,每个虚拟机有独立的硬件和网络资源,当然这些硬件和网络资源都是ESXi虚拟化出来的。 但是物理上说,这三个虚拟机只是三个保存在存储中的文件而已。

6. 共享存储

image

存储和网络可以说是整个虚拟化的关键,没有虚拟化存储和虚拟化网络就没有云计算。通过虚拟化存储,实现一台机器故障之后,故障机器上面的OS马上转移到其他机器上去,即热迁移。如果不是共享存储的话,文件copy过去也要耗时不少,共享存储下,只是这个虚拟机换了一种交互模式而已。