Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Keeping Up with the Times: Adopting Zowe as a Modern Mainframe Developer
Jessielaine Punongbayan and Richelle Anne Craw
Broadcom
November 2019
Session PG
Disclaimer
Certain information in this presentation may outline CA’s general product direction. This presentation shall not serve to (i) affect the rights and/or obligations of CA or its licensees under any existing or future license agreement or services agreement relating to any CA software product; or (ii) amend any product documentation or specifications for any CA software product. This presentation is based on current information and resource allocations as of November 2019 and is subject to change or withdrawal by CA at any time without notice. The development, release and timing of any features or functionality described in this presentation remain at CA’s sole discretion.
Notwithstanding anything in this presentation to the contrary, upon the general availability of any future CA product release referenced in this presentation, CA may make such release available to new licensees in the form of a regularly scheduled major product release. Such release may be made available to licensees of the product who are active subscribers to CA maintenance and support, on a when and if-available basis. The information in this presentation is not deemed to be incorporated into any contract.
Copyright © 2019 Broadcom. All rights reserved. The term “Broadcom” refers to Broadcom Inc. and/or it’s subsidiaries. Broadcom, the pulse logo, Connecting everything, CA Technologies and the CA Technologies logo are among the trademarks of Broadcom.
THIS PRESENTATION IS FOR YOUR INFORMATIONAL PURPOSES ONLY. Broadcom assumes no responsibility for the accuracy or completeness of the information. TO THE EXTENT PERMITTED BY APPLICABLE LAW, BROADCOM PROVIDES THIS DOCUMENT “AS IS” WITHOUT WARRANTY OF ANY KIND, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. In no event will Broadcom be liable for any loss or damage, direct or indirect, in connection with this presentation, including, without limitation, lost profits, lost investment, business interruption, goodwill, or lost data, even if Broadcom is expressly advised in advance of the possibility of such damages.
Introducing our JourneyInsider information and first hand experiences
Our Mainframe Journey
JCL
2007
COBOL CICS
PHILIPPINES
2010SINGAPORE
24/7SUPPORT
COBOLJCLCICS
DB2
2015BRNO, CZ
24/7SUPPORT
SYSADM
BATCHSUPPORT
JOBSCHEDULING
SYSTEMMONITORING
CICS DB2
IMS
2017PRAGUE, CZ
ZOWE
Z/OSMFTYPE
SCRIPTRESTAPI
JENKINSGIT
HUB
COBOL
ANGULAR
Our Typical DayMAINFRAME
Mainframe Native Tools
Are we Modern Mainframe Developers?
• Develop legacy applications for the Financial Industry• Use all ISPF screens all the time• Required to use a specific set of approved tooling
• Code editor• Source control• Compiling
• Work in a static development pipeline
Introducing The Modern Mainframer
Who is a Modern Mainframe Developer?
• Has insight into legacy applications but does not embrace the environment
• Uses modern IDEs• Proficient with open source tools
• Source control• Build tools• CI/CD
• Interested in building new apps and extending existing application, automation, modernization
Add your favorite tool
The Modern Developer
?
Mainframe
Cloud
AP
Is
CLI
AWS CLI, IBM Cloud CLI…
Add your favorite tool
The Modern Mainframer
Mainframe
Cloud
AP
Is
CLI
MF
Secu
rity
AP
Is
CLI
Modern-Mainframe bridge
Mainframe Native tools
AWS CLI, IBM Cloud CLI…
Introducing Zowe
Open source mainframe interface for the next generation
ABOUT ZOWE
• Part of Linux Foundation’s Open Mainframe Project (OMP)
• First open sourced project based on z/OS
• Four main components:• Command line interface (CLI)• API mediation layer• Web UI• Microservices
• Initial contributions from IBM, Broadcom, Rocket
• Over 2,500 downloads• v1.0 released February 11th
• Zowe.org
✔ Bridges enterprise DevOps to the mainframe✔ Shifts the mainframe balance of power from
vendors/proprietary to community/OSS✔ Makes mainframe an exciting career choice
Vendors can build ‘Zowe Compliant’ plugins that will leverage this framework.
Core Zowe includes API Mediation Layer, Command Line Interface (CLI), and Web User Interface
Open. Simple. Familiar.
CLI – Enables Cloud-like Access to Mainframe
• Enables app developer and DevOps engineers to interact with the mainframe easily through a CLI from any terminal on Windows, MacOS, Linux
• Easily integrates with IDEs, shell commands, bash scripts, and build tools; installs using NPM
Build | Test | Deploy
• Interact with mainframe filesCreate, edit, download, and upload mainframe files (data sets) directly
• Submit jobsSubmit JCL from data sets or local storage, monitor status, view and download output automatically
• Issue TSO and z/OS console commandsIssue TSO and console commands to the mainframe directly
• Integrate z/OS actions into scriptsBuild local scripts that accomplish both mainframe and local tasks
• CLI Plug-InsContributed plugins: CICS, Db2, IMS, MQConformant plugins: https://www.openmainframeproject.org/projects/zowe/conformance
Explorer: VSCode Extension
How could we have used Zowe to improve our lives in our previous roles?
As a developer, how do I use Zowe?• Calling the CLI from VSCode and other IDEs
• Adding the scripts in Jenkins for CI/CD
• Creating shell scripts for personal tasks
• Automating source build tools
• Performing quick status checks from the terminal
• Incorporating it into development workflow together with mainframe native tools
• Using CLI’s node classes for a different applicationCLI
Extending the CLI
• Developing for CLI
• https://github.com/zowe/zowe-cli-sample-plugin
zowe my-new-command-group
• Conformance Program – plug-ins should be built with conformance in mind
Introducing the System Utilities Plugin
System Utilities Plugin Architecture
>SUBMITJCL
CLI
Input values
Read Configuration File Substitutevalues
in the JCL
Submit JCLUsing ZoweJobs Rest API
A request came in tocreate a 30 user-id in3 different LPARs that
Uses 3 different Security Systems
Security Adminhas a common JCL Library for these
kinds of requests.He edited the JCLs to perform the
request and submitted it to its specified LPARs
Before:
RACF
ACF2
TSS
JCL
JCL
JCL
Security Administrator
A request came in tocreate a 30 user-id in3 different LPARs that
Uses 3 different Security Systems Security Admin
has a common JCL Library for these kinds of requests.
He uses ZOWE CLI to create a script to edit and execute the JCLs that he has
in his library
After:
RACF
ACF2
TSS
The ZOWE CLI plugin automatically identifies
which security system the LPAR is using based the
configuration file. It automatically submits the
request to Mainframe.
A request came in toXMIT multiple files to
multiple LPARs
The Batch Operatorhas a common JCL Library for these
kinds of requests.He edited the JCLs to perform the request and submitted them to its
specified LPAR
Before:
LPAR1
LPAR2
LPAR3
JCL
JCL
JCL
Batch Operator
A request came in toXMIT multiple files to
multiple LPARs
The Batch Operatorhas a common JCL Library for these
kinds of requests.He uses ZOWE CLI to create a script to edit and execute the JCLs that he has
in his library
After:
LPAR 1
LPAR 2
LPAR 3
The ZOWE CLI plugin automatically edits the
JCLs and submits it in the appropriate LPARs.
Demo
Script to Create UserIDs using the Plugin
Script Input
Because I Adopted Zowe
• I can create scripts to automate repetitive tasks I do daily• e.g. 4 hours of manual work reduced to 3 minutes
• I can upskill myself with modern programming languages
• I can apply my tools of choice for z/OS Development
• I have an easier interaction with the mainframe, while maintaining industry standards
• I have more control over the development workflow timeline• e.g. 1 week of Build and Deploy work (dependent on other teams) reduced
to 1 day (according to my own schedule)
Zowe Hackathon 2019The Zowe Mobile Application enables users to interact with Zowe, while on the go.
• Login using mainframe credentials• Check the status of all the Zowe services discovered by the
API Mediation Layer• Access the running z/OS Jobs services and z/OSMF REST APIs
to: Filter jobs View job spool Restart jobs Edit JCL from spool and submit the job Delete jobs from spool Cancel running jobs
• Project Community site• https://zowe.org
• GitHub• https://github.com/zowe
• Review Zowe squads, missions and activities• https://github.com/zowe/community
• Project Documentation (includes user and install guides)• https://zowe.github.io/docs-site/
• Open Mainframe Slack Channel• https://slack.openmainframeproject.org
• Zowe CLI Sample Scripts• https://github.com/zowe/zowe-cli-sample-scripts
Getting Started with …
Please submit your session feedback!
• Do it online at http://conferences.gse.org.uk/2019/feedback/pg
• This session is PG