Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11488026
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-07-25 15:24:12


从FreeBSD5.3开始引进了对geom的支持  FreeBSD 5.3下面用geom来创建raid是很方便的
  除开可以用geom这个程序来创建,还提供了个单独的程序,例如
  gconcat, gmirror, graid3, gstripe. 另外还有个尚未完成的gvinum(即将代替vinum)
  CONCAT版RAID
  concat其实并不算是raid,因为没有性能上的提升,也没有数据保护作用。只是简单的将各磁盘串起来利用磁盘空间。
  下面例子将对ipsd1,ipsd2这两个磁盘系统进行concat
  首先重置这两个磁盘
  bsdlabel -r -w ipsd1 auto
  bsdlabel -r -w ipsd2 auto
  使用gconcat连接两个磁盘,并且命名为data
  gconcat label -v data /dev/ipsd1 /dev/ipsd2
  使用gconcat以后,将会在/dev/concat下面多出一个设备名叫data,对应早先命令的data名字
  ls /dev/concat
  格式化,如果你需要关闭Soft-Update,只需要去掉-U
  newfs -U /dev/concat/data
  创建mount point
  mkdir /data
  挂上新建的concat
  mount /dev/concat/data /data
  修改fstab让系统重启后自动mount
  vi /etc/fstab
  内容
  /dev/concat/data /data ufs rw 2 2
  增加开机自动装载geom_concat.ko这个模块
  vi /boot/loader.conf
  内容
  geom_concat_load="YES"
  很简单的concat已经做好了
  stripe raid (RAID0)
  创建一个stripe raid (RAID0)
  RAID0具有最高性能,也是最差安全性的
  使用gmirror连接两个磁盘,并且命名为data
  gstripe label -v -s 4096 data /dev/da1 /dev/da2
  -s 4096: 是分开在每个磁盘的块大小为4k
  创建mount point
  mkdir /data
  挂上新建的Raid
  mount /dev/concat/data /data
  增加开机自动装载geom_mirror.ko这个模块
  vi /boot/loader.conf
  内容
  geom_stripe_load="YES"
  kern.geom.stripe.fast
  设置是否使用fast模式.gstripe有两个模式,一个是fast,一个是economic.
  fast模式消耗更多的内存,但是速度更快.当内存不足的时候会自动切换到economic模式.
  kern.geom.stripe.maxmem
  设置fast模式下面最大使用内存数,该选项是只读.只能在启动时候才能设置.因此如果需要更改该选项,需放在 /boot/loeader.conf
  kern.geom.stripe.fast_failed
  记录了fast模式失败次数,如果次数很大,你就要调大kern.geom.stripe.maxmem的数值
  MIRROR raid (raid1)
  创建一个mirror raid (也就是俗称的RAID1)
  RAID1具有最高的安全性,具有快速的读操作,不提高磁盘的写性能
  下面例子将对da0 da1这两个磁盘系统进行mirror
  首先重置这两个磁盘
  bsdlabel -r -w da0 auto
  bsdlabel -r -w da1 auto
  使用gmirror连接两个磁盘,并且命名为data
  gmirror label -v -b split -s 2048 data da0 da1
  稍微解释一下上面的命令,详细的查询man gmirror
  -b split: 告诉gmiiror创建的mirror,在读取的时候将读操作分开到各磁盘上面,这样能够提高读取性能
  -s 2048: 告诉mirror只分开读取大于2k 的文件
  除开spilit,还有其他平衡形式.split比较适合大众
  round-robin : 在各磁盘轮流读取数据
  prefer: 更高优先权的读取数据
  load: 更低负荷的读取数据
  使用gmirror以后,将会在/dev/concat下面多出一个设备名叫data,对应早先命令的data名字
  ls /dev/concat
  格式化,如果你需要关闭Soft-Update,只需要去掉-U
  newfs -U /dev/concat/data
  创建mount point
  mkdir /data
  挂上新建的Raid
  mount /dev/concat/data /data
  修改fstab让系统重启后自动mount
  vi /etc/fstab
  内容
  /dev/concat/data /data ufs rw 2 2
  增加开机自动装载geom_mirror.ko这个模块
  vi /boot/loader.conf
  内容
  geom_mirror_load="YES"
  mirror raid已经做好了
  创建一个当前磁盘的mirror:
  gmirror label -v -b round-robin data da0
  gmirror insert data da1
  除开上面,geom还提供了raid3的制作
  graid3 label -v -r data da0 da1 da2
  上面贴子说的gconcat,gmirror,gstripe都可以用geom一个来搞定
  例如
  geom stripe label -v -s 4096 data /dev/da0 /dev/da1 /dev/da2
  等于
  gstripe label -v -s 4096 data /dev/da0 /dev/da1 /dev/da2
阅读(534) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~