SUMMARY: DiskSuite RAID 0+1 growfs

From: UnixAdmin <sunixadm_at_yahoo.com>
Date: Tue Jun 04 2002 - 03:25:41 EDT
Hi Admins,

Sorry about the delay in writing a summary but things
are really busy.

Dan Astoorian was the only one to respond and his
response was the only one I needed as it did the
trick.
Thanks Dan!!

Here is the summary and my original question again.

Dan wrote:

I believe your error was in detaching the submirrors
and re-initing
them, rather than using metattach to expand the
submirror while it was
still attached to the mirror as described in the
DiskSuite user manual
("How to Expand a Mirror").

Run the command "metastat d50" .  Does this show that
the size of each
submirror d51 and d52 is larger than the size of the
mirror d50?

If so, you should be able to recover from this by:
- unmounting the filesystem
- clearing the mirror d50 with "metaclear"
- recreating the mirror with "metainit d50 -m ...",
using one of the 
two
  submirrors (you'd use the smaller one if they
weren't _exactly_ the
  same size)
- attaching the second submirror with metattach.

After you do this, metastat should so that the mirror
is the correct
size, and growfs should work on the filesystem.

Running growfs on the submirrors was a waste of time,
by the way--any
changes you made to d51 or d52 got thrown away by the
resync operation
as soon as you reattached them to the mirror.

And my question was:

A year ago our engineering department bought a program
that resides in /opt/prog.  I made the mistake of
believing them when they said they would never need
more than 20GB of space for this application and the
reports/files that would be generated and kept in
/opt/prog.  They purchased two 36GB drives and using
DiskSuite, I created a RAID 1 for the mount point
/opt/prog.  Two months later they saw that they were
running out of space and, against my better judgement,
I was forced by management to break the mirror and
concat the drives to give them more space.  The
metadevice d50 for the mount point consisted of one
submirror and looked something like this:

d51: Submirror of d50
    State: Okay         
    Size: 142237026 blocks
    Stripe 0:
        Device              Start Block  Dbase State  
     Hot Spare
        c1t2d0s6                   0     No    Okay   
     
    Stripe 1:
        Device              Start Block  Dbase State  
     Hot Spare
        c1t4d0s6                   0     No    Okay

Once again they ran out of disk space and finally
purchased additional 4 36GB drives.

After conferring with several other admins I decided
to used DiskSuite to create RAID 0+1 for the mount
point /opt/prog and proceeded as such:

I shut down the application and unmounted the
filesystem.

Using the format command, disks c1t2d0 and c1t4d0 were
formated to look like this:

Part      Tag    Flag     Cylinders         Size      
     Blocks
  0 unassigned    wm       0                0        
(0/0/0)            0
  1 unassigned    wm       0                0        
(0/0/0)            0
  2     backup    wm       0 - 24619       33.92GB   
(24620/0/0) 71127180
  3 unassigned    wm       0                0        
(0/0/0)            0
  4 unassigned    wm       0                0        
(0/0/0)            0
  5 unassigned    wm       0                0        
(0/0/0)            0
  6 unassigned    wm       3 - 24619       33.91GB   
(24617/0/0) 71118513
  7 unassigned    wm       0 -     2        4.23MB   
(3/0/0)         8667

Slice 6 contains 33.91GB and are being used for the
concat, slice 7 is being used for the StateDB.

I then used prtvtoc to copy the partition table from
either c1t2d0 or c1t4d0 to the new disks.

# for i in c1t3d0s2 c2t2d0s2 c2t3d0s2 c2t4d0s2
do
prtvtoc /dev/rdsk/c1t2d0s2 | fmthard -s - /dev/rdsk/$i
done

I created additional State Database Replicas on the
new disks.

# metadb -a -c 2 c2t2d0s7 c2t3d0s7 c2t4d0s7 c1t3d0s7

I created a stripe consisting of three slices,
c2t2d0s6 c2t3d0s6 c2t4d0s6.  This stripe will become a
submirror of d50.

# metainit d52 1 3 c2t2d0s6 c2t3d0s6 c2t4d0s6 -i 64k
d52: Concat/Stripe is setup

I attached the striped submirror d52 to mirror d50:

# metattach d50 d52
d50: submirror d52 is attached

And after the resync I detached d51 from d50.

Did a metaclear on d51, used the disk slices c1t2d0s6
c1t3d0s6 c1t4d0s6 to created d51 as a striped
submirror.

# metainit d51 1 3 c1t2d0s6 c1t3d0s6 c1t4d0s6 -i 64k

After the resync, I detached d51 from d50 and did:

# growfs /dev/md/rdsk/d51

I reattached d51 to d50, detached d52 from d50 after
resync and did:

# growfs /dev/md/rdsk/d52

I  the reattached d52 to d50 waited for the sync and
mounted /opt/prog.

# df -k /opt/prog still showed a size of 70GB

I tried:

# growfs -M /opt/prog /dev/md/rdsk/d50
but still no more space!!

What am I doing wrong?  I have read the man pages,
user's guide and searched the web as well as the
archives.


Thanks again Dan....

-Joe
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
_______________________________________________
sunmanagers mailing list
sunmanagers@sunmanagers.org
http://www.sunmanagers.org/mailman/listinfo/sunmanagers
Received on Tue Jun 4 03:30:29 2002

This archive was generated by hypermail 2.1.8 : Thu Mar 03 2016 - 06:42:45 EST