Re: [Veritas-vx] ASL, APM and EMC Clariions (oh my...)
Wow, the blog entry says pretty explicitly what I wish EMC or Sun would have told us months ago: The APM, analogous to user land counterpart ASL, was tailored to handle array specific problems such as initiating failover and supporting array specific technologies such as NDU (Non-Disruptive Upgrade) from EMC. I read that to say, without an APM loaded, NDU is NOT supported (NDU is EMC's way of doing firmware updates while the system is up). Thanks a lot for these excellent references! - Mike Myers, mike.myers at nwdc.net -Original Message- From: Thomas Cornely [mailto:[EMAIL PROTECTED] Sent: Wednesday, April 04, 2007 9:01 PM To: Myers, Mike; veritas-vx@mailman.eng.auburn.edu Subject: RE: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) Hi Mike, Interesting... I had no idea this doc was there. :) Another good document if you're looking for insights on DMP is the DMP 3.5/4.x whitepaper. It's a great doc on DMP's design pre-5.0 and pre-DMP Backport (4.0 MP4 on AIX, 4.1 MP2 on Solaris and 4.1 MP4 on Linux). You can get it at: http://eval.symantec.com/mktginfo/products/White_Papers/Storage_Server_M anagement/sf_dmp_wp.pdf Finally, you may want to check out the following URL for blogs and forums on Symantec products. There currently is one blog on DMP, and I know Ameya has a few more in the pipe, with a focus on ASL, APMs: http://www.symantec.com/enterprise/stn/index.jsp https://forums.symantec.com/syment/blog/article?blog.id=Ameyablogmessag e.id=2 Happy reading, Thomas PS: For other Storage Foundation whitepapers: http://www.symantec.com/enterprise/products/whitepapers.jsp?pcid=1020pv id=203_1 -Original Message- From: Myers, Mike [mailto:[EMAIL PROTECTED] Sent: Monday, April 02, 2007 10:25 AM To: Thomas Cornely; veritas-vx@mailman.eng.auburn.edu Subject: RE: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) Thomas, Thank you for the answers, this helped clarify the ASL and APM roles for me a great deal. A support person at Sun also dug up this document which has an excellent summary of their roles as well: http://eval.symantec.com/mktginfo/products/White_Papers/Storag e_Server_M anagement/sf_dmp_field_guide.doc It's certainly unclear to my why this is filed under marketing info but oh well...at least it exists! Cheers, - Mike Myers, mike.myers at nwdc.net -Original Message- From: Thomas Cornely [mailto:[EMAIL PROTECTED] Sent: Friday, March 30, 2007 12:06 PM To: Myers, Mike; veritas-vx@mailman.eng.auburn.edu Subject: RE: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) Hi Mike, With the right ASL/APM, you indeed shouldn't have issues with Clariion NDU. Please see inline below for more details. Thanks, Thomas -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Myers, Mike Sent: Wednesday, March 28, 2007 9:09 PM To: veritas-vx@mailman.eng.auburn.edu Subject: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) So I've been doing some research on a few systems of ours that didn't handle an EMC Clariion firmware update gracefully (path loss was passed up to the VxFS layer before DMP kicked in and failed over -- oops). We think the problem might be related to the ASL being quite old so I've been doing a lot of digging into this area of Veritas which I've not delved into much before. It doesn't appear to be a very well documented area of the software. So a few specific questions if anyone can assist: * What's the difference between an Array Support Library and a Array Policy Module? The Veritas support article on EMC Clariions point to a tar ball that includes both (CLR-APM and DGC-Clar) [Thomas] ASL stands for 'Array Support Libray'. They allow DMP to properly claim a device, identify what type of array it sits in and basically tell DMP which sets of procedures to use to manage the paths to that device. APM stands for 'Array Policy Module'. These are dynamically loaded kernel modules that implement the sets of procedures and commands that DMP must issue to an array to manage the paths to it. The base DMP code comes with a set of default APMs for Active/Active arrays or Active/Passive arrays. These APMs are generic in nature. For arrays that are require specific handling (and the Clariion is a perfect example of that), DMP relies on array specific APMs that implement procedures and commands that are specific to that array. * Is there a command in Veritas to answer the question, What ASL is controlling device X? The closest I've been able to find is to run vxdmpadm getsubpaths ctlr=X on one of the devices: NAMESTATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-TYPE ENCLR-NAME ATTRS == == c5t50060163306036AFd2s2 ENABLED(A) PRIMARY EMC_CLARiiON0_0
Re: [Veritas-vx] ASL, APM and EMC Clariions (oh my...)
Thomas, Thank you for the answers, this helped clarify the ASL and APM roles for me a great deal. A support person at Sun also dug up this document which has an excellent summary of their roles as well: http://eval.symantec.com/mktginfo/products/White_Papers/Storage_Server_M anagement/sf_dmp_field_guide.doc It's certainly unclear to my why this is filed under marketing info but oh well...at least it exists! Cheers, - Mike Myers, mike.myers at nwdc.net -Original Message- From: Thomas Cornely [mailto:[EMAIL PROTECTED] Sent: Friday, March 30, 2007 12:06 PM To: Myers, Mike; veritas-vx@mailman.eng.auburn.edu Subject: RE: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) Hi Mike, With the right ASL/APM, you indeed shouldn't have issues with Clariion NDU. Please see inline below for more details. Thanks, Thomas -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Myers, Mike Sent: Wednesday, March 28, 2007 9:09 PM To: veritas-vx@mailman.eng.auburn.edu Subject: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) So I've been doing some research on a few systems of ours that didn't handle an EMC Clariion firmware update gracefully (path loss was passed up to the VxFS layer before DMP kicked in and failed over -- oops). We think the problem might be related to the ASL being quite old so I've been doing a lot of digging into this area of Veritas which I've not delved into much before. It doesn't appear to be a very well documented area of the software. So a few specific questions if anyone can assist: * What's the difference between an Array Support Library and a Array Policy Module? The Veritas support article on EMC Clariions point to a tar ball that includes both (CLR-APM and DGC-Clar) [Thomas] ASL stands for 'Array Support Libray'. They allow DMP to properly claim a device, identify what type of array it sits in and basically tell DMP which sets of procedures to use to manage the paths to that device. APM stands for 'Array Policy Module'. These are dynamically loaded kernel modules that implement the sets of procedures and commands that DMP must issue to an array to manage the paths to it. The base DMP code comes with a set of default APMs for Active/Active arrays or Active/Passive arrays. These APMs are generic in nature. For arrays that are require specific handling (and the Clariion is a perfect example of that), DMP relies on array specific APMs that implement procedures and commands that are specific to that array. * Is there a command in Veritas to answer the question, What ASL is controlling device X? The closest I've been able to find is to run vxdmpadm getsubpaths ctlr=X on one of the devices: NAMESTATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-TYPE ENCLR-NAME ATTRS == == c5t50060163306036AFd2s2 ENABLED(A) PRIMARY EMC_CLARiiON0_0 EMC_CLARiiON EMC_CLARiiON0 - c5t50060163306036AFd1s2 ENABLED(A) SECONDARYEMC_CLARiiON0_1 EMC_CLARiiON EMC_CLARiiON0 - I think a better command to issue here would be: 'vxdmpadm listenclosure all' because that will show which enclosures DMP has identified and how it claimed them (from the array_type column). Here's an example: --- $ vxdmpadm listenclosure all ENCLR_NAMEENCLR_TYPE ENCLR_SNO STATUS ARRAY_TYPE EMC0 EMC940159 CONNECTEDA/A Disk Disk DISKSCONNECTEDDisk EMC_CLARiiON0 EMC_CLARiiON APM00054800086 CONNECTED CLR-A/PF --- CLR-A/PF tells you that the Clariion was claimed with 'explicit failover mode' (Clariion Failovermode 1). A Clariion configured to Failovermode 2 would get claimed with array_type 'CLR-A/P'. * Why would the Clariion APM appear NOT to be in use? (maybe the answer to my first question will make this question moot): $ vxdmpadm listapm all Module NameAPM Name APM Version Array Types State == == dmpaa dmpaa 1A/A Active dmpap dmpap 1A/P Active dmpap dmpap 1A/P-C Active dmpapf dmpapf 1A/PF-VERITAS Not-Active dmpapf dmpapf 1A/PF-T3PLUS Not-Active dmpapg dmpapg 1A/PG Not-Active dmpapg dmpapg 1A/PG-C Not-Active dmpjboddmpjbod1Disk Active dmpjboddmpjbod1APdisk Active dmpCLARiiONdmpCLARiiON1CLR-A/P Not-Active dmpCLARiiONdmpCLARiiON1CLR
Re: [Veritas-vx] ASL, APM and EMC Clariions (oh my...)
Hi Mike, With the right ASL/APM, you indeed shouldn't have issues with Clariion NDU. Please see inline below for more details. Thanks, Thomas -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Myers, Mike Sent: Wednesday, March 28, 2007 9:09 PM To: veritas-vx@mailman.eng.auburn.edu Subject: [Veritas-vx] ASL, APM and EMC Clariions (oh my...) So I've been doing some research on a few systems of ours that didn't handle an EMC Clariion firmware update gracefully (path loss was passed up to the VxFS layer before DMP kicked in and failed over -- oops). We think the problem might be related to the ASL being quite old so I've been doing a lot of digging into this area of Veritas which I've not delved into much before. It doesn't appear to be a very well documented area of the software. So a few specific questions if anyone can assist: * What's the difference between an Array Support Library and a Array Policy Module? The Veritas support article on EMC Clariions point to a tar ball that includes both (CLR-APM and DGC-Clar) [Thomas] ASL stands for 'Array Support Libray'. They allow DMP to properly claim a device, identify what type of array it sits in and basically tell DMP which sets of procedures to use to manage the paths to that device. APM stands for 'Array Policy Module'. These are dynamically loaded kernel modules that implement the sets of procedures and commands that DMP must issue to an array to manage the paths to it. The base DMP code comes with a set of default APMs for Active/Active arrays or Active/Passive arrays. These APMs are generic in nature. For arrays that are require specific handling (and the Clariion is a perfect example of that), DMP relies on array specific APMs that implement procedures and commands that are specific to that array. * Is there a command in Veritas to answer the question, What ASL is controlling device X? The closest I've been able to find is to run vxdmpadm getsubpaths ctlr=X on one of the devices: NAMESTATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-TYPE ENCLR-NAME ATTRS == == c5t50060163306036AFd2s2 ENABLED(A) PRIMARY EMC_CLARiiON0_0 EMC_CLARiiON EMC_CLARiiON0 - c5t50060163306036AFd1s2 ENABLED(A) SECONDARYEMC_CLARiiON0_1 EMC_CLARiiON EMC_CLARiiON0 - I think a better command to issue here would be: 'vxdmpadm listenclosure all' because that will show which enclosures DMP has identified and how it claimed them (from the array_type column). Here's an example: --- $ vxdmpadm listenclosure all ENCLR_NAMEENCLR_TYPE ENCLR_SNO STATUS ARRAY_TYPE EMC0 EMC940159 CONNECTEDA/A Disk Disk DISKSCONNECTEDDisk EMC_CLARiiON0 EMC_CLARiiON APM00054800086 CONNECTED CLR-A/PF --- CLR-A/PF tells you that the Clariion was claimed with 'explicit failover mode' (Clariion Failovermode 1). A Clariion configured to Failovermode 2 would get claimed with array_type 'CLR-A/P'. * Why would the Clariion APM appear NOT to be in use? (maybe the answer to my first question will make this question moot): $ vxdmpadm listapm all Module NameAPM Name APM Version Array Types State == == dmpaa dmpaa 1A/A Active dmpap dmpap 1A/P Active dmpap dmpap 1A/P-C Active dmpapf dmpapf 1A/PF-VERITAS Not-Active dmpapf dmpapf 1A/PF-T3PLUS Not-Active dmpapg dmpapg 1A/PG Not-Active dmpapg dmpapg 1A/PG-C Not-Active dmpjboddmpjbod1Disk Active dmpjboddmpjbod1APdisk Active dmpCLARiiONdmpCLARiiON1CLR-A/P Not-Active dmpCLARiiONdmpCLARiiON1CLR-A/PF Not-Active * Veritas seems very confident in their documentation that an ASL may be removed (and replaced) without impacting the controlled devices. Has anyone on here done that to production systems? The ASL seems like a fairly integral piece of DMP to be removed while I/O is traversing the DMP device. That said, my little bit of testing seems to indicate that this is true. Is the ASL only consulted once per boot (or when vxdctl enable is run)? I guess I'm leading to the question of what does an ASL actually do? [Thomas] Yes, an ASL really gets used at device discovery, so anytime vxdisk scandisk or vxdctl enable (more involved) gets called. One