IBM Support

Preventing customer startup program from running on the flashcopy target LPAR

General Page

The last thing we want is for the target LPAR to IPL and appear as the production LPAR. While the toolkit has several safeguards to prevent this, humans, bugs and other failures may occur. As an additional safeguard, we recommend modifying the standard production LPAR startup program to include the following command at the very beginning, before anything else is done:
QZRDHASM/RUNLPARCMD SRLN(xxxxxxx) LPAR(xx) CMD(CALL PGM(QZRDHASM/QZRDENDSBS)) 
MONMSG CPF0000

The purpose of the RUNLPARCMD is to call the specified program if RUNLPARCMD is called on an LPAR with matching serial and lpar numbers (these should be your Flashcopy Target serial/LPAR numbers). QZRDHASM/QZRDENDSBS (displayed below) will bring the LPAR into restricted state, ending TCP and other subsystems. It will also change system values and line descriptions to ensure they do not come online. There is some redundancy / overkill involved, for example if the ENDSBS *ALL is rejected for whatever reason (authority, configuration changes etc) then the ENDTCP, ENDTCPSVR etc should proceed. Likewise, at the end (if it gets that far), the final command will send an escape message that will hold the startup job in MSGW and prevent the rest of the startup program sequences to occur.

Below is the source code for QZRDENDSBS- modify as you see fit, then compile it. It is included in QZRDHASM/QCLSRC.

    PGM                                                                 
                                                                        
                 SNDMSG     MSG('This is the flashcopy LPAR and QSTRUP +
                 is not allowed to run. Entering +         
                 restricted state.') TOUSR(*SYSOPR)                             
                                                                        
                 QZRDIASH5/ENDSYSCPY ACTION(*PSTSAVSYS) /* Remove if not on 7.70 */                
                 MONMSG     MSGID(CPF0000)                              

                 CHGSYSVAL  SYSVAL(QSTRUPPGM) VALUE('*NONE')
                 MONMSG     MSGID(CPF0000)
                                                                        
                 CHGIPLA    STRRSTD(*YES) STRTCP(*NO)                   
                 MONMSG     MSGID(CPF0000)                            

                 SBMJOB     CMD(ENDSBS SBS(*ALL) OPTION(*IMMED) +       
                              BCHTIMLMT(*NOMAX)) JOB(ENDSBSALL) +       
                              JOBQ(QSYS/QCTL)                           
                 MONMSG     MSGID(CPF0000)                                                                                                 

                 ENDTCP     OPTION(*IMMED)                               
                 MONMSG     MSGID(CPF0000)                               
                                                                         
                 ENDTCPSVR  SERVER(*ALL)                                 
                 MONMSG     MSGID(CPF0000)                               
                                                                         
                 ENDSBS     SBS(QBATCH) OPTION(*IMMED)                   
                 MONMSG     MSGID(CPF0000)                               
                                                                         
                 ENDSBS     SBS(QHTTPSVR) OPTION(*IMMED)                 
                 MONMSG     MSGID(CPF0000)                               
                                                                         
                 SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('This +  
                              is the flashcopy QLPAR and QSTRUP is not +
                              allowed to run.') TOPGMQ(*PRV (*)) +       
                              MSGTYPE(*ESCAPE)                           

    ENDPGM

[{"Type":"MASTER","Line of Business":{"code":"LOB57","label":"Power"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"7.1.0"}]

Document Information

Modified date:
18 December 2019

UID

ibm11138162