Important Update: Cohesity Products Knowledge Base Articles
All Cohesity Knowledge Base Articles are now managed via the Cohesity Support Portal: https://support.cohesity.com/s/searchunify. The Knowledge Base articles available here will not reflect the latest information or may no longer be accessible.
GAB, LLT and HAD must be stopped before replacing main.cf, types.cf or other active VCS '.cf' configuration file.
Problem
1) If the main.cf file needs to be manually updated just stopping HAD (# hastop -all -force) is not enough to guarantee the original cached copy of the file is not reused when HAD restarts.
2) During an installation and upgrade of Cluster Server, often the types.cf file needs to be manually copied from the conf directory to properly complete the upgrade.
After an update, or edit of a VCS .cf files, the older .cf file can overwrite the changes if llt and gab is not first stopped.
Error Message
types.cf, main.cf or other .cf file reverts to original copy after manually updating the file, and restarting HAD.
Cause
VCS will cache copies of all active .cf files in memory. Simply stopping HAD is no longer sufficient to guarantee that the previously cached version is not still in memory and will be used. Further, this version will overwrite the updated version that is on disk when it is flushed by VCS.
Solution
Before replacing a .cf file in VCS,
1) Stop HAD, GAB and LLT on all nodes.
2) Copy the new .cf file to all nodes.
3) Restart LLT, GAB and HAD.
This can be done without stopping the currently running cluster applications.
Restarting LLT and GAB
Linux
Run the following command to stop VCS.
/etc/init.d/vcs stop-or-hastop
If fencing is configured, stop fencing using following command:
/etc/init.d/vxfen stop
Stop gab.
/sbin/gabconfig -U
Stop llt.
/sbin/lltconfig -Uo
Update llttab / llthosts / gabtab as needed.
Start VCS components:
/etc/init.d/llt start/sbin/gabconfig -cx/etc/init.d/vxfen start
/etc/init.d/vcs start-or-hastart
AIX
-- This procedure has not been tested. --
IN ADDITION to the below procedure, be sure to shut down fencing:
# /usr/sbin/lsdev -CHc vxfenname status location descriptionvxfen Available N/A
# /sbin/vxfen-shutdown
<do the dirty bit below, here>
To start back up after gab and LLT shutdown and restart:
# /sbin/vxfen-startup
Solaris 10
Check to see what services you have running:
# modinfo | egrep -i "fen|gab|llt"215 7af62000 2cf88 301 1 llt (LLT 5.1SP1)216 7af86000 5a338 302 1 gab (GAB device 5.1SP1)217 7a600000 6a0c8 303 1 vxfen (VRTS Fence 5.1SP1)
In this case you have fencing, gab und llt.
1) CHECK GAB PORTS:# gabconfig -aGAB Port Memberships===============================================================Port a gen 8e3a08 membership 01Port b gen 8e3a0b membership 01Port h gen 8e3a0d membership 01# 2) STOP HAD# hastop -all -force3) STOP FEN/LLT/GAB# /sbin/vxfenconfig -UThere are 0 active coordination points for this node# /sbin/gabconfig -U# /sbin/lltconfig -Ulltconfig: this will attempt to stop and reset LLT. Confirm (y/n)? y4) DISABLE SERVICES# svcadm disable -t vxfen# svcadm disable -t gab# svcadm disable -t llt5) UNLOAD KERNEL MODULES:# modinfo | egrep "gab|llt|vxfen"215 7af62000 2cf88 301 1 llt (LLT 5.1SP1)216 7af86000 5a338 302 1 gab (GAB device 5.1SP1)217 7a600000 6a0c8 303 1 vxfen (VRTS Fence 5.1SP1)# modunload -i 215# modunload -i 216# modunload -i 217# # modinfo | egrep "gab|llt|vxfen"6) REPEAT STEPS 3,4,5 on the other node.# # cp /etc/VRTSvcs/conf/types.cf /etc/VRTSvcs/conf/config/types.cf... <perform maintenance> ...7) RESTART SERVICES# svcadm enable llt# svcadm enable gab# svcadm enable vxfen# svcs -a | egrep "gab|llt|vxfen"online 15:38:00 svc:/system/llt:defaultoffline 15:38:01 svc:/system/vxfen:defaultmaintenance 15:31:59 svc:/system/gab:default[ My gab went to maintenance, so I had to disable / enable it again: ]# svcadm disable gab# svcadm enable gab# svcadm enable vxfen# svcs -a | egrep "gab|llt|vxfen"online 15:38:00 svc:/system/llt:defaultonline 15:44:19 svc:/system/gab:defaultonline 15:44:19 svc:/system/vxfen:default8) START HAD# hastart9) Repeat 8 and 9 on all nodes.# hastatus -sum-- SYSTEM STATE-- System State Frozen A sprst1000a9-32 RUNNING 0 A sprst1000a9-33 RUNNING 0 ...and so on...
Applies To
The problem affects versions 5.x and above of VCS on all platforms.