WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005...

31
WAPL in SystemAutomation Using IWS from SA [email protected]

Transcript of WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005...

Page 1: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

WAPL in SystemAutomationUsing IWS from SA

[email protected]

Page 2: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

WAPL in SystemAutomationUsing the Scheduling product formerly known as OPC from SA

[email protected]

Page 3: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

SystemAutomation & WAPLAgenda Introduction of speaker and SEB

Mainframe environment

Background, what was I trying to solve?

How to get it to work

Examples

Summary

Page 4: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Short introduction of myselfMagnus Persson 1995 Skandia IT, Print operator

1997 Skandia IT, System operator

2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac

2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC

2013 SEB, SystemAutomation and some other things like IWS and zSecure…

Page 5: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

SEB Mainframe Overview

PDC1 PDC2

19

DWDM

75-?????

Replication VLAN

STGD-STGD

IDAA

DCRIKD

IDAA

DWDM

InfinibandEthernet

Dark FiberFICON (FCP)Fiber ChannelFCIP

SKLM

SEBMSP SAN

IBM SAN384B-1

IBM SAN384B-2

Router

SKLM

IBM DS8886IBM DS8886

IBM TS7760

Router

IBM TS7760

IP

TKE

TKE

IBM z14IBM z14

BDC

SKLM(shared with IBMi)

IBM TS7760

IBM DS8886(shared with IBMi)

IP Router

Page 6: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

SystemAutomation & WAPLAgenda Introduction of speaker and SEB

Mainframe environment

Background, what was I trying to solve?

How to get it to work

Examples

Summary

Page 7: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

BackgroundWAPL is an “easy” scripting language similar to REXX which can modify anything in IWS

We have old functions using PIF/OCL that I don’t feel really confident with

Since I am responsible for SA at our shop, automation “thinking” start point is SA but we use IWS more and more

IWS is good at scheduling, SA is good at automating, combine them and get all sorts of new possibilities.

We use IWS for our IPL’s and my colleagues running the OS wanted an easy command to be able to IPL using IWS, and also be able to send shutdown command of several systems to GDPS.

I think that WAPL is fun….

Page 8: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

SystemAutomation & WAPLAgenda Introduction of speaker and SEB

Mainframe environment

Background, what was I trying to solve?

How to get it to work

Examples

Summary

Page 9: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Starting with WAPLMy starting point with wapl. I have the feeling that it is a ”batch oriented interface”…

Page 10: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL “externally”Setting up WAPL to be able to talk to it from other parts of z/OS

From the WAPL user guide:

You can create custom versions of the EQQYXJPX procedure, for each controller you have, that enable simple Workload Automation Programming Language commands to be run from the console or automation products.

Provided that the customer procedure is placed in the correct library for started tasks, you can run a console command such as S WSLCEXEC,ARGS=’ADD ADID(MYAPPL)’.

Page 11: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL “externally”Setting up WAPL to be able to talk to it from other parts of z/OS

OK, we have set up this STC.

Run the command.

How do we catch if it went OK or not in an easy way, the STC will start and stop with an RC=0 “always”…

Maybe set it up as a TRANSIENT in SA, but I don’t want an ABEND only because an ADD of a APPLICATION fails…

Page 12: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL “externally”Setting up WAPL to be able to talk to it from other parts of z/OS

I added two steps to the STC which sent out an WTO if there was a problem.

Page 13: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL “externally”Setting up WAPL to be able to talk to it from other parts of z/OS

But is the usage of a START STC command a good and dynamic way of using WAPL from an automation point?

No, not if want to be able to call WAPL from automation and get a response back.

If you do the START STC approach from automation, you will get a RC = 0, since SA will look at the return code from the MVS command.

Page 14: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL “externally”Setting up WAPL to be able to talk to it from other parts of z/OS

The solution:

If you already have the SA <-> IWS interface in place then you are all good to go, if you don’t have the interface in place, set it up to get SA the IWS datasets in its concatenation and also to get access to SA WS in IWS. In my opinion if you have SA and IWS, you should use this!

Copy EQQYXTOP REXX from SYS1.SEQQWAPL to SA REXX library

Write a “driver” REXX that makes the call to EQQYXTOP

Start testing!

Page 15: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL “externally”Setting up WAPL to be able to talk to it from other parts of z/OS

My command string for setting a WS to ACTIVE from SA:

sawapl twac MODIFY CPWSV WSNAME(CPM0) WSDEST(TWATSB30) STATUS(A)

sawapl = My “driver”, a modified copy of SYS1.SEQQSAMP(EQQWTSO*)

twac = The IWS subsystem that you want to talk to, in some LPAR’s we have more than one IWS.

No need for starting up an STC address space.

I give the RC back to whoever calls sawapl, much easier to see if the command went OK or not.

Possibility to use this as a “console command” by using SA command character.

Page 16: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

SystemAutomation & WAPLAgenda Introduction of speaker and SEB

Mainframe environment

Background, what was I trying to solve?

How to get it to work

Examples

Summary

Page 17: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example

ACF2 backup application:

Old Application:

Uses SA WS to send in a command to ACF2 for backup, in the old solution the command was executed and then the job waited for 20 minutes and then continued.

No check if the command executed OK or not.

New Application:

In the new Application the command is executed, and the operation following is a “dummy” operation.

This operation will be set to Complete from SA if the command executes OK, and to Error if the command fails.

Page 18: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example

ACF2 backup application:

Page 19: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example ACF2 backup

Page 20: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA exampleIPL

We use IWS to schedule almost all of our IPL’s in the prod sysplex

No manual work needed

Operators gets an email that the system will go down but if there are no problems they don’t need to do anything

If there is a problem, it will show up on the IWS error que, and operators will take action

Page 21: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example IPL

Page 22: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA exampleIPL scheduled from IWS , dynamically added by command from SA

Constructed so that z/OS sysprogs can use our IPL applications without having to know IWS.

The IPLSTART command adds two or more Applications depending on what input you send to the command.

IPLSTART system option is the syntax. Options can be:QUICK This skips some checking, performs a quicker IPL.1500 The IPL will start at 1500 today.

There will be a WTOR to reply to, so that you will confirm that you have the right system, here you also can reply HOLD, then the system wont REIPL, it will stay down.

The reason for having the GDPS STOP command in a separate Application is because GDPS can only execute ONE stop command at the time, but that command can contain several LPAR’s.

Page 23: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example IPL%IPLSTART sysid (in this example SB45)

Application AUTOIPL45

Application AUTOIPLSTOP

Page 24: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example IPL

Page 25: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example IPL

Page 26: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA exampleSTOPVOTES

We have many jobs that STOP and START applications in SA

We often had a hard time finding the Application/job who had put in the STOP

Page 27: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA exampleSTOPVOTES

I created a job that runs when Controller starts up and populates JCL VARIABLES

Page 28: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example Stopvotes

Page 29: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Using WAPL from SA example Stopvotes

Page 30: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

SystemAutomation & WAPLAgenda Introduction of speaker and SEB

Mainframe environment

Background, what was I trying to solve?

How to get it to work

Examples

Summary

Page 31: WAPL in SystemAutomation · 2019-05-21 · 2000 IBM, z/OS sysprog, TCP/IP, RACF, Jobtrac 2005 Tieto, z/OS sysprog TCP/IP, RACF, OPS/MVS, Mainview, Control-D & OPC 2013 SEB, SystemAutomation

Closing thoughts from the author

Talk to your IWS colleagues, set it up. Or as in my case, talk to yourself! ☺

Try it, I think you can get a lot of good things out of this with little work effort.

Send me an email, I’m happy to provide the small REXX’es I have written to get this to work:[email protected]

Questions?