Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Automating Upgrades Presented to: zSeries Oracle Special Interest Group Conference Redwood Shores, California March 28 – April 2, 2004 Michael Zechman Database Consultant, Convertible Technology, Inc. Defense Enterprise Computing Center (DECC) Mechanicsburg, Pennsylvania Agenda • How can Automating Upgrades benefit zSeries Oracle Customers • Why Automate • What is required for an Upgrade • Upgrade Automation • Summary • Questions and Automation Discussion Presented at: zSeries Oracle SIG Conference 2004 2 Our People Make a Difference Every Day. How can Automating Upgrades benefit zSeries Oracle Customers • Why should I be Listening to this on April Fools Day! Mike’s Top 10 Reasons: – Recommended to Jim an Automation Session Per SIG. – Share automation techniques among Oracle SIG’s very unique zSeries user community – Upgrades now take less than 5 person-minutes per Database – Your site might not require automated Upgrades, but • Pieces of it may be useful • Might spawn ideas for your future automation • Information sharing on Automation (other than Upgrades) will be discussed – Upgrade discussion was picked for a reason – It was easy to pull pieces, easy to create, and use. Presented at: zSeries Oracle SIG Conference 2004 3 Our People Make a Difference Every Day. How can Automating Upgrades benefit zSeries Oracle Customers • It is the Second session in the afternoon? – If you are overloaded with work, consider automating processes (or your manual procedures) – Do your customers demand instant attention? Think about adding dynamic automated services for those types of requests – Generalized Method of how to discuss and share automation – Don’t miss putting Jim on the spot! – Prize Time – A picture of something I bought last Year! I have been waiting to get zSeries input. Only a zSeries Group may be able to help me convince my wife to appreciate it. Your should hear the initial and monthly comments from her on it! I need help! Best comment wins a Prize! Presented at: zSeries Oracle SIG Conference 2004 4 Our People Make a Difference Every Day. Why Automate • Mainframe Computing – 7 “Hosts or Boxes”; one split – 45 Logical Partitions (LPARs) – 4,713 Millions of Instructions Per Second (MIPS) • Mid Tier – 230 servers hosted – Windows, Unix, LINUX Operating Systems • Storage – RAID DASD • EMC, Spectris, IBM RAMAC, HDS 7700E, IBM Enterprise System Server • 25,544 GB of DASD – Tape storage • 308,000 tapes in inventory, 1097 tapes processed on an average day • 27 Tape Silos, 3 Virtual Tape System (VTS), 1 Automatic Transport Unit (ATL) for mid-tier, 108 stand-alone tape transports • 425 Applications and 7 Different types of Databases (Software) Presented at: zSeries Oracle SIG Conference 2004 5 Our People Make a Difference Every Day. Why Automate • Our Team - Oracle and IDMS – 160 + Database Systems to Manage • 70 Production • 45 Oracle zSeries databases, 15 production – Mainframe, UNIX, and Windows platforms – Service organization providing computing services to our defense customers – Protect Integrity of Database – Staff of Nine – Team generated Automation and Support! Presented at: zSeries Oracle SIG Conference 2004 6 Our People Make a Difference Every Day. Why Automate • More Workload and Less Staff 5000 4500 4000 3500 3000 2500 2000 1500 1000 500 0 4950 4713 4576 3085 3410 2554 2675 2554.4 2386 CPU MIPS 2200 1889 DASD GB 1951 Staffing 1390 1183 1151 853 598 546 321 312 235 189186 '93 '94 Presented at: zSeries Oracle SIG Conference 2004 656 512 257 '95 December 2003 722 287 322 309 '96 (DASD * 10) 976 964 '97 337 322 '98 '99 323 '00 '01 319 324 338 '02 '03 315 Current Trans Goal 7 Our People Make a Difference Every Day. Why Automate • Customer test environments that are demanding - Aside from normal scheduled backups etc., complex application testing environments require dynamic database service that we must support: – – – – – – – – – – – – – • Backup Restore Restore PIT (planned, but not automated yet-done manually) Clone/Copy of a database Cross LPAR Support For Clone/Copy Startup Shutdown Recycling Database Changes Special Case Backups Cross LPAR Support For Special Backup Saves Database Software Upgrades Of course, at 4:00 PM Friday or during evening Hours! During the Last Fiscal Year – Not including scheduled jobs, dynamic automation supported 1550+ Dynamic Requests From our customer application DBA’s without our involvement! Most features not turned on until late summer 2003. Presented at: zSeries Oracle SIG Conference 2004 8 Our People Make a Difference Every Day. What is Required For an Upgrade – Unload Software or Downloaded Cumulative Oracle Patches – Prepare Load Libraries For Use (receive and authorize etc.) – Database Upgrade Capable – Must validate and change prior to upgrade – Possible Changes to Current Automated Scheduled Processes – Backup Before and After – Startup and Shutdown of Database – Startup and Shutdown of Services (Instance and Listener) – OSDI Parameter Changes – INITORA Changes (multiple times) Presented at: zSeries Oracle SIG Conference 2004 9 Our People Make a Difference Every Day. What is Required For an Upgrade – Software Library Alias Names Changes – Oracle .SQL Executions and Validation (CATPATCH etc.) – Unique Changes (For example remove RBS’s add UNDO or change all to locally managed) – Validation of Database Entities and successful Upgrade – Security Updates To Database Once Upgrade Complete – Validation Database Passes Security Requirements – Document Date, Time, Technician Performing Upgrade – Archival of Upgrade Output – Database Validation Upon Successful Upgrade Presented at: zSeries Oracle SIG Conference 2004 10 Our People Make a Difference Every Day. What is Required For an Upgrade Upgrade issues we had: – – – – – Multiple upgrades have to be done to a database per year Time consuming Repetitive work Error prone especially when doing multiple upgrades at a time Takes 2 to 4 person hours for each database upgrade after libraries are prepared – We had to perform more upgrades than the number of databases we have. The overall number is based on the number of baseline application backups/saves used for application testing Presented at: zSeries Oracle SIG Conference 2004 11 Our People Make a Difference Every Day. Upgrade Automation • Our Requirements – Get out of Dynamic work requests. It was killing our productivity! – Application DBA’s must NOT be able to perform functions with direct access. This would be a security violation. – Protect integrity of overall database system – Must be bullet proof – upgrade validation was a priority – Must be able to track history of changes and requests – Provide capability for customers to upgrade test databases – Provide capability for customer to upgrade various database backups – Many different baseline testing backups/saves – Possibly provide capability for customer DBA’s to upgrade production Presented at: zSeries Oracle SIG Conference 2004 12 Our People Make a Difference Every Day. Upgrade Automation Upgrade Automation System – Took 4.5 person-weeks to create – Used pieces we had, pulled from web, and created ourselves – ISPF Panels for online validation and request submission – 15+ ISPF Edit Macros – Batch mode – 10+ REXX Processes – 15+ CLIST to execute ISPF EDIT Macros Presented at: zSeries Oracle SIG Conference 2004 13 Our People Make a Difference Every Day. Upgrade Automation Upgrade Automation System – 3 Assembler Modules – 215 Job Steps not including backups – Scheduling Product • Control-M Schedules • Control-O Rules – Messaging used to communicate between processes – Batch ISPF, very nice tool – Batch SDSF, cool tool Presented at: zSeries Oracle SIG Conference 2004 14 Our People Make a Difference Every Day. Upgrade Automation First Phase - Not in our Automation • • • • 1 Step per LPAR or site Via Oracle’s ISPF Panels, manual, or via Oracle’s new CD installation (specifics unknown at time of presentation creation. Note: Being presented at SIG by Oracle) Unload software or downloaded cumulative Oracle patches Prepare load libraries for use (receive and authorize etc.) Presented at: zSeries Oracle SIG Conference 2004 15 Our People Make a Difference Every Day. Upgrade Automation Presented at: zSeries Oracle SIG Conference 2004 16 Our People Make a Difference Every Day. Upgrade Automation Presented at: zSeries Oracle SIG Conference 2004 17 Our People Make a Difference Every Day. Upgrade Automation Presented at: zSeries Oracle SIG Conference 2004 18 Our People Make a Difference Every Day. Upgrade Automation Presented at: zSeries Oracle SIG Conference 2004 19 Our People Make a Difference Every Day. Upgrade Automation Job name, and job number are in position 81-100 Presented at: zSeries Oracle SIG Conference 2004 20 Our People Make a Difference Every Day. Upgrade Automation – Is Database Upgrade Capable? Validation and changes prior to Upgrade • • • • Oracle Upgrade Validations SQL’s Used Minor modification for automated validation purposes A ROWCHECK Procedure was used for Validation Upgrade Only Continues or Changes are made based on Return Codes – Possible Changes to Current Automated Scheduled Processes • Batch ISPF Edit Macros Used • Inserts IEFBR14 and // to stop automated procedures/schedules – Backup Before and After • Messages Sent ‘FORCE JOB …’ – Startup and Shutdown of Database • Normal Startup and Shutdown Batch Streams. • Parameters added/changed based on Exclusive or Migrate mode etc Presented at: zSeries Oracle SIG Conference 2004 21 Our People Make a Difference Every Day. Upgrade Automation – Startup and Shutdown of Services (Instance and Listener) • Dynamic Starting and Stopping of Services • Job step was set to ‘Wait’ until service is Stopped/Started • Used REXXWAIT Assembler module from Web • Created Customized REXX SERVSTAT to call REXXWAIT • SERVSTAT - Customized REXX to perform Operator Commands – Loops and waits Presented at: zSeries Oracle SIG Conference 2004 22 Our People Make a Difference Every Day. Upgrade Automation REXXWAIT and SERVSTAT execution messages Presented at: zSeries Oracle SIG Conference 2004 23 Our People Make a Difference Every Day. Upgrade Automation – OSDI Parameter Changes • If needed, ISPF macros and ALTER SERVICE commands – INITORA Changes (multiple times) • Batch ISPF EDIT Macros • IEBGENER • JOBPARM module to pass parameters Presented at: zSeries Oracle SIG Conference 2004 24 Our People Make a Difference Every Day. Upgrade Automation • Sample ISPF EDIT macro: VPUT in CLIST and VGET in Macro can be used to pass data to and from EDIT Macro Presented at: zSeries Oracle SIG Conference 2004 25 Our People Make a Difference Every Day. Upgrade Automation • ISPF Batch Sample Execution: Presented at: zSeries Oracle SIG Conference 2004 26 Our People Make a Difference Every Day. Upgrade Automation JOBPARM Sample - Passes variables to CLIST/EDIT Macro: Presented at: zSeries Oracle SIG Conference 2004 27 Our People Make a Difference Every Day. Upgrade Automation – Software Library Alias Names Changes • Dynamic Syntax Creation for IDCAMs • Batch ISPF Edit Macro’s • IDCAMS – Oracle .SQL Executions and Validation • SQLPLUS • ROWCHECK • WHENEVER EXIT xxxx – Unique Changes (For example Remove RBS’s add UNDO or Change all to locally managed) • Batch SQLPLUS • Batch ISPF Edit Macros • REXX code (if required) – Validation of Database Entities and successful Upgrade • SQLPLUS • ROWCHECK – Security Updates To Database Once Upgrade Complete • Security Scripts Execute Presented at: zSeries Oracle SIG Conference 2004 28 Our People Make a Difference Every Day. Upgrade Automation – Validation Database Passes Security Requirements • Done during testing, but we have an automated JCL Procedures to perform this task – Document Date, Time, Technician Performing Upgrade (Done, not implemented) • ISPF EDIT Macro • IEBGENER Presented at: zSeries Oracle SIG Conference 2004 29 Our People Make a Difference Every Day. Upgrade Automation – Archival of Upgrade Output SPOOL TOOL – Database team developed. Takes SDSF Spooled Jobs or Step DD Output and Writes it to an Archive File Useful Tool! Presented at: zSeries Oracle SIG Conference 2004 30 Our People Make a Difference Every Day. Upgrade Automation – Database Validation Upon Successful Upgrade • SQLPLUS • WHENEVER EXIT xxxx • ROWCHECK Presented at: zSeries Oracle SIG Conference 2004 31 Our People Make a Difference Every Day. Upgrade Automation • How do you permit non authorized DBA’s to perform these functions while still protecting the integrity of the system? • Under USER Authority – – • Create a short lived dataset based on name of instance and function desired. User must have authority to create it. The existence of this dataset is checked later to validate authority. Send Message (causes message to be written to SYSLOG) Under SYSTEM Authority – – – – – – – – Control O Detects Message CTOSERV Deciphers Messages and Passes Parameters to REXX EXEC REXX Exec Validates Parameters and executes unique REXX code for each Function Code verifies that the short lived dataset created above exists. If it doesn’t, then user is trying to manually send a message. ‘Gotcha’ A Batch Job is then submitted under our group’s scheduling user-id which is monitored by Control-M Messages are sent to user when various phases are complete Summary file is updated Since Control-M monitors the job, any failures are quickly detected and resolved. Presented at: zSeries Oracle SIG Conference 2004 32 Our People Make a Difference Every Day. Upgrade Automation • The picture I discussed earlier – If you were a woman that did not need computer equipment, what would you not want your husband to bring home? Presented at: zSeries Oracle SIG Conference 2004 33 Our People Make a Difference Every Day. Summary – Secured – Time consuming and redundant effort – Each upgrade manually took 2 to 4 person-hours after libraries were prepared • Automated < 1-5 minutes technician time • Saved time already – Dynamic requests while being controlled and monitored by operations via Control-M/O (standard scheduling/monitoring facility) – History of requests and job executions Presented at: zSeries Oracle SIG Conference 2004 34 Our People Make a Difference Every Day. Summary – Easy to add on for future releases. – Estimated 4-6 hours to update process for each new release. • JCL PROC Change • Panel Change • ISPF EDIT Macro Change – Messages sent to user after each phase. – Customers happy – Permits customer/our team flexibility – More time to take on new database tasks Presented at: zSeries Oracle SIG Conference 2004 35 Our People Make a Difference Every Day. Summary – – We are happy Not perfect upgrade system • • • Must be customized for each release Occasional restarts required (testing phase) Restarts not easy due to return code ‘IF’ etc. in PROC Presented at: zSeries Oracle SIG Conference 2004 36 Our People Make a Difference Every Day. Summary • Future Automation – SPOOL TOOL integration – Restore point in time recovery – Clone/Copy Hot Backup to a test database – Clone/Copy Databases Between Data Centers? – Use on our UNIX systems? Conversion seems inevitable. Some tools exist. Suggestions? Presented at: zSeries Oracle SIG Conference 2004 37 Our People Make a Difference Every Day. Questions and Automation Discussion –Questions or comments –Automated Discussion • Share Site Automation on SIG? • Other Automation –Thank you and have a great conference Presented at: zSeries Oracle SIG Conference 2004 38 Our People Make a Difference Every Day.