
Some Witty Tagline Goes Here
The following information was sent to me by support at Sun.
PHASE I: Pre-Upgrade Preparations
=================================
It is very important to gather this data before
proceeding with the following procedure.
1) Get copies of the following files.
/kernel/drv/md.conf
/etc/opt/SUNWmd/md.tab
/etc/opt/SUNWmd/mddb.cf
/etc/opt/SUNWmd/md.ctlrmap
(this file is not present with SDS 3.0)
/etc/opt/SUNWmd/md.cf
2) Backup the entire system using "ufsdump" for
safe keeping.
3) If you have multiple controller #'s with
storage arrays attached, make note of the
controller #'s. (for SSA's run: ssaadm
display c# for each).
4) Get copies of /dev/dsk and /devices trees,
also /etc/path_to_inst file.
If adding new hardware to your system do not
move current controllers to different sbus
slots, this will cause controller #'s and
devices to change after a (boot -r) resulting
in devices not being mounted on reboot.
5) Repair any mirrors that have errors.
6) Get locations of all known replicas and
command line syntax of how each metadevice
was created.
metastat -p > /etc/opt/SUNWmd/md.orig.tab
metadb > /etc/opt/SUNWmd/metadb.orig
7) Save copies of /etc/vfstab and /etc/system
files.
# cp /etc/vfstab /etc/vfstab.orig
# cp /etc/system /etc/system.orig
8) Backup to tape of files in step #1, 6, and
7 for safe keeping.
Phase II: Unmirroring OS Filesystems
====================================
1) metaroot cxtxdxsx
This command returns root entry in /etc/vfstab to original
underlying physical device, for root only.
2) Edit
/etc/vfstab:
a) comment out all non-OS metadevices.
b) return /usr, /var, /opt, and swap to underlying physical
devices if they reside in a metadevice.
/etc/system:
c) remove bootlist state replica lines.
3) Rename the DiskSuite startup files so they are no longer
initialized at boot time.
# cd /etc/rcS.d; mv S35SUNWmd.init s35SUNWmd.init
# cd /etc/rc2.d; mv S95SUNWmd.sync s95SUNWmd.sync
# cd /etc/rc3.d; mv S25mdlogd s25mdlogd
(for SDS 4.1 if SUNWmdn was installed)
These links will be added later by reinstalling DiskSuite
after the upgrade.
4) Convert the root mirror to an one-way mirror with the
metadetach command. We remove the primary sub-mirror
because if something were to go wrong with the upgrade;
we could use the secondary sub-mirror to boot from and
get back to our original config.
So for example:
# metastat d0
d0: Mirror
Submirror 0: d10
State: Okay
Submirror 1: d20
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 3026320 blocks
d10: Submirror of d0
State: Okay
Size: 3026320 blocks
Stripe 0:
Device Start Block Dbase State Hot Spare
c0t0d0s0 0 No Okay
d20: Submirror of d0
State: Okay
Size: 4300560 blocks
Stripe 0:
Device Start Block Dbase State Hot Spare
c0t10d0s0 0 No Okay
#metadettach d0 d10 (where d10 contain boot disk c0t0d0)
5) Copy /etc/vfstab, /etc/system and startup files back.
We copy these files to the secondary sub-mirror. If
something happens during upgrade we can always boot
from mirror which would have original config.
a) cp /etc/vfstab.orig /etc/vfstab
b) cp /etc/system.orig /etc/system
c) cd /etc/rcS.d; mv s35SUNWmd.init S35SUNWmd.init
d) cd /etc/rc2.d; mv s95SUNWmd.sync S95SUNWmd.sync
e) cd /etc/rc3.d; mv s25mdlogd S25mdlogd
(for SDS 4.1 if SUNWmdn was installed)
6) Execute init S (go to single-user mode) fsck all underlying
partitions.
7) Reboot system
Phase III: Removing SDS
=======================
1) Verify that no metadevices are in use:
#df -kl
Filesystem kbytes used avail capacity Mounted on
/dev/dsk/c0t0d0s0 96019 48553 37865 57% /
/dev/dsk/c0t0d0s6 1369054 487505 826787 38% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
/dev/dsk/c0t0d0s1 96019 54753 31665 64% /var
/dev/dsk/c0t0d0s7 24114 9 21694 1% /export/home
/dev/dsk/c0t0d0s4 2052609 336119 1654912 17% /extra
/dev/dsk/c0t0d0s5 288556 255427 4274 99% /opt
swap 168776 480 168296 1% /tmp
2) Backout SDS related patches
# ./backoutpatch xxx
103926-xx Online DiskSuite 3.0: Jumbo patch
102580-xx Solstice DiskSuite 4.0: Jumbo patch
103421-xx Solstice DiskSuite 4.0: POINT PATCH
104172-xx Solstice DiskSuite 4.1: Jumbo patch
3) Remove SDS packages: SUNWmd, SUNWmdg, and SUNWmdn.
# /usr/sbin/pkgrm SUNWmd SUNWmdg SUNWmdn
(SDS 3.0 will have package SUNWmd ONLY!)
If removing SDS 3.0 or 4.0, you will be prompted for
these questions:
-----------------------------------------------------
##Removing pathnames in class <preserve>
The following files will be left installed:
/kernel/drv/md.conf
/etc/opt/SUNWmd/mddb.cf
/etc/opt/SUNWmd/md.tab
/etc/opt/SUNWmd/md.ctlrmap
/etc/opt/SUNWmd/md.cf
Do you with to remove them now (y,n,?) y
The following lines will be left in /etc/system:
*Begin MDD Database info (do not edit)
set md:mddb_bootlist1="[SDS-MDDB-BOOTLIST]"
*End MDD database info (do not edit)
Do you with to remove them now (y,n,?) y
----------------------------------------------------
If removing SDS4.1, you will not be prompted with these
questions SDS 4.1 removes them for us, this is why we
need to make copies of these important files.
9) Remove the disksuite devices. This step is not necessary
for SDS 4.1; it removes /dev and /devices for us.
# rm -r /dev/md
# rm /devices/pseudo/md*
You have successfully backed out DiskSuite.
PHASE IV: Upgrading Solaris
===========================
1) Upgrade your system to the new Solaris release.
See Solaris documentation for upgrade process.
2) Install current cluster patches for corresponding
Solaris release.
3) Reboot system.
PHASE V: Installing New SDS and Recovering SDS Configurations
=============================================================
1) Install Solstice Disksuite packages SUNWmd, SUNWmdg,
and SUNWmdn.
For Solaris 2.6 Server Edition, use the the Server Intranet
Extension 1.0 cdrom.
# cd /cdrom/cdrom0/DiskSuite_4.1/sparc
# pkgadd -d `pwd` SUNWmd SUNWmdg SUNWmdn
For Solaris 7 Server Edition, use the Solaris Easy Access
Server 2.0 cdrom.
# cd /cdrom/cdrom0
# ./installer &
The installer script will launch a graphical gui to lead
thru the process of installing SDS 4.2 along with other
bundled software as well.
2) Install the appropriate patches for your SDS release.
104172-xx Solstice DiskSuite 4.1: Jumbo patch
106627-xx Solstice DiskSuite 4.2: Product patch
3) Execute init 6 to reboot.
4) Re-create all of your state database replicas via the metadb
command. Use the metadb.orig (from PHASE I) file as your
reference.
For example to recreate these replicas:
flags first blk block count
a m p luo 16 1034 /dev/dsk/c0t9d0s7
a p luo 1050 1034 /dev/dsk/c0t9d0s7
a p luo 2084 1034 /dev/dsk/c0t9d0s7
a p luo 16 1034 /dev/dsk/c0t10d0s7
a p luo 1050 1034 /dev/dsk/c0t10d0s7
a p luo 2084 1034 /dev/dsk/c0t10d0s7
Use this command syntax:
# metadb -f -a -c 3 c0t9d0s7 c0t10d0s7
(where the # after the -c is the number of replicas to put in
each slice)
5) Execute init 6 to reboot which will elect one of the replicas
to be the master replica.
6) Editing the /etc/opt/SUNWmd/md.tab file.
i) cp md.orig.tab md.tab (md.orig.tab from PHASE I)
ii) make the following changes to the contents of the md.tab
to avoid data loss during process of reinitialize
metadevices under new version of SDS.
Modification Rules:
-------------------
a. Convert any 2-way metamirrors to 1-way meta-mirrors.
For example: d40 -m d14 d24 1
Change to: d40 -m d14
Remember to reattach secondary sub-mirror to main
meta-mirror after metadevice have been reinitialized
and system have been rebooted.
For example: #metattach d40 d24
b. Verify that there is a -k option in raid5 metadevice
syntax.
If it's not there, then add it.
For example: d6 -r c1t10d0s0 c1t11d0s0 c1t12d0s0 -k -i 32b
c. For Trans metadevice, follow same rules as for 2-way
mirrors. Just convert any 2-way mirrors to 1-way mirror.
It doesn't matter if the 2-way mirror is the logging
device, the master device, or it could be both.
For example: d9 -t d19 d29
d19 1 2 c1t11d0s4 c1t12d0s4 -i 32b
d29 -m d39 d49 1
d39 1 1 c1t12d0s5
d49 1 1 c1t11d0s5
Change to: d9 -t d19 d29
d19 1 2 c1t11d0s4 c1t12d0s4 -i 32b
d29 -m d39
d39 1 1 c1t12d0s5
d49 1 1 c1t11d0s5
Remember to: # metattach d29 d49
(after Trans metadevice has been re-initialized and
system have have been rebooted.)
d. Recursively remove all metadevice entries that
corresponds to metadevices containing OS filesystems.
It is safer to re-mirror these filesystems after
reinitializing the non-OS metadevices.
7) Re-create the metadevices using metainit -a
# /usr/opt/SUNWmd/sbin/metainit -a
If for any reasons that the reinitialization of any
metadevices should failed or data is corrupt within
reinitialized metadevice, then fall back to the "newfs
and restore from backup" strategy.
8) Edit the /etc/vfstab file to now mount non-OS metadevices
upon boot up.
9) Execute init 6 to reboot system.
10) Use metattach to attach submirrors to all mirrors that
previously had two(or more)-way meta-mirrors.
example: # metattach d0 d20
example: # metattach d4 d23
11) Compare the /kernel/drv/md.conf file to the original file
/kernel/drv/md.conf any changes made to this file will
have to be repeated, default metadevices is 128
PHASE VI: Remirroring OS Filesystems
====================================
1. Once system is stable, go ahead and proceed with procedures
to mirror /, /usr, /var, /opt, and swap.
2. See SDS documentation for exact step-by-step procedures.
Once remirroring of OS filesystems is done, the upgrade
process is complete.
Website Design & Maintenance by Erika Stokes