删除卷、磁盘和磁盘组
在删除卷之前卸载挂载点 /data 并从 vfstab 中删除条目。
# umount /data
删除卷后,我们可以删除磁盘组中的磁盘。
但是最后一个磁盘无法删除。
为此,我们必须删除整个磁盘组 mydg。
移除 DG 后,我们可以在任何其他 DG 中使用这些磁盘。
# vxassist -g mydg remove volume myvol # vxdg -g mydg rmdisk disk02 # vxdg -g mydg rmdisk disk01 VxVM vxdg ERROR V-5-1-10127 disassociating disk-media disk01: Cannot remove last disk in disk group
# vxdg destroy mydg
将新磁盘添加到现有磁盘组
我们也可以在创建磁盘组后添加磁盘。
在添加新磁盘之前对其进行初始化。
# vxdisksetup -i c1t3d0 # vxdg -g mydg adddisk disk02=c1t3d0
要检查我们刚刚创建的卷的布局:
# vxprint -g mydg -htr ............. dg mydg default default 28000 1381663220.16.onitroad dm disk01 c1t2d0s2 auto 65536 2027168 dm disk02 c1t3d0s2 auto 65536 2027168 v myvol - ENABLED ACTIVE 1024000 SELECT - fsgen pl myvol-01 myvol ENABLED ACTIVE 1024000 CONCAT - RW sd disk01-01 myvol-01 disk01 0 1024000 0 c1t2d0 ENA
正如我们在上面的输出中看到的那样,创建了一个包含一个子磁盘的 plex,其中包含卷 myvol。
我们还可以在第 6 列中看到布局为 concat。
要查看 mydg 中磁盘的磁盘属性:
# vxdisk -p list c1t2d0 DISK : c1t2d0s2 DISKID : 1381663112.11.onitroad VID : VMware, UDID : VMware%2C%5FVMware%20Virtual%20S%5FDISKS%5F6000C2952A4E5B4ACE2B2AE07A473A35 SCSI_VERSION : 2 REVISION : 1.0 PID : VMware Virtual S PHYS_CTLR_NAME : /pci@0,0/pci15ad,1976@10 MEDIA_TYPE : hdd LUN_SNO_ORDER : 0 LUN_SERIAL_NO : 6000C2952A4E5B4ACE2B2AE07A473A35 LIBNAME : scsi3_jbod DMP_DEVICE : c1t2d0 CAB_SERIAL_NO : DISKS ATYPE : Disk ARRAY_PORT_PWWN: ANAME : Disk TRANSPORT : SCSI
初始化与封装
现在在继续之前让我们看看封装和初始化之间的区别是什么。
初始化 初始化磁盘时,会在磁盘上创建专用和公共区域(置于 VxVM 控制之下),并将 VM 磁盘头信息写入专用区域。
磁盘上已经存在的所有数据都将被删除。
封装磁盘在初始化时处于 VxVM 控制之下,但在此方法中保留了数据。
现在通过指定我们刚刚初始化的磁盘来创建磁盘组 mydg。
我们可以为我们喜欢的磁盘而不是 disk01 指定任何名称。
# vxdg init mydg disk01=c1t2d0 bash-3.2# vxdg list NAME STATE ID mydg enabled,cds 1381663220.16.onitroad
bash-3.2# vxdisk -eoalldgs list DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR c1t0d0s2 auto:none - - online invalid c1t0d0s2 - c1t1d0s2 auto:none - - online invalid c1t1d0s2 - c1t2d0s2 auto:cdsdisk disk01 mydg online c1t2d0s2 - c1t3d0s2 auto:none - - online invalid c1t3d0s2 - c1t4d0s2 auto:none - - online invalid c1t4d0s2 - c1t5d0s2 auto:none - - online invalid c1t5d0s2 - c1t6d0s2 auto:none - - online invalid c1t6d0s2 - c1t8d0s2 auto:none - - online invalid c1t8d0s2
现在在 mydg 中创建一个大约 500 MB 大小的简单串联卷 myvol。
# vxassist -g mydg make myvol 500m
在此卷上创建 vxfs 文件系统,并创建一个目录来挂载此卷。
# mkfs -F vxfs /dev/vx/rdsk/mydg/myvol
要在重新启动后保持挂载,我们可以向 /etc/vfstab 添加一个条目。
此外,通过仅使用“mount /mount-point”或者“mountall”命令将其挂载来检查 vfstab 中的条目也是一种首选方法。
# cat /etc/vfstab |grep data /dev/vx/dsk/mydg/myvol /dev/vx/rdsk/mydg/myvol /data vxfs 0 yes
# mount /data ( or mountall) bash-3.2# df -h |grep data /dev/vx/dsk/mydg/myvol 500M 2.2M 467M 1% /data
VxVM 允许系统管理员为卷配置各种卷布局,从而实现高冗余和高性能。
让我们看看如何使用 Veritas Volume Manager 创建基本卷和文件系统。
我已将六个 1 GB 磁盘(除了用于根镜像的两个 16 GB 磁盘)添加到我的 vmware 虚拟机中,以备将来的教程使用。
要检查在操作系统下扫描的所有磁盘:
# vxdisk -eoalldgs list DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR disk_8 auto:none - - online invalid c1t0d0s2 disk_9 auto:none - - online invalid c1t1d0s2 disk_10 auto:none - - online invalid c1t5d0s2 disk_11 auto:none - - online invalid c1t2d0s2 disk_12 auto:none - - online invalid c1t6d0s2 disk_13 auto:none - - online invalid c1t3d0s2 disk_14 auto:none - - online invalid c1t8d0s2 disk_15 auto:none - - online invalid c1t4d0s2
基于 OS 原生 Vs Enclosure 的命名方案
我们可以以两种方式使用 OS 本机和基于 Enclosure 的磁盘命名方案。
为方便起见,我将使用操作系统本机磁盘方案。
但你可以按照自己的方式进行。
要更改方案,请使用 vxdiskadm 命令并选择选项 20。
如果我们愿意,可以使用基于机箱的命名方案。
我们会在“vxdisk -eoalldgs list”的输出中的 DEVICE 列中看到差异,如 vxdisk 命令输出中的上方和下方所示。
检查当前的命名方案
# vxddladm get namingscheme NAMING_SCHEME PERSISTENCE LOWERCASE USE_AVID ============================================================ OS Native No Yes Yes
通过命令行更改命名方案
# vxddladm set namingscheme=ebn # vxddladm get namingscheme NAMING_SCHEME PERSISTENCE LOWERCASE USE_AVID ============================================================ Enclosure Based Yes Yes Yes
# vxdisk -eoalldgs list DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR c1t0d0s2 auto:none - - online invalid c1t0d0s2 - c1t1d0s2 auto:none - - online invalid c1t1d0s2 - c1t2d0s2 auto:none - - online invalid c1t2d0s2 - c1t3d0s2 auto:none - - online invalid c1t3d0s2 - c1t4d0s2 auto:none - - online invalid c1t4d0s2 - c1t5d0s2 auto:none - - online invalid c1t5d0s2 - c1t6d0s2 auto:none - - online invalid c1t6d0s2 - c1t8d0s2 auto:none - - online invalid c1t8d0s2
我会排除根磁盘 (c1t0d0) 和一个应该在以后用它镜像的磁盘 (c1t1d0)。
# df -h / Filesystem size used avail capacity Mounted on /dev/dsk/c1t0d0s0 15G 5.9G 8.6G 41% /
现在首先初始化我们要用于创建磁盘组的磁盘。
如果我们已经看到 vxdisk list 的输出,我们会看到所有 STATUS 为 online invalid 的磁盘。
这表明该磁盘不受 VxVM 控制。
要将其置于 VxVM 控制之下,我们将对其进行初始化。
# vxdisksetup -i c1t2d0
vxdiks 列表现在将向我们显示状态为联机,这意味着磁盘现在处于 VxVM 控制之下。
# vxdisk list DEVICE TYPE DISK GROUP STATUS c1t0d0s2 auto:none - - online invalid c1t1d0s2 auto:none - - online invalid c1t2d0s2 auto:cdsdisk - - online c1t3d0s2 auto:none - - online invalid c1t4d0s2 auto:none - - online invalid c1t5d0s2 auto:none - - online invalid c1t6d0s2 auto:none - - online invalid c1t8d0s2 auto:none - - online invalid