题外话:我一直相信如果想搞懂某个产品或者是某个技术,那么必须要动手进行操作,而且是大量的操作。比如刚刚入行那会,为了搞懂Solaris和SUN的产品,我几乎上手了所有SUN产品的部署和安装,尤其是对于T5XXX系列的服务器,经手的数量至少7 800台,到最后基本上可以记住了主机正常启动和运行时候的输出的日志。对于VMware Cloud Foundation(VCF),我一直很想上手来学习下,但是由于时间和资源的限制一直没有机会。直到上周从R&D部门借来了几台物理机,才有机会真正上手这款产品。



为什么使用VCF?

=======================

这里我只从运维的角度来谈下我对VCF的理解:



自动化部署:日常的工作中,我们大量的工作都是重复性劳动,这种性质的劳动不仅枯燥无趣,也确实没有什么太多的技术价值,虽然小规模的规模下(例如只有4台主机),我们无法完全到体会到VCF自动部署的优势,但是当我在后续部署另外一套集群的时候,已经可以稍微体验到自动化部署带来的方便。



集中管理:对于高度集成的环境,一个难题就是如何集中管理的环境中不同的产品组件,VCF提供了一个统一的接口可以方便快捷的对整个环境进行管理和扩容,同时也提供了接口可以深入到某个产品更仔细的调查原因。



丰富的工具:除了图形界面以外,还有大量的脚本以及API接口提供给用户对环境进行管理。



一站服务:之前经常会遇到客户在多产品的环境中出现问题后无法准确定位发生故障的产品,从而创建了错误产品的SR,最终耽误了故障的处理。如果客户使用VCF后,只需要以VCF产品来报修,工程师会来判断到底是哪个产品/组件出现问题,从而进行进一步的分析和排查。



话说多了,回到我们的实验环境:



物理实验环境:

=======================

硬件准备:

服务器:7台DELL R640服务器,每台主机64G内存,240GB系统盘,10Gb网卡,其中4台机器每台有另外2个SSD(500G和900G)作为vSAN磁盘组缓存层磁盘和容量层磁盘。

存储:这7台服务器组成的vSAN环境,共3.6T,默认使用FTT0策略

网络:DELL 10Gb网络交换机,调整为MTU9000



总体来说,嵌套VCF实验环境对存储容量要求不高,但是对内存的要求还是比较高的。本次实验环境中一共使用了280G左右的内存。



真实环境中VCF的容量规划请参考文档:

《About the VMware Cloud Foundation Planning and Preparation Guide》



软件准备:

ESXi6.7U3+vCenterU3

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图13



配置vSAN后确保vSAN环境健康

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图14





(注意)记得在物理环境中执行下面的操作:

每台主机上执行下面的指令:esxcli system settings advanced set -o /VSAN/FakeSCSIReservations -i 1

虚拟交换机开启混杂模式,虚拟交换机调整为MTU9000

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图15



嵌套VCF实验规划:

=======================

1.架构选择

VCF有两种架构模式:

Standard Architecture 和 Consolidated Architecture



🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图16

Standard Architecture



🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图17

Consolidated Architecture



由于实验资源有限,我使用了第二种架构:用4台嵌套ESXi部署VCF管理域里的管理资源池,使用另外4台嵌套ESXi部署VCF管理里的计算资源池。这两套资源池(集群)使用各自的vSAN存储



2.IP规划

为了减少复杂性,嵌套环境中没有配置VLAN

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图18



3.准备License

vCenter

ESXi

vSAN

NSX

vRealize Log Insight

SDDC Manager



嵌套VCF实验准备:

=======================

1.确定部署版本

不同版本的VCF对ESXi要求是不一样的,因此需要检查VCF的release note来确定对应的ESXi版本。这次试验中使用的是VCF 3.8.1的版本,对应的ESXi版本是6.7U3

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图19



2.下载光盘介质和配置表格

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图20

VCF介质大约10G,所以下载起来比较费时间。配置表格会在部署时候使用

另外,我发现在VMware中国的网站里找不到VCF下载的链接,但是在VMware美国的网站里就可以找到,不知道是不是我一个人的特例。



3.导入嵌套ESXi OVF文件:

在ESXi6.5后,部署嵌套ESXi虚拟机后需要额外配置一些参数,因此为了减少麻烦,可以直接下载OVF文件直接部署,下载的链接如下:

https://www.michellelaverick.com/2018/04/new-nested-vsphere6-x-vsan-cluster-ovf/



为了配合VCF的实验要求,需要额外修改下嵌套ESXi VM的配置,包括:

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图21



vCPU:6

内存:32G (我尝试过16GB内存,但是部署VCF时候失败)

磁盘:系统盘VMDK为40GvSAN缓存层磁盘VMDK为80G

vSAN容量层磁盘为VMDK120G

修改VM的vmx文件,把所有的vSAN磁盘标记为SSD

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图22



4.安装ESXi操作系统

环境中一共部署了8台嵌套ESXi虚拟机,现在需要给这8台嵌套ESXi安装系统。在实际VCF部署环境中,在部署VCF之前,也需要把所有的物理服务器安装好ESXi操作系统。

注意:不用在VCF环境中提前部署vCenter



5.部署AD/DNS/DHCP/NTP服务器

这里使用的是Windows Server 2012操作系统,具体的部署方法直接网上搜索就好。



6.后续操作和检查

把嵌套ESXi主机加入到域

配置NTP服务器,开启NTP服务(随主机启动和停止)

开启SSH服务(随主机启动和停止)

检查主机名,确保主机名、域名、FQDN正常esxcli system hostname get

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图23

(重点)检查环境中DNS解析正反向解析正常

nslookup

🦀8x01 VCF 部署嵌套VCF实验环境 1 - 图24

一定要确保所有的规划中的所有主机名都可以正常的正反向解析。



至此,部署VCF之前的准备环境完成。



参考文档:

=======================

Identifying issues with and setting up name resolution on ESX/ESXi Server (1003735)

http://buildvirtual.net/troubleshoot-esxi-host-dns-and-routing-related-issues/

http://www.etgoesvirtual.com/vmware/cloud-foundation/vmware-cloud-foundation-3-5-nested-deployment-part-1/