[comp.sys.apollo] Stripe Disk on DN10000

root@maadfa.ma.adfa.oz.au (god) (09/20/90)

We are about to stripe two 700 MB disk (with separate
disk controller) together.  However, we are not sure that the following
procedures as defined in /usr/man/cat8/invol.8 is correct, and no one
else in local Apollo Support Group can help us with this as they have
never done this before.   We would appreciate any comments.


   % invol

	option: 1 -m
        Select disk: [w=Winch|s=Storage mod|f=Floppy|q=Quit][ctrl#:][unit#]     w0:0
	How many disks will you be grouping together? 2
        Enter the striping option. 1 (sector stripe)
        physical volume name: boot_disk
                Enter remaining members of disk group:
        	Select disk: [w=Winch|s=Storage mod|f=Floppy|q=Quit][ctrl#:][unit#]     w1:0

         .....invol...

          } From /usr/man/cat8/invol.8 as shown in the paragraph below, we deduce
 	  } the following procedures have to be performed to finally stripe the
	  } two disks as one.  
	  }
          > After you've created a multi-disk set with 1 -m, you must run
          > invol's option 2 to add logical volumes to the multi-disk set.
          > Invol will remind you that you must run it with this option.
          > Specify the primary disk of the multi-disk set (the first disk you
          > specified) to invol. If you desire a bootable volume, run invol
          > with option 8, as described above.
	
	option: 2
        Select disk: [w=Winch|s=Storage mod|f=Floppy|q=Quit][ctrl#:][unit#]     w0:0


         .....invol...
                                   
        option: 8
        Select disk: [w=Winch|s=Storage mod|f=Floppy|q=Quit][ctrl#:][unit#]     w0:0  

	.....Striping Complete.....

Many thanks in advance.
-------
Patrick Tang Guan Yaw,		Phone	 :	+61 6 268 8882
Dept. of Mathematics,	EMAIL-ARPA/CSNET :	gyp@maadfa.ma.adfa.oz.au
ADFA, Canberra, 2600.		UUCP	 :	..!uunet!munnari!maadfa.ma.adfa.oz!gyp
AUSTRALIA			ACSnet   :	gyp@ccadfa.cc.adfa.oz

thoopes@diana.cair.du.edu (Tom Hoopes) (09/20/90)

When striping two disks on a DN10000 with two controllers, be sure to get
the new fixed salvol from Apollo. Our disk croaked three times (before Apollo
replaced one disk) and salvol couldn't save what was left over because of a bug.

I believe the fixed salvol will be in the October bug tape.

krowitz@RICHTER.MIT.EDU (David Krowitz) (09/20/90)

My understanding of "invol" (and I will admit up front, that I have not made a 
multidisk volume) is that option 1 initializes the disk (or disks) as a single
logical volume, and that you only need to use option 2 if you wish to split the
disk (or disks of a multiple disk volume) into more than one logical volume.
Option 8 is always needed to create a OS paging file on a disk that you wish
to boot the system from. The "n" modifier to options 1, 2, and 3 (non-bootable
volume) only means that there will not be a "sys" and "sys/node_data" and a boot
block(s) put onto the logical volume.


 -- David Krowitz

krowitz@richter.mit.edu   (18.83.0.109)
krowitz%richter.mit.edu@eddie.mit.edu
krowitz%richter.mit.edu@mitvma.bitnet
(in order of decreasing preference)

jose@Inference.Com (Jose Fernandez) (09/20/90)

When our DN10000 was delivered, the disks were striped and the OS was
installed.  Ignorant (or suspicious) of this pre-condition, I reinstalled from
scratch, following the recipe from APOLLO's Installation doc.  I don't recall
the specifics (it's been over 6 months of a turrent over the dam) but I
followed what seemed to be the obvious thing to do.  My machine diskserves for
all of our APOLLO development and so far, happy trails.

This may message may not be very helpful -- it was meant to be encouraging.
Good luck.

Jose A. Fernandez
Inference Corporation

thompson@PAN.SSEC.HONEYWELL.COM (John Thompson) (09/21/90)

> We are about to stripe two 700 MB disk (with separate
> disk controller) together.  However, we are not sure that the following
> procedures as defined in /usr/man/cat8/invol.8 is correct, and no one
> else in local Apollo Support Group can help us with this as they have
> never done this before.   We would appreciate any comments.
> ...
>
The excised text seems correct -- it appears that you did the right thing, or
that the example (if that's what it is) is correct.  Here's the scoop, from
someone who has striped disks many ways, many times --

Executing INVOL option '1 -m' does no formatting.  What it _DOES_
   do is set up some internal junk (with the Phys Volume label?) so that
   the node refers to ALL drives when you mention the primary.  After you
   tell it what drive to format (e.g. w0:0) it'll ask how you want them 
   striped, and how many drives you're striping together.  After you feed
   it all the info, it does virtually nothing (for maybe 15 seconds?) and
   then tells you to execute option 2.
Option 2 is normally used to add logical volumes to a single disk.
   However, now that there's disk striping, it really adds logical volumes
   to a single VIRTUAL disk (which is one or more PHYSICAL drives).  The newly
   striped disk (I'll refer to each physical disk as a 'drive') has a huge 
   vacancy -- the entire media is empty!  Now you specify the volumes that will
   be on this disk (if you don't stripe, INVOL option 1 asks you this stuff),
   and how rigorously you want to format (no verification, format/write,
   format/write/read).  Notice that, once you stripe drives into a disk, the 
   multi-disk set is referred to by its primary number -- the first drive that
   you mentioned when you ran INVOL option 1.  This referencing goes for INVOL, 
   SALVOL, MTVOL,    the Unix mount commands, ....
There are 2 methods of striping disks -- 'cylinder' and 'sector'.  If you have 
   1 controller per drive, sector striping will speed up disk access.  If you 
   have multiple drives per controller, sector striping will slow down access.  
   The reason is fairly simple -- in sector striping, each drives cylinders are
   logically combined, with one drive having the even sectors and one having 
   the odd (I'm assuming 2 drives).  If you have 2 controllers, each one can 
   ask for a sector, and you get back 2 sectors in about the same time you get
   one.  If you have 1 controller and 2 drives, you get no possibility of
   parallel accesses (the controller waits for the drive to respond), and you
   get no possibility of multiple sectors being returned from a single disk
   access.  You need to ask for drive 0's info, drive 1's, drive 0's, drive 1's,
   etc.  With cylinder striping, you get no speedup/degredation regardless.  In
   this case, one drive gets the even CYLINDERS, and the other gets the odd
   ones.  Even with two controllers, you'll rarely need information that happens
   to be at the tail of one drive's cylinder and the head of the other drive's
   next cylinder.
Be warned that, when you stripe drives, you're putting data on a disk that's
   twice as likely to fail.  If either drive bites it, the entire multi-disk
   needs to be formatted.  On the other hand, you can get higher throughput,
   larger capacity, more impressive 'lvolfs / df' responses, ....    :-)

Good Luck -- hope this helps.
John Thompson (jt)
Honeywell, SSEC
Plymouth, MN  55441
thompson@pan.ssec.honeywell.com

As ever, my opinions do not necessarily agree with Honeywell's or reality's.
(Honeywell's do not necessarily agree with mine or reality's, either)

system@alchemy.chem.utoronto.ca (System Admin (Mike Peterson)) (09/22/90)

In article <9009201311.AA25490@richter.mit.edu> krowitz@RICHTER.MIT.EDU (David Krowitz) writes:
>My understanding of "invol" (and I will admit up front, that I have not made a 
>multidisk volume) is that option 1 initializes the disk (or disks) as a single
>logical volume, and that you only need to use option 2 if you wish to split the
>disk (or disks of a multiple disk volume) into more than one logical volume.
>Option 8 is always needed to create a OS paging file on a disk that you wish
>to boot the system from. The "n" modifier to options 1, 2, and 3 (non-bootable
>volume) only means that there will not be a "sys" and "sys/node_data" and a boot
>block(s) put onto the logical volume.

It is absolutely essential that you do an option '2' after building a
striped set with option '1', otherwise you will not have formatted
either disk. On our previous system, the disk block headers had to
contain the proper information, which was only written at format time -
does anyone know if the Apollo controllers require this information be
generated across a striped set (i.e. can you format separately then
stripe and expect it to work - my guess would be no, but ...)?

On our system we have 4 760 MB disks on 2 controllers, and they are
striped across controllers (w0:0 with w1:0, and w0:1 with w1:1). Here
are the invol commands to do the striping and formatting. I strongly
recommend that full write/read verification be done to try to find all
the bad spots that can be found with invol. Note that we make each
striped disk just one (very large) partition since we want maximum
flexibility of user and temporary files (some programs create
500 MB temporary files).

For the DN10000 system disk pair, the sequence is:

ex invol
   1 -m            build a striped group
   w0:0            select controller 0, disk 0
   2               select the number of disks to be striped
   1               type of striping to be done (sector)
   u0              physical volume name (doesn't really matter)
   w1:0            select controller 1, disk 0 as the second disk
   y               there is more to do
   2 -b            initialize logical volume
   w0:0            select controller 0, disk 0
   3               select full write and read verification
   8               use 8 K average file size
   all             make each physical disk a logical disk volume
   y               use the prerecorded badspot data
   y               there is more to do
   8
   w0:0            select controller 0, disk 0
   1               select logical volume 1
   4096            enter the page file size (4096)
   n               there is no more to do
ex calendar
   w               select Winchester disk
   ...             enter the proper date and time answering the prompts


For the DN10000 user disk pair, the sequence is:

ex invol
   1 -m            build a striped group
   w0:1            select controller 0, disk 1
   2               select the number of disks to be striped
   1               type of striping to be done (sector)
   u1              physical volume name (doesn't really matter)
   w1:1            select controller 1, disk 1 as the second disk
   y               there is more to do
   2 -b            initialize logical volume
   w0:1            select controller 0, disk 1
   3               select full write and read verification
   8               use 8 K average file size
   all             make each physical disk a logical disk volume
   y               use the prerecorded badspot data
   n               there is no more to do
-- 
Mike Peterson, System Administrator, U/Toronto Department of Chemistry
E-mail: system@alchemy.chem.utoronto.ca
Tel: (416) 978-7094                  Fax: (416) 978-8775