首页 运维干货VxFS(Veritas File System)文件系统简介

VxFS(Veritas File System)文件系统简介

运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai
领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维

VxFS(Veritas File System)文件系统通常被应用于分布式集群、双机、异地容灾等高可靠解决方案中,它主要是和VCS/VVR/GCO/VxVM这些软件配套使用。从我使用VxFS的经验来看,该文件系统的一大优势是——由于HA的主、备节点上可以同时在线看到相同的磁盘组(Diskgroup),VxFS可以解实现自动对磁盘组加锁、解锁,从而保证存储设备只在主节点上可以I/O。

下面系统的介绍下VxFS及其使用方法:

Veritas File System (VxFS) 是首个商业日志记录文件系统。通过日志记录功能,元数据更改首先写入到日志,然后再写入到磁盘。由于无需在多处写入更改,且元数据是异步写入的,因此吞吐量的速度较快。VxFS 也是基于扩展区的意向日志记录文件系统。VxFS 设计用于要求高性能和高可用性,并且可以处理大量数据的操作环境。

一. VxFS 的主要组件包括:
1. 日志记录
任何文件系统的一个重要环节都是如何在发生系统崩溃时进行恢复。早期的方法要求对整个文件系统进行扫描,这往往会耗费较长的时间。较好的解决方案是采用对文件的元数据进行日志记录的方法。

每当发生文件系统更改,VxFS 都会将新属性信息记录到文件系统的保留区域内。只有元数据写入日志后,文件系统才能将实际数据写入到磁盘。如果发生系统崩溃,系统恢复代码会对元数据日志进行分析并尝试只清理这些文件。如果不执行日志记录功能,则文件系统检查 (fsck) 必须查看所有元数据。

意向日志记录可通过记录文件系统事务,最大限度地缩短系统异常关闭后的宕机时间。系统意外停止时,可重放此日志,完成未完成的事务。文件系统的检查和修复时间可缩短至数秒,这与文件系统的大小无关。

默认情况下,VxFS 文件系统会在将事务提交到磁盘之前记录文件事务,从而缩短系统异常停止后检查和修复文件系统的时间。

2. 扩展区
扩展区是计算机文件系统中存储器的连续区域,保留用于文件。开始向文件写入时,分配整个扩展区。再次向该文件写入时,数据从先前写入停止的位置继续。这样可以减少或消除文件碎片。由于 VxFS 是基于扩展区的文件系统,因此,寻址是通过扩展区(可由多个块组成)而不是单块段完成。因此,扩展区可提高文件系统吞吐量。

3.文件系统磁盘布局
磁盘布局是文件系统在磁盘上存储的方式。

二. VxFS的基本用法:
1. 创建一个VxFS文件系统
mkfs命令通过对特定的字符设备文件的写入创建VxFS文件系统,特定的字符设备是指一个slice或者一个VxVM的卷。Mkfs在文件系统内建立一个root目录和一个lost+found目录。在运行mkfs之前,必须创建目标设备。

创建文件系统的命令为:
mkfs [ -F vxfs ] [generic_options] [ -o specific_options ] special [ size ]
其中解释如下:
vxfs 文件系统格式
generic_options 普通文件系统选项
specific_options VxFS的特殊选项
-o largefiles 允许用户创建超过2G的文件
special 目标设备
size 新文件系统的大小,单位是sector
例如:
# mkfs -F vxfs /dev/vx/rdsk/diskgroup/volume 12288

2. Mount一个文件系统
可以使用mount命令mount一个VxFS的文件系统。当你使用mount命令时,一般的mount命令分析参数和-F FSType选项指定文件系统。Mount命令首先查找/etc/fs/FSType目录,然后是/usr/lib/fs/FSType目录。如果不提供-F选项,mount命令搜索/etc/vfstab来制定文件系统和挂接点。
在创建了VxFS文件系统以后,你可以用mount命令来mount这个文件系统。用法如下:
mount [ -F vxfs ] [generic_options ] [ -r] [-o specific_options] special mount_point
解释如下:
vxfs 文件系统
generic_options mount命令通用选项
specific_options VxFS的特别选项
special 特定块设备
mount_point 挂接点
-r 文件系统只读

例如:
# mount -F vxfs -o delaylog /dev/vx/dsk/fsvol/vol1 /ext

使用fstyp验证文件系统类型,方法如下:
fstyp -v special

3. 更改文件系统大小
可以使用fsadm命令扩大或者缩小文件系统。
3.1 扩宽一个文件系统
如果一个VxFS文件系统不够大你可以增加它的大小,单位是512byte的块。如果文件系统满了,忙等,可能失败。扩展文件系统的语法是:
/usr/lib/fs/vxfs/fsadm [ -b newsize ] [ -r rawdev ] mount_point
解释如下:
newsize 文件系统需要增加的块
mount_point 文件系统的挂接点
-r rawdev 如果在/etc/vfstab中没有的或者fsadm不能识别的原设备,就制定原设备的目录和文件名
例如:
fsadm -b 22528 /ext
给/ext扩展到22528个块

3.2 缩小一个文件系统
就算文件系统已经mount了,你也可以使用fsadm来减小文件系统的大小。命令语法是:
fsadm [ -b newsize ] [ -r rawdev ] mount_point
例如:
#fsadm -b 20480 /ext

3.3 改造一个文件系统
你可以使用fsadm来改造一个有碎片的文件系统,这样有可能可以减少前面介绍的方法不能减小文件系统大小。
语法如下:
fsadm [ -e ] [ -d ] [-E ] [ -D ] [ -r rawdev ] mount_point
解释如下:
-d 对目录重新排序,整理碎片
-D 生成碎片报告
-e 最小化文件系统碎片
-E 生成扩展碎片报告
例如:
# fsadm -EeDd /ext

4. 备份和恢复一个文件系统
备份一个文件系统,需要先创建一个只读的文件系统快照,然后备份这个快照。这个过程允许你保持主文件系统在线。这个快照是创建快照期间的一个文件系统拷贝。
4.1 创建和mount一个文件系统快照
备份一个VxFS的文件系统的第一步是创建和挂接一个快照文件系统,创建和挂接的语法如下:
mount [ -F vxfs ] -o snapof=source, [snapsize=size] destination snap_mount_point
解释如下:
source 需要拷贝的文件系统的设备名或者挂接点
destination 创建快照的目标设备名
size 大小
snap_mount_point 挂接快照的位置,之前必须存在
例如:
在/dev/vx/dsk/fsvol/vol1上创建一个/home的快照文件系统并把它挂接到/snapmount下:
#mount -F vxfs -o snapof=/dev/vx/dsk/fsvol/vol1,snapsize=32768 \
/dev/vx/dsk/fsvol/vol1 /snapmount
然后就可以备份文件系统了

4.2 备份一个文件系统
创建了快照文件系统以后可以使用vxfump来备份它,备份一个文件系统的语法是:
vxdump [ -c ] [-f backupdev] snap_mount_point
-c 指定使用盒式磁带
backupdev 备份文件系统的设备
snap_mount_point 快照文件系统挂接点
例如:
备份挂接在/snapmount下VxFS快照文件系统到叫做/dev/rmt/00mm的磁带设备上,输入:
#vxfump -cf /dev/rmt/00m /snapmount

4.3 恢复一个文件系统
备份一个文件系统以后,可以使用vxrestore命令来恢复它。首先,创建并挂接一个空的文件系统,然后是用下面的语法来恢复他:
vxrestore [-v] [-x] [filename]
解释如下:
-v 指定详细模式
-x 从磁带上解压指定文件名的文件
filename 恢复到的文件或者目录,如果filename省略,根文件夹被解压
例如:
使用/restore做为挂接点恢复一个VxFS快照文件系统,输入:
#vxrestore -vx /restore

5. vxfs文件系统的快速I/O实验
我们可以在两个不同的文件系统上做一个试验,来验证vxfs的快速I/O特性。首先创建一个vxfs的文件系统,然后在一个ufs的文件系统和一个vxfs上一起开始创建一个500M大小的文件,ufs文件系统先做。
使用mkfile命令:
#mkfile 500m testfile
最终的测试结论是vxfs的I/O速度比ufs快得多。

三. VxFS的整体评价:
无需对数据或数据锁定进行限制,也无需增加存储就能完成完全备份;
数据访问不中断;
大型文件和I/O(如图形和视频文件)吞吐量更大;
通过改善文件系统的布局而提高性能;
自动调整I/O策略,使之满足VERITAS Volume Manager的数据;
布局、从而提供最佳的性能;
管理文件系统的灵活性和磁盘性能相结合;
提高NFS环境中UFS上的性能;
通过优化大型I/O请求的吞吐量而提高性能;
轻松地满足大量用户对空间的需求。

本文链接:https://www.yunweipai.com/1752.html

网友评论comments

发表回复

您的电子邮箱地址不会被公开。

  1. simon说道:

    这个文件系统感觉脱离了vxvm后就没法单独使用阿。

  2. ixwebhosting说道:

    内容分享的好棒的,来学习一下

Copyright © 2012-2022 YUNWEIPAI.COM - 运维派 京ICP备16064699号-6
扫二维码
扫二维码
返回顶部