免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6144 | 回复: 6
打印 上一主题 下一主题

SUN Volumn Manager 学习笔记系列 [复制链接]

论坛徽章:
1
子鼠
日期:2014-09-16 12:37:52
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-20 22:26 |只看该作者 |倒序浏览
sun volumn manager 学习笔记1 本贴

solaris volumn manager学习笔记 2
http://www.ixpub.net/thread-865038-1-1.html

solaris volumn manager学习笔记 3
http://www.ixpub.net/thread-865205-1-1.html

solaris volumn manager学习笔记 4
http://www.ixpub.net/thread-865523-1-1.html



正文:
sun volumn manager 学习笔记1

sun solaris 6个级别,极少有支持raid 2,3,4
raid 1+0 or raid 0+1
卷,片.软分区
卷上的文件系统

raid-1卷上可以建软分区
raid-0串联和raid-0条带
svm  use virtual disk to manage disk and related data,virtual disk called 卷,also called meta 卷
36page
metainit or metastat
状态数据库副本
卷是一组物理片,在系统中显示为单个逻辑设备.

raid-5是由片组成的.将大小相当于一片的空间存储奇偶校验信息.但奇偶检验分布于raid-5卷的所有片上.

可以对卷使用大多数文件系统命令,mkfs,mount,umount,ufsdump,ufsrestore and so on.but,不能用format.

由片构成卷.

可以通过添加片来扩展卷.扩展卷后,请用growfs来扩充文件系统.同样,扩展文件系统后,不能缩小它了.

growfs可以扩展ufs文件系统.但是growfs运行同时会暂停对卷的访问.可以growfs -s size,可以扩展文件系统以便使用所增加的磁盘空间的部分.

卷未使用,可以重命名它.卷的逻辑名称也会出现在文件系统中,逻辑卷名在块设备的/dev/md/dsk和/dev/md/rdsk.
  卷名称:/dev/md/dsk/d0   块卷 d0
         /dev/md/rdsk/d1265  原始卷d1265

状态数据库是多个复制的数据库副本的集合.一个片上可以存储多个状态数据库副本.但这样可以有受到损坏在单点故障.

热备用池是reserve用于自动替换出故障组件的片(热备件)的集合.
可以在子镜像或raid-5卷中使用这些热备件.  

磁盘集是一组物理存储卷.其中含逻辑卷和热备件.在磁盘集中创建卷后,可以像使用物理片一样使用该卷.
磁盘集在群集环境中提供数据可用性.如某台主机出故障.其他主机可以接管故障主机的磁集.

主机适配器和控制器.不同.
系统文件:/etc/lvm/mddb.cf and /etc/lvm/md.cf ,regularly back up it.
prtvtoc and metastat -p result

卷的基础片,????不要在卷的基础片上mount file system.

找出svm 使用的片. format or fmthard or smc to partition it

isainfo -v 确认系统的多少内核

lun ---logical storage unit
svm仅支持在solaris 9或运行64bit kernel使用大卷>=1tb

先在64kernel use metaclear to remove big volume.then reboot system using before solaris version

solaris 10 introduce smf ---service management facility.it enhance tranditional unix startup scipt.init runlevel and config file structure.

检查与svm关联的smf service,please use svcs.
   svcs -a|egrep \"md|meta\"


从solaris 9 begin,svm可以在sun cluster中使用多属主磁盘集来管理存储区.多属主磁盘集可允许多个节点共享磁盘集的
拥有权并同时可以写入共享磁盘.

多属主磁盘集和svm 共享磁盘集可以同时存在于同一个节点,但不支持在这两种配置之间移动磁盘集.
  目前,不支持将多属主磁盘集从一个系统导入另一个系统


svm for sun cluster不支持raid-5 volumn and transaction volumn???


架构层次:

   oracle rac
      sun cluster
         solaris


每个多属主磁盘集与节点列表相关联,metaset -s disk-set显示多属主磁盘集的输出

每个磁盘集有一个主节点.同一个群集中可以同时存在多个主节点,向磁盘集中添加每个磁盘时,此节点成为主节点

metaset -s red
metaset -s red -a /dev/did/dsk/d9
metaset -s red

metaset -s red -a -M -h nodeone
metaset

device id --did
如果不用cntndn格式来标识磁盘.可以使用sun cluster did来标识:/dev/did/dsk/dN



SVM FOR CLUSTER最多支持多个32个磁盘集.这些磁盘集可以是多属主磁盘集,共享磁盘集和本地磁盘集的任意组合.
每个多属主磁盘集最多支持每磁盘集8192卷.
状态数据库副本也有大小的.

多属主磁盘集的镜像拥有权:metastat -s diskset-name

ioctl application

每个控制器可有多个驱动器吧???????

svm状态数据库包含所有卷,热备件和磁盘集的配置和状态信息. svm可维护状态数据库的多个副本.
状态数据库更新时,只有一个状态数据库副本被更新,以防系统崩溃的情况所有更新副本都会损坏.

请不要将数据库副本放置在通过光纤连接系统的存储器.san or other attatched storage device.use ide or scsi

每个磁盘集最多有50个副本.副本不能存储在根./usr,/swap片上.

默认状态数据库大小为4m or 8192 block.但磁盘片不会哪么小.要调整.建议至少三个状态数据库副本.

从solstice disksuite升级到svm

可用副本少于一半,只能引导到单用户模式下,metadb,delete unusable 副本.

建立状态数据库副本:svm gui or  metadb -a    ----metadb -a -c number -l length-of replica -f ctds-of-slice
check 状态数据库副本的状态:metadb
delete status db backup:metadb -d


创建第一个状态数据库副本:metadb -a -f c0t0d0s7
                         metadb

向同一个片添加两个状态数据库副本:metadb -a -c 2 c1t3d0s1
                                 metadb

添加指定大小的状态数据库副本:metadb -a -c 3 -l 1034 c0t0d0s7  ---  -l指定要添加的副本的长度,用块表示
                             meta

metadb -i  ---加它显示状态标志的说明

metadb -d -f cdts-of-slice  ---删除状态数据库副本,
metadb -d -f c0t0d0s7

raid-0条带化和串联化

raid-0 volumn comprise of slice or soft partition.
有三种raid-0 volumn:
stripping
串联
串联stripping

组件是指其他逻辑卷中使用的从片到软分区的任何设备.---????????

stripping: 将数据平均分布于卷中所有的组件中.而串联是将数据先写入第一个可用组件中,直到这个组件写完才移到
下一个可用组件.串联stripping仅仅是通过添加附加组件从其原始配置扩展后的striping卷.


不能将现有文件系统直接转换为stripping ,要将现有文件系统置于stripping, 必须备份文件系统.创建卷.然后将文件系统恢昨为stripping volumn

交错值:stripping volumn上的逻辑数据区域的大小.(kb or mb) or block number.---????

create stripping volume,not modify 交错值.但可以删除卷上的数据.删除卷.使用新的交错值创建新的条带卷,然后恢复数据.

交错值为每次写入片的数据大小.stripping volume total 容量等于组件数目*最小z组件的大小.
79page

raid=0 in series stripping volumn:在stripping 上的in series,metaattach -i

create raid-o stripping volumn:metainit
扩展存储空间:metainit
expand exsting raid-0 volumn:metattach
delete raid-o volumn:metaclear

metainit volumn-name number-of-stripes components-per-stripe component-names -i interlace

interlace ---用于stripping 交错宽度.16k< x<100mb.default 16k

create raid-o volumn of three slice:
   metainit d20 1 3 c0t1d0s2 c0t2d0s2 c0t3d0s2
create 由两个片组成且交错值等于32的raid-0 stripping volumn:
   metainit d10 1 2 c0t1d0s2 c0t2d0s2 -i 32k

create 由一个片组成的串联:metainit d25 1 1 c0t1d0s2   ---stripping number,组成stripping 的片数.
create 由四个片组成的串联:metainit d40 4 1 c0t1d0s2 1 c0t2d0s2 1 c0t2d0s3 1 c0t2d1s3
   --- 创建串联d40,此串联由四个stripping组成.每个stripping由一个片组成.

扩展存储容量:通过创建串卷扩展文件系统容量,要向现在条带添加存储容量,请建串联stripping volumn

如何扩展现在数据的存储容量:
umount /filesystem
metainit volumn-name number-of-stripes compoents-per-stripe component-names
edit /etc/vfstab,so file system can reference in series name
mount /filesystem

---举例:
原来:/etc/vfstab
     /dev/dsk/c0t1d0s2 /dev/rdsk/c0t1d0s2 /docs ufs 2 yes
修改:/dev/md/d25       /dev/md/rdsk/d25   /docs ufs 2 yes

通过附加单个片来创建串联的条DAI
  metattach d2 c1t2d0s2

通过附加多个片来创建串联的条DAI
metattach d25 c1t2d0s2 c1t2d1s2 c1t2d3s2

删除raid-o volumn:
have super user priv and all data backup.
determine not need the volumn
umount /filesystem
metaclear volumn-name

raid-1 mirror volumn:用于维护raid-o volumn中相同数据副本的卷.各个镜像的raid-0 volumn称为子镜像.
热备用和镜像两个概念.
子镜像由一个或称为子镜像的raid-o卷组成.
镜像最多可以包含四个子镜像.

[ 本帖最后由 云杉上的蝴蝶 于 2008-8-24 23:12 编辑 ]

论坛徽章:
1
子鼠
日期:2014-09-16 12:37:52
2 [报告]
发表于 2008-08-20 22:57 |只看该作者
双向镜像???
svm支持raid-1+0 and raid-0+1,raid-1+0代表先建立一组镜像,然后进行条带.反之.svm显示为raid-0+1.

raid volumn mirror resync
when;submirror faiure
     system crash
     submirror offline then onine
     add newly submirror
  
完全重新同步
优化重新同步--传送任务号,出现系统故障重新引导系统期间.
部分重新同步---替换子镜像内的片后,
raid-1 volumn:
   firstly create single mirror.then add second submirror.
   swap -l can check all swap device,the swap slice must independt other slice to mirror.
   不同大小的子镜像会形成部分disk space unusable
   所有子镜像开始柱面不必相同,
   通过在建镜像之前添加其他状态数据库副本.可以提高镜像的性能.

   传送号0-9)可以确定在系统重新引导期间重新同步特定镜像的顺序


子镜像片状态:
正常  无
正在重新同步
维护  io error or open error  metastat ,metareplace -e

引导到单用户模式对raid-1 volumn affect:
   可能需要/,/usr,/swap镜像的文件系统引导到单用户模式下:boot -s ,此时所有镜像以need maintain display.--metastat
   在到单用户模式下,重新同步镜像中止.重新引导系统后, metasync -r ,开启重新同步镜像


raid-1 mirror volumn task:
从未使用的片面建镜像   metainit
从现有文件系统建镜像   metainit
从根文件系统建镜像     metainit 从根  ---分为sparc and x86 (dca)
使子镜像联机或脱机     metaonline|metaoffline
enable submirror slice  metareplace
check mirror state        metastat
modify mirror option     metaparam
expand mirror            metattach
replace submirror slice   metarepalce
replace submirror          metattach
delete mirror(cancel mirror)    metadetach or metaclear
delete 无法mount fs mirror     metadetach or metaclear
using mirror to backup        metaonline or metaoffline
105page

双向镜像或三向或四向镜像的含义

metainit volumn-name -m submirror-name  --- -m specify mirror submirror-name   指定成为镜像中第一个子镜像的组件的名字
添加第二个子镜像
  metattach volumn-name submirror-name

create double mirror
  metainit d51 1 1 c0t0d0s2   ---子镜像对应raid-0 volumn
  metainit d52 1 1 c1t0d0s2
  metainit d50 -m d51
  metattach d50 d52  

create unneed sync double mirror
   metainit d51 1 1 c0t0d0s2
   metainit d52 1 1 c1t0d0s2
   metainit d50 -m d51 d52


如何从文件系统创建raid-1 volumn
可以取消mount fs,无须重启可能完成.对于无法取消挂载的fs,like /usr and /swap,must reboot.

如果要镜像非常重要的文件系统,所有子镜像都必须仅包含一个片.


要对swap 进行mirror,保存崩溃转储,dumpadm将转储设备配置为卷.
例如:交换设备的名称为/dev/md/dsk/d2,请使用dumpadm将此设备配置为
转储设备.

116page

论坛徽章:
1
子鼠
日期:2014-09-16 12:37:52
3 [报告]
发表于 2008-08-21 20:48 |只看该作者
sparc :如何从/ fs create raid-1 volumn
同与无法挂载的其他任何文件系统进行镜像的过程类似,区别在于运行metaroot,而不是
editor /etc/vfstab,另外,进行镜像前,还需要记录备用引导设备的路径.因为如果子镜像失败.
此备用引导设备可以重新引导系统.

由子镜像组成镜像.其实可以认为片对应一个子镜像的.呵呵.

构建/ fs的流程:
  确定镜像 / fs的片
  在确定的片上建新一个raid-0 volumn
     metainit -f volumn-name number-of-stripes compoents-per-stripe componet-name

  在未使用的片上建另一个raid-0 volumn,用作第二个子镜像,此不能少于原来子镜像的大小.
     metainit volumn-name number-of-stripes   components-per-stripe  component-name
创建单向镜像:
  metainit volumn-name -m submirror-name   --- -m 指定创建镜像,submirror-name是第一个/组件的名字.

重新mount进行镜像的文件系统.
  metaroot volumn-name
  reboot
使用metattach附加第二个子镜像
  metattach volumn-name submirror-name
记录替代引导路径:
   确定备用根设备的路径
     ls -l  子镜像第二个片
     记录/devices目录后面的字符串,根据是sd或是ide,改为disk
     使用openboot from nvalias 为辅助根文件系统镜像定义备份根设备别名:
        ok  nvalias backup_root /sbus@1,f800000/esp@1,2000000/disk@3,0:a
        114page
     重新定义boot-device别名,使其按主子镜像和辅助子镜像的使用顺序来引导,并存储配置.
     ok printenv boot-device
     boot-device disk net
     ok setenv boot-device disk backup_root net
     boot-device disk backup_root net
     ok nvstore  ---ok boot backup_root 从第二镜像启动


sparc:从/ 建镜像:
metainit -f d1 1 1 c0t0d0s0
metainit d2 1 1 c0t1d0s0
metainit d0 -m d1
metaroot d0
lockfs -fa
reboot
metattach d0 d2
ls -l /dev/dsk/c0t1d0s0
init 0
ok nvalias backup_root /pci@1f,0/
ok setenv boot-device disk backup_root net
ok nvstore



x86:从/ fs create raid-1 volumn
from solaris 10,grand unified bootloader(grub)取代了基于x86的系统中用于
引导过程和配置的dca(device configuration assistant).

基于 X86对/ FS建镜像和SPARC差不多,但bios and fdisk partition cause mirror process more complex

x86:如何use grub to create raid-1 volumn for / fs
   verify bios if bootable from secondary submirror.
     bios类似于based-sparc prom
   verify fdisk partition  if support root mirror
    为何,solaris x86引导分区不属于solaris fdisk 分区
    要确定系统是否有单独的x86引导分区,请检查/etc/vfstab文件,如有下内容:表明存在x86 boot partition
    /dev/dsk/c2t1d0p0:boot -    /boot pcfs  - no  -
    如果存在以上分区,请使用fdisk delete the boot partition,then reinstall solaris.

    使辅助子镜像可以使用主引导程序引导:
      指定主引导程序:
        fdisk -b /usr/lib/fs/ufs/mboot /dev/rdsk/c1t1d0p0
         select 5 choice

       使辅助磁盘可引导
         /sbin/installgrub  /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t1d0s0
       确定包含要进行镜像的现在 / fs slice
        在上一步确定的slice建一个新的raid-0 volumn
           metainit -f volumn-name number-of-stripes compents-per-stripe component-name
        在未使用的片上建另一个raid-0 volumn,use for second submirror
           note:辅助子镜像不得小于原来子镜像的大小,另外:用作第二个子镜像的片还必须DAI有片标记:ROOT,并且根片必须是片0
           metainit volumn-name number-of-stripes components-per-stripes component-names
      使用以下方法建单向镜像:
         metainit volumn-name -m submirror-name
       重新mount 刚进行镜像的文件系统,然后reboot
          metaroot volumn-name
          reboot
     附加第二个子镜像:
       metattach volumn-name submirror-name
    在menu.lst文件中定义替代引导路径:

      要让系统可以从存储子镜像的磁盘引导,请将系统配置为将哪个磁盘视为备用引导设备.
       如:替代路径:c1t1d0s0位于第二块磁盘上第一个分区fdisk分区的第一片.因此,可以edit menu.lst
       title altername boot

        root (hd1,0,a)
        kernel /boot/multiboot
        module /boot/x86.miniroot-safe   ---bios的自动磁盘重新编号会对不可用的主磁盘进行恢复形成一定的影响.

一个卷可以包含多个片.

可以使用:eeprom定义替代引导路径:  -dca
  eeprom altbootpath=
  installboot  
  pboot  ---分区引导记录表
  
如何附加子镜像:
svm不让将DAI标号的子镜像附加到不DAI标号的镜像.不DAI标号的卷的第一个组件则从柱面1开始.
附加子镜像:
    metastat d30
    metattach d30 d70
    metastat d30
拆迁子镜像:
   metastat
   metadetach d5 d50  --完事系统会提示确认消息


子镜像脱机和联机:
   须先metaoffline,then metaonline;--svm automaticlly reasyn with mirror
   metaoffline同metadetach功能类似.但不会切断子镜像和镜像之间的逻辑关联.

   metaoffline mirror submirror
   metaonline mirror submirror

如何启用子镜像中的片:
  metareplace -e mirror failed-slice
    --它会自动开始重新同步,以便将已修复或替换的片与镜像的其余部分同步.
136page
  
更改raid-1 volumn option
metaparam  [mirror options] mirror
如例;更改raid-1 volumn read policy
         metaparam -r geometric d30
         metaparam d30
      更改raid-1 volumn write policy
         metaparam -w serial d40
         metaparam d40
      更改raid-1 volumn 传送号
         metaparam -p 5 d50
         metaparam d50  -- -p用于将镜像的传送号改为5

expand raid-1 volumn
  metattach submirror slice  ---向每个子镜像添加片
  metattach mirror     ---可以基于子镜像的大小重新计算镜像的大小


expand 包含已mount fs double mirror
metastat
metattach d9 c0t2d0s5  --submirror
metattach d10 c0t3d0s5
metattach d8  --mirror

替换镜像中出现故障的片
   metastat d6  --d6 is mirror-name
   metareplace d6 failed-slice new-slice
如何替换子镜像:
  metastat mirror-name
  metadetach -f mirror-name submirror
  metaclear -f submirror
  metainit volumn-name number-of-stripes components-per-stripe component-name  ---create newly submirro
  metattach mirror submirror

  replace submirror of mirror
    metastat d20
    metadetach -f d20 d22
    metaclear -f d22
    metainit d22 2 1 c1t0d0s2 1 c1t0d1s2
    metattach d20 d22
    142page

论坛徽章:
0
4 [报告]
发表于 2012-01-04 23:24 |只看该作者
谢谢分享。。。。

论坛徽章:
0
5 [报告]
发表于 2012-02-06 17:39 |只看该作者
多谢楼主分享!!!

论坛徽章:
0
6 [报告]
发表于 2012-02-14 16:23 |只看该作者
谢谢,分享

论坛徽章:
0
7 [报告]
发表于 2012-04-06 21:41 |只看该作者
thank {:4_408:}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP