VSAN配置手册
- 1. 配置前的基本准备工作
1.1. 手动将磁盘标记为SSD磁盘
在某些情况下,当在RAID配置中将一个SSD配置为RAID-0模式后,vSphere只将这个磁盘当作一个普通的HDD盘,而不能将它正确地识别为SSD盘。出现这种情况的时候,就需要通过命令行方式手动将这个磁盘标记为“SSD”盘。
首先,登录到vSphere的控制台,在菜单中选择‘TroubleShooting Options’:
然后,敲回车键,分别启用“Shell”和“SSH”.
这个时候,就可以通过SSH连接到这台ESXi主机。
# ssh root@10.110.x.x
成功登录以后,运行以下命令。
# esxcli storage core device list
以上这个命令将会列出这台ESXi主机上的所有磁盘列表,将SSD盘找出来,并且将这个SSD盘的ID复制下来,后面会用到。(一般来说,SSD盘的容量比普通硬盘小很多,所以可以根据容量轻易地将SSD盘找出来。)
然后,运行以下命令,将命令中的ID(红色部分)替换成刚刚复制下来的ID。
# esxcli storage nmp satp rule add -s VMW_SATP_LOCAL -d naa.6b8ca3a0e81e03001a4e539c08862b30 -o enable_ssd
# esxcli storage core claiming reclaim -d naa.6b8ca3a0e81e03001a4e539c08862b30
下面这个命令可以验证SSD盘是否已经被成功地标记成”SSD”了:
# esxcli storage core device list -d naa.6b8ca3a0e81e03001a4e539c08862b30
1.2. 为vCenter, vSphere, VSAN添加许可证
在vCenter网页客户端里,依次点击主页->主机和群集,然后选择vCenter目录,再选管理->设置->许可,点“分配许可证密钥”:
在新窗口里,选择“分配新的许可证密钥”,输入新密钥后,依次点击解码->确定。
下面给每一台ESXi主机添加许可证。如下图所示,选择每一个需要添加许可证的主机,在右边窗口里依次选择管理->设置->许可,点“分配许可证密钥”:
下面添加VSAN许可证,VSAN许可证是针对于某一个群集添加的。选中需要添加许可证的VSAN群集,依次点击管理->设置->虚拟SAN许可->分配许可证密钥:
1.3. 删除磁盘原有的分区
如果一台ESXi主机的某个磁盘,在升级vSphere之前用作为一个存储器(datastore),那么,如果这个磁盘没有被格式化过,它上面就仍然保持着原来的分区。
而VSAN要求每个被添加到VSAN磁盘组里的磁盘都必须是一块“干净”的磁盘,也就是说,磁盘上面不能有任何分区表。所以,在这种情况下,就需要将磁盘上原来的分区表删除。
为了删除分区表,利用的是Linux系统下常用的”GPT parted”工具,在许多Linux发行版里,这个工具的名字叫做”parted”。在ESXi主机命令行,这个工具叫做“partedUtil”.
首先,在vCenter页面客户端里,选中VSAN群集,选择“添加磁盘组”,确认有哪些磁盘已经被识别出来:
从截图中可以看到,当前只有一个SSD盘和一个HDD硬盘被识别出来,记录下图中红框部分的这两个磁盘名。
然后,通过SSH连接到这台ESXi主机。(连接方法与1.1节相同)
在命令行界面,运行以下命令,这个命令会列出所有磁盘的详细信息:
# esxcli storage core device list
查看所有磁盘的磁盘名,把它们摘录出来,例如,总共有4块盘,如下所示:
naa.6b8ca3a0e81e29001ac40ec147ca070e
naa.6b8ca3a0e81e29001ac40e3b3fd36bb2
naa.6b8ca3a0e81e29001ac40e834416a708
naa.6b8ca3a0e81e29001ac40d7f349ab358
比较前面的截图和这个列表,可以发现有两个磁盘没有被 VSAN识别出来。它们是
naa.6b8ca3a0e81e29001ac40ec147ca070e
naa.6b8ca3a0e81e29001ac40d7f349ab358
这两个磁盘没有被VSAN识别出来,可能有两个原因。一是这个盘上安装了ESXi操作系统,所以它不能再被VSAN使用了。另一个原因是这块盘虽然现在没有被使用,但是它以前曾经被作为datastore,所以还有遗留的分区表。所以,现在需要找出哪个磁盘是用来安装ESXi操作系统的。切换到存储器界面,找到这台主机的默认存储器,查看其信息:
可以看出,磁盘‘naa.6b8ca3a0e81e29001ac40d7f349ab358’是这台ESXi主机的启动盘,所以这个磁盘不能被VSAN使用。
综合以上的所有分析,结论就是:‘naa.6b8ca3a0e81e29001ac40ec147ca070e’这个磁盘当前未被使用,但是上面有遗留的分区,所以也不能被VSAN识别出来。下面的操作就是来删除这个分区。
运行以下命令,获取这块磁盘的详细信息:
# partedUtil get /vmfs/devices/disks/naa.6b8ca3a0e81e29001ac40ec147ca070e
这个命令会输出一个信息表,示例如下:
243133 255 63 3905945600
1 2048 3905945566 0 0
第二行的第1个数字(红色数字)代表有几个分区,在这个例子中是只有一个分区。然后运行以下命令直接删除这个分区:
# partedUtil delete /vmfs/devices/disks/naa.6b8ca3a0e81e29001ac40ec147ca070e 1
删除完成后,现在返回vCenter网页客户端,再尝试添加VSAN磁盘组,现在发现这个磁盘盘被删除分区后已经能够被VSAN利用了:
- 2. 创建vSphere标准交换机或分布式交换机
VSAN网络可以使用vSphere标准交换机(vSphere Standard Switch,简称vSS)或者分布式交换机(vSphere Distributed Switch,简称vDS)。如果需要创建标准交换机,可查看2.1节。如果需要创建分布式交换机,可查看2.2节。这两节是并列的关系,根据需要查看其中一节即可。
2.1. 使用vSphere标准交换机
在vCenter主页面,点击“主机和群集”。
选择需要创建标准交换机 的某一台主机,点击管理->网络->虚拟交换机。然后点击右边的带“+”的按钮,创建VSAN网络:
在下个页面,选择“VMkernel 网络适配器”:
然后,选择一个现有交换机(当然,这个时候也可以选择新建一个标准交换机,但是,创建新标准交换机时,必须保证有一个未被使用的网卡做的这个新交换机的上连链路):
输入一个自定义的名称,然后必须勾选“虚拟SAN流量”
输入一个可用的IP地址和子网掩码,
点击下一步,再点击完成。
注意:标准交换机需要在每一个ESXi主机都分别添加,添加过程相同,只需要在每一台ESXi主机上重复以上过程即可。
2.2. 使用vSphere分布式交换机
在vCenter主页,选中网络,再点击“操作” ->“新建Distributed Switch”,如图所示:
然后,在弹出的页面中,输入一个分布式交换机名称:
保持交换机的版本为默认的5.5.0:
下一步,需要选择“上行链路数”。一般来说,每个ESXi主机需要使用一块网卡作为上行链路,所以,VSAN群集中有多少个ESXi主机,这台的上行链路数就应该设定为多少。这个数值与VSAN群集包含的主机数量完全相关。
然后,也可勾选“创建默认端口组”,输入一个自定义的名称。
这样,分布式交换机就创建好了。
- 3. 打开VSAN
如何在vCenter中创建群集不再赘述,这与传统创建群集的方式完全相同。假设一个群集已经创建成功,并且已经有主机添加进来,现在需要做的就是在这个群集上打开VSAN功能。如图所示,选中群集名称,点击管理->虚拟SAN->常规,在右上角点编辑,再在弹出的对话框中点“打开虚拟SAN”即可,向存储中添加磁盘的模式可以设置为“手动”。
- 4. 添加新的ESXi主机到VSAN群集
注意:以下的步骤展示如何在一台新添加的主机上启用分布式交换机。如果需要使用标准交换机,请参考2.1节,并且以下关于添加分布式交换机的相关步骤可以省略。
在vCenter网页客户端主页,选择网络:
然后选择上面步骤中创建好的分布式交换机“VSAN vDS”,在右边菜单中,选择“入门”->“添加和管理主机”:
选择“添加主机”:
点击“+新主机”按钮:
在新对话框选择新加入的主机(这个主机已经被添加到群集中,只是还没有配置VSAN网络而已)
勾选下面两个对话框
选择一个网卡来作为上行链路,点击“Assign uplink”:
在 下一步,点击“+新建适配器”:
选择一个分布式交换机端口组,就是刚刚创建的“VSAN Network”:
勾选 “虚拟SAN流量” :
输入可用的IP地址和相应的子网掩码:
确认状态:
现在回到主页,选择“主机和群集”:
然后进入到群集的管理页面,确认这个ESXi主机已经加入到了这个VSAN组中,但是,它的磁盘还没有被添加进来。所以,选中这个新主机,手动创建一个磁盘组:
选择一个SSD盘和最多7个HDD硬盘:
然后确认这个磁盘组已经被成功地创建了:
- 5. 创建虚拟机存储策略
当启用VSAN以后,我们就可以利用VSAN提供的功能来创建一些虚拟机存储策略。例如:我们可以创建一个策略,这个策略忍受一台主机故障。执行以下步骤:
在主页中,选择“规则和配置文件”:
选择虚拟机存储策略:
点击“添加”按钮:
先输入一个自定义的名称,在下一步,“基于供应商特定功能的规则”中,选择“VSAN”。在“添加功能”中,选择“Number of failures of tolerate”:
保持默认值为1:
然后点击结束完成存储策略的创建。
接着按着“创建虚拟机”的常规流程创建一个虚拟机。直到接下来这一步,在“虚拟机存储策略”选项栏选项刚刚创建好的策略,在下面的存储中,选择兼容的“vsanDatastore”:
出于测试的目的,只创建5GB的硬盘:
当虚拟机创建完成后,就可以在虚拟机的管理页面,看到虚拟机的虚拟磁盘在物理主机上的放置情况,其中包含两个“组件”(Component)和一个“证明”(Witness):