ESX SERVER命令控制台添加VMFS

 
 
 
 
 
 
 
 
 
 
 
 
 
ESX SERVER
命令控制台添加 VMFS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
LeeSun
2008-1-25
今天忙呼了一下午,在 WS 的折磨下几经周折把 VMFS ESX SERVER 的命令控制台下添加成功。整个过程也没什么技术含量,高手看了希望能帮忙指导下我的错误,对新手来说应该还是有用的吧。面我就把过程
我把整个过程都记录下来与大家分享下:
对大部份的 VMWARE 的朋友来说,在真实的 VI3 环境下增加一个硬盘,并且在 VC 下添加成 VMFS 卷应该不算是什么问题。因为我手头上没有 VI3 的真实环境,在 VM6.02 虚拟环境也是勉强搭建起来运行 ESX SERVER 。我最初安装 ESX 是出于对 ESX 的学习,刚学两星期在这方面也没有太多的经验。也就没有对整体的实验进行规划,按照 VM6 Red hat 虚拟系统的步骤生成虚拟系统。硬盘只分了 8G 。在 VM 下装了 ESX3.0 玩了两天觉得有点无聊,就试着想在 ESX 下安系统玩玩,才发现硬盘空间只剩下 1G 了。无耐只能再给 ESX 加一个 15G SCSI 硬盘。
我的硬件:
CPU   INTEL E2160( 郁闷不支持 VT 技术 )
内存   2G
硬盘   80G
HOST 系统是 WIN XP SP2
 
我的物理机上运行一个 VC VM VC 用于控制 ESX ,但是由于计算机硬件 CPU 不支持 VT 技术导致虚拟系统占用了全部的 CPU CPU 在启动 ESX 开始就一直是 100% 的。最终造成 VC 无法正常使用,变成可远观而不可亵玩焉,基本上点击什么功能都是弹出错误,说什么“等待服务器响应超时”然后又是一个说什么“参考对象没有设定为一个实例的一个对象”的错误 ~~~~ 郁闷。 ESC 的启动也是奇慢无比,我个人比较懒也不想为了加一个硬盘上去做实验去关闭 ESX 等待那一个小时的启动。我想到一般的服务器都支持热插拔技术,不过好像 VM 不可以添加。我试过强行修改 VMX 配置文件添加下去也不行。
不好意思,扯远了。下边是正题:
ESX 上添加一块 15G 的硬盘,启动……我可怜的小 U 不支持 VT 技术,用了一个小时才启动完成。
ALT+F1 进入命令控制台
 
由于本人的 LINUX 基础不是很好, VMware 会更加复杂,因为会有两种情况存在。
当对齐 raw disk 或者 Raw Device Mapping(RDM) 卷,实在虚拟主机 (VM) 层次上来实现对齐的。例如,在 windows 的虚拟主机上使用 diskpar 来实现对齐。对于 VMFS 卷,会在 ESX Server 的层次上使用 fdisk 来实现对齐,正如 diskpar VM 层次。这是因为不管是 ESX Server 还是客户端都会把 MBR 放到 LUN 上面去。 ESX 必须对齐 VMFS 卷,而客户系统必需对其他们的虚拟磁盘。因此我只选择了使用 fdisk 工具来进行分区
使用 fdisk �Cl 查看系统中的磁盘分区
看到一个 Disk  /dev/sdb: 16.1 GB 16106127360 bytes 的磁盘, (LINUX 的磁盘设备命名方式,第一块 IDE 磁盘 hda 、第二块则是 hdb 以最后的一位英文字母依次递增来表示磁盘的编号。我所使用的是 SCSI 硬盘,所以编号为 sda sdb Sda1 是指 sda 的第一个文件系统=分区 ) 下面我们先对它进行分区:
在命令提示符下输入
 [root@vmware dev]# fdisk /dev/sdb
Device contains neither a valid DOS partition table nor Sun SGI or OSF disklab el
Building a new DOS disklabel. Changes will remain in memory only
until you decide to write them. After that of course the previous
content won't be recoverable.
 
 
The number of cylinders for this disk is set to 1958.
There is nothing wrong with that but this is larger than 1024
and could in certain setups cause problems with:
1) software that runs at boot time (e.g. old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g. DOS FDISK OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
 
Command (m for help): n                               (# 输入 n 参数来增加新的分区 #)
Command action          (# 选择新建的分区类型,主分区还是扩展分区;选择 p 或者 e#)
   e   extended
   p   primary partition (1-4)
p                                                      (# 这里选择 P 是主要分区 #)
Partition number (1-4): 1                                           (# 添加主分区 1 #)
First cylinder (1-15360 default 1): 1       (# 输入开始位置,直接回车;默认为 1 ,就好 #)
 
Command (m for help): x                                   (# 输入 x ,进行专家模式 #)
 
Expert command (m for help): b            # 专家行模式,输入 b ,编辑 bsd 类型分区 #
Partition number (1-4): 1                                            (# 添加主分区 1#)
New beginning of data (1-15360 default 15360):  (# 输入结束位置,直接回车;默认为 15360#)
Using default value 15360
 
Expert command (m for help): r                                (# 输入 r ,返回主菜单 #)
 
Command (m for help): t          (# 输入 t ,改变分区类型,系统会提示要改变哪个分区 #)
Selected partition 1
Hex code (type L to list codes): fb  (# 输入 fb ,如果想知道系统支持的分区类型列表,输入 l#)
Changed system type of partition 1 to fb (Unknown)
 
Command (m for help): w                              # 输入 w ,保存修改,并退出 #
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
 
Syncing disks.   
 
到了这里我们再用命令查看创建出来的分区
[root@vmware dev]# fdisk �Cl
 
看到了吧 .ID fb     System Unknown
分区创建到这里,往下走下一步
# 在()内我使用了 # 号里边的内容作了解释,如有错的地方请多多指教。用户通过提示键入 “m” ,可以显示 Fdisk 命令各个参数的说明。整个关键是在进入专家后的配置和分区类型一定要选择 fb fb 是表示系统自动选择 #
通过把分区类型声明为 fb ESX Server 会将这个分区认为一个没有被格式化的 VMFS 卷。你应该能够使用 MUI 或者 vmkfstools ,把一个 VMFS 文件系统放上去。对于 Linux 的虚拟主机,按照上面列出的程序步骤来做。对于 windows 的虚拟主机,也是按照上面的程序步骤来做。
 
贴两个跟LINUX 分区有关的表
 
 
Fdisk 分区工具的参数表:
 
   
 
LINUX 系统支持的分区类型列表
 
 
最后一步,在这里我们要使用到 VMware ESX Server-vmkfstools 文件系统管理工具对 vmhba0 适配器上的第一个磁盘分区上创建一个文件块大小为 1MB ,标签为 'mlyVMFS' VMFS3 文件系统 .
[root@vmware dev]# vmkfstools -C vmfs3 -b 1m -S mlyVMFS vmhba0:1:0:1
 
这里我把整个命令拆开解释一下:
Vmkfstools             (# 使用 Vmkfstools 工具 #)
-C                            (# 建立一个虚拟磁盘 #)
Vmfs3                    (# 创建为 VMFS3 文件格式系统 #)
-b 1m                     (# 用于指定文件块大小 , 我这里指定为 1M#)
-S mlyVMFS            (# 设置 VMFS 文件系统标签 , 我这里设置成 mlyVMFS#)
vmhba0:1:0:1
(#vmhba0 其中第一个 0 表示适配器 ,1 表示第一块目标硬盘(默认是 0 开始吧) ,0 表示 LUN( 逻辑单位编号 ),1 表示分区 . 如果这一位为 0 则表示整个磁盘 #)  
 
 
敲下命令后又开始郁闷了 ~~~~ 又等了将近一小时。在这段焦虑无比的心情下,终于看到了 VM 状态栏里的第二块硬盘一阵狂闪……系统提示 Successfully !!!
好,下面我用 VC 看一下有没有 ^o^ 大家一起看:
郁闷,居然没有。点击一下 Refresh 刷新一下。系统又弹出了那个讨厌的错误对话框说什么“等待服务器响应超时”然后又是一个说什么“参考对象没有设定为一个实例的一个对象”的错误。强行关闭 VC 再开碰碰运气。结果成功了。
 
这下心情可无比激动了,呵呵。这下可以装虚拟系统了,电脑熬了一天 CPU 100% 的快要崩溃了。这是本人第一次写教程,哪里写得不好的请大家在论坛中指出,千万不要砸我。谢谢
 
* (在使用 VMware ESX Server-vmkfstools 文件系统管理工具的时候有一点必须得注意的。就是要注意参数和命令的大小写, LINXU 也是对输入的字符和命令有大小写要求的。否则会出错)
 
 
 
以下是一些 VMware ESX Server-vmkfstools 工具的命令行
Vmkfstools - VMware ESX Server 文件 系统 管理工具

语法 :
vmkfstools OPTIONS
vmkfstools OPTIONS PARTITION
vmkfstools OPTIONS DEVICE
vmkfstools OPTIONS PATH

vmkfstools
是一个创建和维护在 VMware ESX Server 上的 虚拟 磁盘,文件系统,逻辑卷和物理存储设备的程序 . 他支持创建在一磁盘分区上创建 VMFS ,和管理保存在 VMFS 上的文件 ( 虚拟 磁盘 ).
OPTIONS 是指定操作的一个或多个命令行选项 . 被操作的文件或者 VMFS 文件系统可指定在选项后,基于 /vmfs 目录的相对或绝对的文件路径 .

PARTITION 参数用于指定分区, 应该以 vmhbaA:T:L:P 的形式,其中 A 表示适配器, T 表示目标, L 表示 LUN( 逻辑单位编号 ) P 表示分区 .P 0 表示整个磁盘 .
: vmhba0:2:3:1 指向第一个适配器,目标为 2 LUN 3 上面的第一个分区 .

DEVICE 参数用于指定设备,并且是一个以 /vmfs/ device s( 设备文件系统的挂载点 ) 开始的路径名 . 下面的子挂载点为每个设备 . 例如 : /vmfs/ device s/disks 为本地或其于 SAN 的磁盘, /vmfs/ device s/lvm VMKernel 逻辑卷, /vmfs/ device /generic 为通用 SCSI 设备,如磁带机,等等 .

PATH 参数用于指定 VMFS 文件系统或文件,为基于 /vmfs 目录下的相对或绝对路径或者文件名 .

文件系统选项
长和短形式的命令选项是相等的 . :

vmkfstools -C --createfs vmfs3
-b --blocksize #[mMkK]
-S --setfsname fsName
-Z --extendfs extension-partition
deviceName
-P --queryfs -h --humanreadable
-T --tovmfs3
-x --upgradetype [zeroedthick|eagerzeroedthick|thin]
-u --upgradefinish
vmfsPath

-C --createfs vmfs3
-b --blocksize #[mMkK]
-S --setfsname fsName
  文件块大小通过选项 -b 指定,默认文件块大小为 1MB ,文件块大小必须为 1MB 2MB 4MB 8MB. ESX Server 3 下, VMFS-2 文件系统为只读的,用户不允许创建和修改 .VMFS-3 文件系统 ESX 2.X 不可用 .
   -s 选项 设置 VMFS 文件系统标签, 该选项只能与选项 '-C' 关联使用 . 标签可容纳 128 字符,头尾不能包含空格 . 可通过如下命令修改已创建的文件系统标签 :
   ln -sf /vmfs/volumes/<FS UUID> /vmfs/volumes/<New label>

   -Z --extendfs 扩展分区
  通过增加其它分区扩展已经存在的 VMFS-3 文件系统 . 一个 VMFS-3 文件系统最多可以有 32 个分区 . 该选项不能用于 ESX Server 3 下的 VMFS-2 文件系统.

-P --queryfs
-h --human-readable
  列出当一个 VMFS 文件系统上有任何文件和目录时的文件系统属性,列出了 VMFS 版本号,构成指定 VMFS 文件系统的分区号,文件系统标签(如果有的话),文件系 UUID ,可用空间,并列出文件系统关联所有分区的设备名称.选项 '-h' 为可读的打印格式大小(如 5k 12.1M 2.1G)

文件系统升级选项

   VMFS-2 升级到 VMFS-3 文件系统需两个步骤.升级前必须卸下 `vmfs2` `vmfs3` 驱动,并装载辅助文件系统驱动程序 'fsaux' .升级第一步使用 '-T' 选项,完成后,卸下辅助文件系统 'fsaux' ,重新装入 vmfs2 vmfs3 驱动.升级第二步使用 '-u' 选项.

   -T --tovmfs3
  -x --pgradetype [zeroedthick|eagerzeroedthick|thin]
转换 VMFS-2 文件系统至 VMFS-3 格式,对于文件系统保存所有文件 . 只有文件块大小为 8MB 或更小的文件系统能被转换 . 转换是单向的,不能回滚 .

   - u --upgradefinish /vmfs/volumes/<file system label|file system UUID>
  一旦文件系统升级的第一步骤完成 ( 使用 `-T`) `vmfs2` `vmfs3` 模块必须被重新装载,选项 `-u` 用以完成文件系统的升级 .

虚拟磁盘选项

vmkfstools -c --createvirtualdisk #[gGmMkK]
  -d --diskformat [zeroedthick|eagerzeroedthick|thick|thin]
-a --adapterType [buslogic|lsilogic]
-w --writezeros
-j --inflatedisk
-U --deletevirtualdisk
-E --renamevirtualdisk srcDisk
-i --clonevirtualdisk srcDisk
-d --diskformat [rdm:<device>|rdmp:<device>|raw:<device>|thin|2gbsparse|monoflat|monosparse]
-X --extendvirtualdisk #[gGmMkK]
-M --migratevirtualdisk
-r --createrdm /vmfs/devices/disks/...
-q --queryrdm
-z --createrdmpassthru /vmfs/devices/disks/...
-v --verbose #
-g --geometry
-J --miscop [setuuid | getuuid]
vmfsPath


   -c --createvirtualdisk #[ gGmMkK ]
   -a --adaptertype [ buslogic|lsilogic ] srcFile
   -d --diskformat [ zeroedthick|eagerzeroedthick|thick|thin ]
VMFS 文件系统上以指定大小创建一虚拟磁盘 . 大小选项默认单位为字节,但可以分别通过后缀 'k' 'm' ,或 'g' 指定为 kb Mb Gb.'adaptertype' 选项允许用户去指定使用哪种设备驱动程序与虚拟磁盘通讯 .'-d' 选项表示虚拟磁盘格式 . 默认磁盘格式为 'zeroedthick'. 具体详见 'SUPPORTED DISK FORMATS' 章节 .
  -U --deletevirtualdisk
 删除指定虚拟磁盘以及关联的文件 .

  -E --renamevirtualdisk srcDisk
 重命名指定虚拟磁盘关联的文件名称。

  -i --clonevirtualdisk srcDisk
  -d --diskformat [rdm:<device>|rdmp:<device>|raw:<device>|thin|2gbsparse|monosparse|monoflat]
 创建虚拟磁盘或 raw 磁盘的一个拷贝 ( 克隆 ).

  -e --exportvirtualdisk dstDisk
 不赞成该操作 . 可以使用 '-i srcDisk -d 2gbsparse' 达到相同效果 .

  -x --extendvirtualdisk #[gGmMkK]
 扩展指定的 VMFS 虚拟盘至指定的大小 .

  -M --migratevirtualdisk
  迁移 ESX2 虚拟磁盘到 ESX3 虚拟磁盘 .

  -r --createrdm /vmfs/devices/disks/...
 在 VMFS 文件系统上影射一个 raw 磁盘到一个文件 . 一旦影射被确定,可以象控制一个普通的 VMFS 虚拟磁盘一样控制 raw 磁盘 .

  -q --queryrdm
 列出关于 raw 磁盘影射的属性 .

  -z --createdmpassthru /vmfs/devices/disks/...
 在 VMFS 文件系统上影射一个 passthrougn raw 磁盘到一个文件 . 这允许 虚拟机 器跳过 VMKernel SCSI 命令过虑的没用的 VMFS 虚拟磁盘 .

  -v --verbose #

  -g --geometry
 获取虚拟磁盘物理信息 ( 柱面,磁头数,扇区 )

  -w --writezeros
 虚拟磁盘写 0. 原存储的数据丢失 .

  -j --inflatedisk
 转换一个 thin 虚拟磁盘到预分配大小 . 原来数据和块会受到保护 .

  -J --miscop [setuuid | getuuid]
  'setuuid' 选项为虚拟磁盘创建一个唯一的标识符 (UUID) ,并保存 UUID 在虚拟磁盘的一个描述文件里 . 如果描述文件中已包含一个 UUID ,将被新的覆盖 . 请确保虚拟磁盘没有一个 UUID 才使用该项 .'getuuid' 项将显示虚拟磁盘的 UUID.

例子 :
vmkfstools -C vmfs3 -b 1m -S myVMFS vmhba1:3:0:1
vmhba 适配器 1 ,目标 3 LUN 编号 0 上的第一个磁盘分区上创建一个文件块大小为 1MB ,标签为 'myVMFS' VMFS3 文件系统

vmkfstools -Z vmhba0:1:2:4 vmhba1:3:0:1
扩展分区,原来文件系统将跨越两个分区 .vmhba0:1:2:4 vmhba1:3:0:1. 在这里 vmhba1:3:0:1 是做为文件系统的头部分区得到了扩展 .

vmkfstools -c 2048m /vmfs/volumes/myVMFS/myOS.vmdk
在名为 'myVMFS' VMFS 文件系统上创建一个文件名为 'myOS.vmdk' 的,容量大小为 2GB VMFS 虚拟磁盘 .
 

你可能感兴趣的:(server,esx,vmfs,vmkfstools,命令控制台)