免费注册 查看新帖 |

Chinaunix

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

两台solaris zfs 系统挂接同一个卷问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-10-19 21:54 |只看该作者 |倒序浏览
本帖最后由 shanren067 于 2013-10-20 13:45 编辑

大家好,我这里遇到一个问题,如标题所说,现在我需要给两台M4000(solaris10U10 ZFS)挂接同一个卷,为了方便以后能扩空间,用zfs管理,把新加的卷填到DBpool里。但是发现先创建的pool可以成功(db02),再另一台(db01)server里创建就需要加“-f"才行! 但是这就导致先创建db02 的Pool 有问题,详见LOG,是操作方法有问题还是ZFS的局限性?  请高人帮我看一下!先谢谢了!

我知道可以通过SVM也能实现磁盘动态扩展,但是想用ZFS来做,这样方便管理。
root@db01 # format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
       0. c0t0d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848>
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@0,0
       1. c0t1d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848>  Solaris
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@1,0
       2. c3t600143801259DA290000F000000F0000d0 <HP-HSV360-1100-1.50TB>
          /scsi_vhci/ssd@g600143801259da290000f000000f0000
Specify disk (enter its number): ^C
root@pdb01 # exit
logout
Connection to db01 closed.
root@db02 # format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
       0. c0t0d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848>
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@0,0
       1. c0t1d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848>
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@1,0
       2. c3t600143801259DA290000F000000F0000d0 <HP-HSV360-1100-1.50TB>
          /scsi_vhci/ssd@g600143801259da290000f000000f0000
Specify disk (enter its number):


root@Db02 # zpool list
NAME    SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
rpool   136G  39.7G  96.3G    29%  ONLINE  -
root@Db02 # zpool create DBpool c3t600143801259DA290000F000000F0000d0
invalid vdev specification
use '-f' to override the following errors:
/dev/dsk/c3t600143801259DA290000F000000F0000d0s0 is part of exported or potenti
root@Db02 # zpool create -f  DBpool c3t600143801259DA290000F000000F0000d
root@Db02 #
root@Db02 #
root@Db02 # zpool list
NAME     SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
DBpool  1.49T    80K  1.49T     0%  ONLINE  -
rpool    136G  39.7G  96.3G    29%  ONLINE  -
root@Db02 # zpool status
  pool: DBpool
state: ONLINE
scan: none requested
config:

        NAME                                     STATE     READ WRITE CKSUM
        DBpool                                   ONLINE       0     0     0
          c3t600143801259DA290000F000000F0000d0  ONLINE       0     0     0

errors: No known data errors

  pool: rpool
state: ONLINE
scan: resilvered 39.7G in 0h12m with 0 errors on Wed Sep 18 14:56:41 2013
config:

        NAME          STATE     READ WRITE CKSUM
        rpool         ONLINE       0     0     0
          mirror-0    ONLINE       0     0     0
            c0t1d0s0  ONLINE       0     0     0
            c0t0d0s0  ONLINE       0     0     0

errors: No known data errors
root@Db02 # ssh db01
Last login: Sat Oct 19 19:34:31 2013 from db02
Oracle Corporation      SunOS 5.10      Generic Patch   January 2005
Sourcing //.profile-EIS.....
root@Db01 # zpool list
NAME    SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
rpool   136G  46.2G  89.8G    33%  ONLINE  -
root@Db01 # format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
       0. c0t0d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848>
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@0,0
       1. c0t1d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848>  Solaris
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@1,0
       2. c3t600143801259DA290000F000000F0000d0 <HP-HSV360-1100-1.50TB>
          /scsi_vhci/ssd@g600143801259da290000f000000f0000
Specify disk (enter its number): zp^H^C
root@Db01 # zpool create DBpool c3t600143801259DA290000F000000F0000d0
invalid vdev specification
use '-f' to override the following errors:
/dev/dsk/c3t600143801259DA290000F000000F0000d0s0 is part of exported or potenti.
root@Db01 # zpool create -f DBpool c3t600143801259DA290000F000000F0000d0
root@Db01 # zpool list
NAME     SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
DBpool  1.49T    80K  1.49T     0%  ONLINE  -
rpool    136G  46.2G  89.8G    33%  ONLINE  -
root@Db01 # zpool status
  pool: DBpool
state: ONLINE
scan: none requested
config:

        NAME                                     STATE     READ WRITE CKSUM
        DBpool                                   ONLINE       0     0     0
          c3t600143801259DA290000F000000F0000d0  ONLINE       0     0     0

errors: No known data errors

  pool: rpool
state: ONLINE
scan: resilvered 6.30G in 0h4m with 0 errors on Wed Sep 18 13:29:06 2013
config:

        NAME          STATE     READ WRITE CKSUM
        rpool         ONLINE       0     0     0
          mirror-0    ONLINE       0     0     0
            c0t0d0s0  ONLINE       0     0     0
            c0t1d0s0  ONLINE       0     0     0

errors: No known data errors
root@Db01 # exit
logout
Connection to db01 closed.
root@Db02 # zpool status
  pool: DBpool
state: ONLINE
scan: none requested
config:

        NAME                                     STATE     READ WRITE CKSUM
        DBpool                                   ONLINE       0     0     0
          c3t600143801259DA290000F000000F0000d0  ONLINE       0     0     0

errors: No known data errors

  pool: rpool
state: ONLINE
scan: resilvered 39.7G in 0h12m with 0 errors on Wed Sep 18 14:56:41 2013
config:

        NAME          STATE     READ WRITE CKSUM
        rpool         ONLINE       0     0     0
          mirror-0    ONLINE       0     0     0
            c0t1d0s0  ONLINE       0     0     0
            c0t0d0s0  ONLINE       0     0     0

errors: No known data errors
root@Db02 #
root@Db02 # ssh db01
Last login: Sat Oct 19 19:47:43 2013 from db02
Oracle Corporation      SunOS 5.10      Generic Patch   January 2005
Sourcing //.profile-EIS.....
root@Db01 # zfs create DBpool/lm
root@Db01 # df -h
Filesystem             size   used  avail capacity  Mounted on
rpool/ROOT/s10s_u10wos_17b
                       134G    13G    87G    13%    /
/devices                 0K     0K     0K     0%    /devices
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
swap                    58G   432K    58G     1%    /etc/svc/volatile
objfs                    0K     0K     0K     0%    /system/object
sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
fd                       0K     0K     0K     0%    /dev/fd
swap                    58G    32K    58G     1%    /tmp
swap                    58G    72K    58G     1%    /var/run
rpool/export           134G    32K    87G     1%    /export
rpool/export/home      134G    35K    87G     1%    /export/home
rpool                  134G   106K    87G     1%    /rpool
DBpool                 1.5T    31K   1.5T     1%    /DBpool
DBpool/lm              1.5T    31K   1.5T     1%    /DBpool/lm
root@Db01 # zfs set quota=500g DBpool/lm
root@Db01 # df -h

Filesystem             size   used  avail capacity  Mounted on
rpool/ROOT/s10s_u10wos_17b
                       134G    13G    87G    13%    /
/devices                 0K     0K     0K     0%    /devices
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
swap                    58G   432K    58G     1%    /etc/svc/volatile
objfs                    0K     0K     0K     0%    /system/object
sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
fd                       0K     0K     0K     0%    /dev/fd
swap                    58G    32K    58G     1%    /tmp
swap                    58G    72K    58G     1%    /var/run
rpool/export           134G    32K    87G     1%    /export
rpool/export/home      134G    35K    87G     1%    /export/home
rpool                  134G   106K    87G     1%    /rpool
DBpool                 1.5T    32K   1.5T     1%    /DBpool
DBpool/lm              500G    31K   500G     1%    /DBpool/lm
root@Db01 # exit
logout
Connection to db01 closed.
root@Db02 # zfs create DBpool/data
cannot mount '/DBpool/data': failed to create mountpoint
filesystem successfully created, but not mounted

root@Db02 # df -h
Filesystem             size   used  avail capacity  Mounted on
rpool/ROOT/s10s_u10wos_17b
                       134G   6.2G    93G     7%    /
/devices                 0K     0K     0K     0%    /devices
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
swap                    58G   432K    58G     1%    /etc/svc/volatile
objfs                    0K     0K     0K     0%    /system/object
sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
fd                       0K     0K     0K     0%    /dev/fd
swap                    58G    32K    58G     1%    /tmp
swap                    58G    72K    58G     1%    /var/run
rpool/export           134G    32K    93G     1%    /export
rpool/export/home      134G    38K    93G     1%    /export/home
rpool                  134G   106K    93G     1%    /rpool
DBpool                 1.5T    31K   1.5T     1%    /DBpool
root@Db02 # cd DBpool/
root@Db02 # ls
root@Db02 #
SUNW-MSG-ID: ZFS-8000-GH, TYPE: Fault, VER: 1, SEVERITY: Major
EVENT-TIME: Sat Oct 19 19:55:09 CST 2013
PLATFORM: SUNW,SPARC-Enterprise, CSN: BEF1014C28, HOSTNAME: Db02
SOURCE: zfs-diagnosis, REV: 1.0
EVENT-ID: 69626b5a-6d3f-e193-c0ef-93c3ff91178a
DESC: The number of checksum errors associated with a ZFS device
exceeded acceptable levels.  Refer to http://sun.com/msg/ZFS-8000-GH for more i.
AUTO-RESPONSE: The device has been marked as degraded.  An attempt
will be made to activate a hot spare if available.
IMPACT: Fault tolerance of the pool may be compromised.
REC-ACTION: Run 'zpool status -x' and replace the bad device.


root@Db02 # zpool  status -x
  pool: DBpool
state: DEGRADED
status: One or more devices has experienced an error resulting in data
        corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
        entire pool from backup.
   see: http://www.sun.com/msg/ZFS-8000-8A
scan: none requested
config:

        NAME                                     STATE     READ WRITE CKSUM
        DBpool                                   DEGRADED     0     0     6
          c3t600143801259DA290000F000000F0000d0  DEGRADED     0     0    24  tos

errors: 1 data errors, use '-v' for a list
root@Db02 # zpool status DBpool -v
cannot open '-v': name must begin with a letter
  pool: DBpool
state: DEGRADED
status: One or more devices has experienced an error resulting in data
        corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
        entire pool from backup.
   see: http://www.sun.com/msg/ZFS-8000-8A
scan: none requested
config:

        NAME                                     STATE     READ WRITE CKSUM
        DBpool                                   DEGRADED     0     0    10
          c3t600143801259DA290000F000000F0000d0  DEGRADED     0     0    40  tos

errors: 1 data errors, use '-v' for a list
root@Db02 #

论坛徽章:
2
摩羯座
日期:2013-10-20 18:04:032015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2013-10-19 22:15 |只看该作者
是不是你db02应经用了这个卷来创建一个pool,然后你又用这个卷在另外一台机器上创建pool,同一个卷被用来做两个pool的存储设备,这肯定有问题。这已不是共享挂载。据我所知,只要你在db02上用这个卷创建了DBpool,那你就可以在db01上看到这个pool,而且还可以直接import来使用(先在db02export)。至于你要共享这个卷,应该有其他方法的,再查查文档吧。
不对的地方请指正,,,,

论坛徽章:
1
射手座
日期:2014-03-17 10:50:20
3 [报告]
发表于 2013-10-19 23:05 |只看该作者
ZFS不是全局文件系统,不能同时给两台机器使用

论坛徽章:
0
4 [报告]
发表于 2013-10-19 23:29 |只看该作者
本帖最后由 shanren067 于 2013-10-19 23:39 编辑

回复 2# yejunlon
试过了,还是不行。

论坛徽章:
0
5 [报告]
发表于 2013-10-19 23:30 |只看该作者
yejunlon 发表于 2013-10-19 22:15
是不是你db02应经用了这个卷来创建一个pool,然后你又用这个卷在另外一台机器上创建pool,同一个卷被用来做 ...


试过了,还是不行。在db01上创建DBpool,然后在db02上 #zpool import能是看到DBpool  ,使用#zpool import -f DBpool也能导入了。重启之后两个系统DBpool都不见了!!!

论坛徽章:
2
摩羯座
日期:2013-10-20 18:04:032015年辞旧岁徽章
日期:2015-03-03 16:54:15
6 [报告]
发表于 2013-10-20 09:48 |只看该作者
我觉得可以这样,你无非是想使用DBpool下的空间,你可以在db02上的DBpool里,创建一个zfs文件系统/DBpool/lm
,然后把这个zfs文件系统/DBpool/lm共享,挂载到db01上,这样你就可以在db01上使用/DBpool/lm。
共享的具体做法,你可以上网上找找,,,

论坛徽章:
1
综合交流区版块每日发帖之星
日期:2015-10-14 06:20:00
7 [报告]
发表于 2013-10-20 11:57 |只看该作者
好像是要把一个磁盘放到两个池里?    不能这么用?  

不过你可以在一台机器上创建zfs 然后挂到另一台机器上.

论坛徽章:
0
8 [报告]
发表于 2013-10-20 13:34 |只看该作者
本帖最后由 shanren067 于 2013-10-20 13:34 编辑
wang_sy 发表于 2013-10-19 23:05
ZFS不是全局文件系统,不能同时给两台机器使用


我没有查到ZFS是不是全局文件系统,如果不是全局文件系统,那么这个方案就要流产了?  
我想要以后再对现有卷进行扩容,因为1.5TB的容量可能就能抗一年,不知道还有其他方案吗?

论坛徽章:
0
9 [报告]
发表于 2013-10-20 13:38 |只看该作者
yejunlon 发表于 2013-10-20 09:48
我觉得可以这样,你无非是想使用DBpool下的空间,你可以在db02上的DBpool里,创建一个zfs文件系统/DBpool/l ...


那如果对db02维护(关机或是重启)的时候,db01业务就受到了影响。所以共享的方案应该是行不通的。

论坛徽章:
0
10 [报告]
发表于 2013-10-20 22:15 |只看该作者
两台M4000用同一个lun做zpool?还真没这样来搞,同一个lun做的Pool在两台M4000中,如果没有配cluster,那只能单独在其中一台M4000手动export和import了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP