/ 中存储网

Storage Foundation存储系统入门

2014-12-26 16:09:20 来源:中存储网
磁盘组 disk group(DG)
    就是许多磁盘的集合。一个磁盘组可以包含至少一个磁盘,当你把许多磁盘归于一个磁盘组的时候,就可以把他们当作一个大磁盘来使用。这样做的好处,第一是节省磁盘空间,有些原有的小硬盘或者大硬盘剩余的小空间,都能被其他应用利用起来,不会像鸡肋一样,留之无肉,弃之有味;
    第二可以方便用户的管理,不用操心是否给应用软件分配了足够的存储空间,把所有应用放在一个磁盘组里面,Storage Foundation自动会为用户选择合适的空间来保存。如果以后所有的空间都被用完以后,也不用转移数据,只需要把新的磁盘加入到这个磁盘组就可以了。这样,用户就只需要把注意力放在具体的应用上面,不用再为数据的存放操心了。

    卷 volume
卷是一个逻辑概念,它是建立在磁盘组之上的逻辑单元。通过配置卷,可以将多个磁盘组合起来,以条带、镜像或者Raid5等格式保存数据,如果对卷管理熟悉的话,用户甚至可以设计自己特有的格式保存数据,那真的是一件很酷的事情(在Storage Foundation高阶中会讲到)。

    VxFS
    Storage Foundation的文件系统。文件系统是在卷的基础上创建的,一个文件系统只能属于一个卷,而一个卷可以包含多个操作系统。如果将卷做成镜像卷,那么该卷上建立的文件系统也就是镜像的。VxFS文件系统的大小可以根据卷的剩余空间大小动态调整。

    好了,介绍完上述的三个简单的概念,我们就可以开始学习使用Storage Foundation了,在本文的讲解中,我们将假设用户有三块可以被格式化的物理硬盘,分别叫disk1、disk2和disk3,通过本文的介绍,用户可以在三个硬盘上面建立文件系统来存放应用:

基本管理功能

一、创建磁盘组: 
    1. 初始化硬盘:
    vxdisksetup –i disk1 
    vxdisksetup –i disk2
    vxdisksetup –i disk3

    2. 创建一个名为TestDG的磁盘组,该磁盘组包含了上述三个磁盘:
    vxdg init TestDG disk1 disk2 disk3 (三个磁盘之间是空格分开)
    除了这种方法,用户还可以用另一种常用的方法来创建磁盘组:
    1. vxdg init TestDG TestDG01=disk1; (创建一个只包含disk1的磁盘组);
    2. vxdg –g TestDG adddisk TestDG02=disk2 (将disk2加入到该磁盘组);
    3. vxdg –g TestDG adddisk TestDG03=disk3;
    用后一种方法的优点在于可以动态的添加磁盘,如果用户在所需磁盘空间不足,需要扩容的时候,利用添加disk到磁盘组的方法,可以在不破坏现有环境下扩大系统的容量。

    3. 确定磁盘已经被初始化:
    vxdisk list (应该看到三个磁盘都已被分配到TestDG磁盘组下,而且状态是ONLINE)。如果想要查看更加详细的磁盘信息,命令是:vxdisk –s list .

二、创建卷
    1. 创建卷必须指明在哪个磁盘组下面创建,最常用的方法是:
    vxassist –g TestDG make TestVol 1g
    该命令将在TestDG上创建名为TestVol的卷,卷的大小是1个GB。

    2. 如果用户希望该卷只创建在disk1和disk2上面,不占用disk3的空间,那么需要下列命令:
    vxassist –g TestDG make TestVol 1g disk1 disk2

    3. 创建一个条带卷(RAID0)
    vxassist –g TestDG make TestVol 1g layout=stripe
    这样就在TestDG磁盘组上面建立了条带卷

    4. 现在RAID5作为一种性价比较高的存储方案,在各个行业都有广泛的应用。Storage Foundation可以让你容易的创建RAID5格式的卷:
    vxassist –g TestDG make TestVol 1g layout=raid5
    注意的是,raid5至少需要三块盘,否则不能成功;此外,做了raid5的卷的容量,至多就是三块盘总量的三分之二。

    5. 创建镜像卷:
    vxassist –g TestDG make TestVol 1g layout=mirror
    镜像卷的大小只有所占磁盘总大小的一半,因为另外一半保存了数据的副本。

    6. 创建卷成功后,查看卷的信息
    vxprint -g TestDG TestVol

三、创建文件系统并使用
    Storage Foundation可以支持用户使用两种文件系统格式,VxFS和UFS,VxFS是Symantec公司文件系统,而UFS是solaris中广泛使用的文件系统。

    1. 创建VxFS文件系统:
    mkfs –F vxfs /dev/vx/rdsk/TestDG/TestVol;
    mount –F vxfs /dev/vx/dsk/TestDG/TestVol /mnt 就可以使用了,文件格式是VxFS。

    2. 创建UFS文件系统:
    mkfs /dev/vx/rdsk/TestDG/TestVol;
    mount /dev/vx/dsk/TestDG/TestVol /mnt 就可以使用了,文件格式为UFS。

    这里需要提醒的是,创建文件系统时使用的是rdsk下面的裸设备文件,而mount挂载时候使用的是dsk下面的块设备文件。块设备文件相当于逻辑单位,是可以读写的,而裸设备文件属于字符设备,可以把它比作硬件,不能够在操作系统控制下直接读写。所有裸设备只能通过mkfs命令在操作系统下面做个映射,通过该映射来读出和写入数据。所以mkfs需要指明裸设备文件,而挂载读写的时候呢,就需要使用块设备。

Storage Foundation管理实例
    通过上文的介绍,我们已经知道如何利用Storage Foundation管理数据了,现在通过一个具体的应用,来让大家体会一下Storage Foundation的易操作性:

    如果有四块硬盘,那么是先两两做条带,然后再作镜像的读写速度快呢?还是先两个硬盘做镜像,然后两组镜像盘做条带的读写速度快?下图所示为测试环境的示意,大家可以自己去测试一下:

[img=400,204]mhtml:file://C:UsershuanyingDesktopStorage Foundation存储系统-入门_北极熊和企鹅-ChinaUnix博客.mht![/img]


表1,先镜像后条带


[img=400,219]mhtml:file://C:UsershuanyingDesktopStorage Foundation存储系统-入门_北极熊和企鹅-ChinaUnix博客.mht![/img]

表2,先条带后镜像



     假设四个磁盘分别为disk1、disk2、disk3和disk4,如果用Storage Foundation对它们进行划分,那么方法分别是:
    1. 先镜像后条带
    a) 创建磁盘组:
    vxdg init mirror_stripe_dg disk1 disk2 disk3 disk4
    b) 创建镜像条带卷
    vxassist –g mirror_stripe_dg mirror_stripe_vol 5g layout=mirror-stripe

    2. 先条带后镜像
    a) 创建磁盘组:
    vxdg init stripe_ mirror _dg disk1 disk2 disk3 disk4
    b) 创建镜像条带卷
    vxassist –g stripe_ mirror _dg stripe_ mirror _vol 5g layout= stripe-mirror

    这样,两种不同的卷形式就创建成功了。