Skip to Content

Is Zowe the perfect IBM Z companion?

Sandeep Kumar, Capgemini Engineering
27 Jun 2023
capgemini-engineering

The introduction of Zowe is a turning point for the IBM Z mainframe allowing engineers to work with z/OS in a way that is similar to working with cloud platforms.

The first IBM mainframes were born in the 1950s and dominated the corporate computing center for five decades. However, since the turn of the century, many companies have decided that IBM Z platforms are outdated technology. Negative comments about mainframes by software developers are common. “The mainframe is dying” and “new programmers are not interested in mainframes” are common refrains. The average age of a US-based mainframe programmer is 46.4.

Several financial intuitions have even tried to replace their IBM Z mainframes with more modern systems citing their bulky size and expensive hardware and software. But despite the talk about ditching their mainframes, the fact remains that today about 90% of all credit card transactions and 68% of the world’s production IT workloads are handled by mainframes.

However, today, young developers have little interest in working on the IBM Z platform for four reasons:

  • IBM Z platforms are too complex, and the green screen is not attractive
  • There is a lack of IBM Z open developer communities and forums
  • Unlike Linux VMs, the IBM Z is not accessible to many users
  • Developers are moving on to shinier things like cloud and Kubernetes

Modernizing the user/developer interface could be the factor to improve the IBM Z platform’s popularity. In 2015, Linux Foundation and IBM came together with sixteen other independent founding members to form the Open Mainframe Project (OMP) alliance. In mid-2018, the OMP launched Zowe, the first open-source integrated and extensible framework for z/OS.

Overview

Zowe was designed as a set of interfaces to modernize the IBM Z platform. The new interfaces interact with z/OS and allow engineers to work with z/OS in a similar way to the experience of working on today’s cloud platforms.

Zowe provides out-of-the-box applications to access major z/OS utilities like Job Entry Subsystems (JES), z/OS File System and Data Sets, z/OS Spool/Job Logs, etc. One of OMP’s goals is to create a massive community of developers who have some experience with IBM Z platforms and are capable of developing modern applications on a mainframe.

The Zowe architecture

Zowe is a collection framework with four major components:

  1. Zowe Application Framework (Zowe Desktop or Web User Interface)
  2. Zowe Command Line Interface (CLI)
  3. Zowe Explorer (VS Code plugin extension)
  4. Zowe API Mediation Layer (API ML)

The first three components constitute the Zowe client category. The fourth resides on the z/OS server and acts as a gateway to interact with z/OS services, and includes a catalog of REST APIs and discovery functionality. (See Figure 1.)

Figure 1. An overview of the Zowe architecture

Source: Open Mainframe Project

When using Zowe clients, users can decide how to interact with z/OS. The most popular option is the IBM z/OS Management Facility (z/OSMF), a REST API-based framework that supports OS management functions in a task-oriented way. The other options are:

  1. z/OS FTP, which is directly compatible with Zowe CLI and Zowe Explorer
  2. Remote System Explorer (RSE) APIs, for which users will need the IBM RSE API plugin at the Zowe CLI end.

Some of the z/OS products, such as CICS and DB2, provide API support for Zowe CLI. Also, users can develop their own REST APIs to interact using Zowe.

Many more open-source projects are available and under development for the Zowe framework. Examples include Zowe Python SDK, Zowe Client SDKs, Zowe Mobile, and Zowe Embedded Browser for RMF/SMF and APIs (ZEBRA).

Zowe CLI

Zowe CLI enables the user to access IBM Z platforms with a command-line interface. Before installing and using Zowe CLI, it is necessary to install NODE.js and NPM on the client machine. After NPM is installed, it is just a single command to install Zowe CLI:

zowe plugins install @zowe/secure-credential-store-for-zowe-cli@zowe-v1-lts

Different CLI plugins can also be installed using NPM:

zowe plugins install @zowe/cics-for-zowe-cli@zowe-v1-lts @zowe/db2-for-zowe-cli@zowe-v1-lts @zowe/ims-for-zowe-cli@zowe-v1-lts @zowe/mq-for-zowe-cli@zowe-v1-lts @zowe/zos-ftp-for-zowe-cli@zowe-v1-lts

After the installations have been completed, Zowe CLI is ready to use. The user now simply has to enter the Zowe command to perform various functions like listing a dataset:

zowe zos-files list dataset “MY.DATASET.*” –host my.company.com –port 123 –user myusername123 –pass mypassword123

Another function is to download a PDS member:

zowe zos-files download data-set “MY.DATA.SET(member)” -f “mylocalfile.txt” –host my.company.com –port 123 –user myusername123 –pass mypassword123

You can also set up your profile with Zowe CLI to avoid having to provide passwords and use the correct profile with Zowe commands, and it will list the physical data set (PDS) members:

zowe profiles create zosmf-profile myprofile123 –host my.company.com –port 123 –user myusername123 –password mypassword123

zowe zos-files download data-set “MY.DATA.SET(member)” -f “mylocalfile.txt” –zosmf-profile myprofile123

Zowe CLI is the ideal feature for DevOps developers as it can directly be used for automating the IBM Z tasks like submitting JCLs, fetching data sets and spool logs for analysis. Cloud-based implementations and CI/CD pipelines can be set up using this option.

Zowe desktop

The Zowe desktop is a web-based UI that can be accessed through any browser. It contains several applications like File explorer to browse through datasets and PDS members, and JES Explorer to edit and submit the JCLs. It also contains a TN3270 terminal application to access IBM Z Platforms the traditional way. (See Figure 2.)

Figure 2. The Zowe Desktop

Source: Zowe

Zowe Explorer for VSCode

VSCode is a very popular code browser among developers, and various plugins are available for every type of software development in VSCode. Similarly, the Zowe Explorer plugin can be downloaded and configured with the IBM Z platform. Moreover, it modernizes the developer and systems administrator interaction with IBM Z platforms with simple context menus to fetch datasets and PDS, submit JCLs, and fetch spool logs. For example, users can perform the following tasks using the Zowe Explorer plugin:

  • Create, modify, rename, copy, and upload datasets to a z/OS Platform.
  • Access the USS files directly in a similar way as data sets
  • Create, edit, and delete Zowe CLI z/OS Management Facility (z/OSMF) compatible profiles
  • Use the Secure Credential Store plugin to store credentials securely in the settings
  • Leverage the API Mediation Layer token-based authentication to access z/OSMF

Examples of the usefulness of the Zowe Explorer’s context menus include:

Summary:

Zowe could be a boon to IBM Z platforms as it simplifies work for developers, administrators, and users. IT professionals will once again find mainframes attractive and make the IBM Z platform the large direct userbase it deserves to be. This newfound popularity would make it easier to create, modify, rename, copy, and upload data sets directly to z/OS. Users will create, modify, rename, and upload USS files directly on an IBM Z platform. Zowe will provide a secure, streamlined way to access data sets, use files, and jobs.

Most importantly, Zowe has introduced IBM Z platform engineers to the open-source world and is on its way to becoming a large and growing ecosystem, with user support communities that will help developers in the decades ahead.

References:

Zowe.org | Zowe Docs webpage

Recent articles about Zowe https://medium.com/zowe

“Mainframe Programmer: Demographics And Statistics In The US,” Zippia

Christopher Tozzi, “9 Mainframe Statistics That May Surprise You,” Apr 19, 2021, Precisely

Barry Baker, “Open source project Zowe: Fast, simple, familiar z/OS development,” Aug 15, 2018, IBM

Javier Perez, “The Zowe project: Build open source with open source,” Mar 15, 2021, IBM Developer Blog

Nan Nan Li, “A new Zowe trial experience for YOU!,” IBM Z and LinuxONE Community

Capgemini and IBM – Product Partne

The partnership introduces product capabilities into new geographies, platform eco-systems and deployment models

Capgemini Engineering

Sandeep Kumar

Senior Manager, IBM Sterling Connect:Direct for Z Platform, Capgemini Engineering