在 VMware ESXi 中,如果需要通过命令行创建多个 VMFS 分区,可以使用 esxcli
工具来完成。以下是详细步骤:
步骤 1:连接到 ESXi 主机
- 使用 SSH 客户端(如 PuTTY)连接到 ESXi 主机。
- 使用管理员账号登录。
步骤 2:列出可用设备
运行以下命令列出所有存储设备及其信息:
esxcli storage core device list
找到目标设备的 设备名称(通常以 naa.
或 mpx.vmhba
开头)。
输出示例:
[root@localhost:~] esxcli storage core device list | grep -A6 ^naa
naa.6d09466030e13d002b6bb3ce0623a5b7
Display Name: Local DELL Disk (naa.6d09466030e13d002b6bb3ce0623a5b7)
Has Settable Display Name: true
Size: 953344
Device Type: Direct-Access
Multipath Plugin: HPP
Devfs Path: /vmfs/devices/disks/naa.6d09466030e13d002b6bb3ce0623a5b7
--
naa.6d09466030e13d002b9c78a7057b2732
Display Name: Local DELL Disk (naa.6d09466030e13d002b9c78a7057b2732)
Has Settable Display Name: true
Size: 28613120
Device Type: Direct-Access
Multipath Plugin: HPP
Devfs Path: /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732
步骤 3:创建分区表
为目标设备创建分区表(GPT 格式):
partedUtil mklabel /vmfs/devices/disks/<device_name> gpt
将 <device_name>
替换为实际的设备名称(如 naa.6000c29e3b5d1e7e
)。
输出示例:
[root@localhost:~] partedUtil mklabel /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt
[root@localhost:~]
谨慎操作,会清除所有数据!!!
步骤 4:创建多个分区
创建分区时需要指定起始扇区和结束扇区。以下是通用步骤:
1. 确定设备扇区信息
查看设备的扇区信息(如扇区大小、总扇区数):
partedUtil getptbl /vmfs/devices/disks/<device_name>
输出示例:
[root@localhost:~] partedUtil getptbl /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732
gpt
3647660 255 63 58599669760
- gpt: 表示磁盘的分区表格式为 GPT(GUID Partition Table)
- 3647660:柱面数
- 255:磁头数
- 63:每个磁头上的扇区数
- 58599669760: 实际是磁盘的总扇区数
磁盘大小可以通过以下公式计算:
磁盘大小 (字节)=扇区总数×每扇区大小 (512 字节)
计算总字节数:
58599669760×512=30005929877504字节
转换为TB:
磁盘大小(TB)=1TB=1024^4字节:30005929877504/1024^4≈27.28TB
2. 创建每个分区
使用以下命令创建分区:
partedUtil setptbl /vmfs/devices/disks/<device_name> gpt "<num> <start> <end> AA31E02A400F11DB9590000C2911D1B8 0"
<num>
:分区编号(如1
、2
等)<start>
:起始扇区<end>
:结束扇区AA31E02A400F11DB9590000C2911D1B8
: 分区类型,显示常用的分区类型指南partedUtil showGuids
示例:创建多个分区
- 分区 1:从扇区
2048
开始,到扇区4300800000
结束。4300800000-2048=4300797952=2TB - 分区 2:从扇区
4300800001
开始,到扇区8601597953
结束。 - 分区 3:从扇区
8601597954
开始,到扇区12902395906
结束。 - 分区 4:从扇区
12902395907
开始,到扇区17203193859
结束。 - 分区 5:从扇区
17203193860
开始,到扇区21503991812
结束。 - 分区 6:从扇区
21503991813
开始,到扇区25804789765
结束。 - 分区 7:从扇区
25804789766
开始,到扇区30105587718
结束。 - 分区 8:从扇区
30105587719
开始,到扇区34406385671
结束。 - 分区 9:从扇区
34406385672
开始,到扇区58599668760
结束。
命令如下:
[root@localhost:~] partedUtil setptbl /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "1 2048 4300800000 AA31E02A400F11DB9590000C2911D1B8 0"
gpt
0 0 0 0
1 2048 4300800000 AA31E02A400F11DB9590000C2911D1B8 0
# 添加多个分区
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "2 4300800001 8601597953 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "3 8601597954 12902395906 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "4 12902395907 17203193859 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "5 17203193860 21503991812 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "6 21503991813 25804789765 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "7 25804789766 30105587718 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "8 30105587719 34406385671 AA31E02A400F11DB9590000C2911D1B8 0"
partedUtil add /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732 gpt "9 34406385672 58599668760 AA31E02A400F11DB9590000C2911D1B8 0"
[root@localhost:~] partedUtil getptbl /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732
gpt
3647660 255 63 58599669760
1 2048 4300800000 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
2 4300800001 8601597953 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
3 8601597954 12902395906 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
4 12902395907 17203193859 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
5 17203193860 21503991812 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
6 21503991813 25804789765 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
7 25804789766 30105587718 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
8 30105587719 34406385671 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
9 34406385672 58599668760 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
步骤 5:格式化分区为 VMFS
-
列出新创建的分区:
ls /vmfs/devices/disks/<device_name>:*
-
对每个分区格式化为 VMFS 文件系统:
vmkfstools -C vmfs6 -S <datastore_name> /vmfs/devices/disks/<device_name>:<partition_number>
<datastore_name>
:数据存储名称(如datastore1
)。<partition_number>
:分区编号(如1
、2
等)。
示例:格式化多个分区
vmkfstools -C vmfs6 -S data1 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:1
vmkfstools -C vmfs6 -S data2 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:2
vmkfstools -C vmfs6 -S data3 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:3
vmkfstools -C vmfs6 -S data4 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:4
vmkfstools -C vmfs6 -S data5 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:5
vmkfstools -C vmfs6 -S data6 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:6
vmkfstools -C vmfs6 -S data7 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:7
vmkfstools -C vmfs6 -S data8 /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:8
vmkfstools -C vmfs6 -S databackup /vmfs/devices/disks/naa.6d09466030e13d002b9c78a7057b2732:9
步骤 6:验证
查看已创建的 VMFS 数据存储:
esxcli storage vmfs extent list
输出示例:
[root@localhost:~] esxcli storage vmfs extent list
Volume Name VMFS UUID Extent Number Device Name Partition
------------------------------------------ ----------------------------------- ------------- ------------------------------------ ---------
datastore1 675691da-b2a444d8-fd20-20040ff6f0ac 0 naa.6d09466030e13d002b6bb3ce0623a5b7 8
data1 6758f5a6-bcaa9ab0-b870-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 1
data2 6758f5a7-e9d0ac40-659c-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 2
data3 6758f5a7-1d82d8b0-ccab-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 3
data4 6758f5a8-728eae40-2033-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 4
data5 6758f5a8-a8d46970-2f68-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 5
data6 6758f5a8-df1c5778-9109-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 6
data7 6758f5a9-151ade08-3114-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 7
data8 6758f5a9-49325890-6930-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 8
databackup 6758f5ab-58315a58-7210-20040ff6f0ac 0 naa.6d09466030e13d002b9c78a7057b2732 9
OSDATA-675691da-a5be8020-f070-20040ff6f0ac 675691da-a5be8020-f070-20040ff6f0ac 0 naa.6d09466030e13d002b6bb3ce0623a5b7 7
[root@localhost:~]
注意事项
- 备份数据:确保目标设备没有重要数据,因为分区和格式化会清除所有内容。
- 分区规划:根据存储需求合理规划每个分区的大小。
- 设备一致性:在集群环境中,确保所有主机识别的存储设备一致。
如有疑问或错误,欢迎评论!