Open Source The Path To Software Riches For IBM i
December 2, 2020 Alex Woodie
For what is supposed to be a proprietary platform, the IBM i server sure has a lot of open source software running on it. In recent months, it appears that the majority of new programs introduced to IBM i are open source in nature. That pattern shows no signs of changing any time soon, according to a recent report by OpenLogic.
Open software has existed on the IBM i platform for many years. The first highly publicized dip into the open source well occurred in 2005, when IBM partnered with a company called Zend to bring its PHP runtime to the iSeries and the i5/OS. That Zend open source lineage now lives on at Perforce thanks to its 2019 acquisition of Rogue Wave, which acquired an open source software company called OpenLogic back in 2013.
OpenLogic provides professional technical support for hundreds of open source packages, from CentOS and Docker to MariaDB and Kubernetes. Among the open source support packages it offers are the ones to support enterprise versions of the Zend runtime for IBM i and associated tooling, such as Z-Ray code inspector, which are only available from Perforce.
But OpenLogic is a supporter of open source in general, including specifically on IBM i. In its November white paper “Advantages of Open Source on IBM i,” OpenLogic makes a strong case for the adoption of open source software on the platform.
“In May of 2018, IBM released its support for the open source package management (rpm/yum) ecosystem on IBM i,” OpenLogic wrote. “Since then, the availability and adoption of open source on the platform has been growing at a healthy clip.”
In fact, IBM has done the work to bring more than 400 open source packages to IBM i via the RPM and Yum methods, according to OpenLogic. “[T]he availability of open source on IBM i continues to grow at a break-neck pace,” it writes.
In addition to adopting the same RPM and Yum software delivery methods that are widely used in the open source community, another reason for the open source surge is the availability of the PASE environment.
PASE, of course, is the AIX runtime that enables AIX applications to run with little to no changes on the IBM i server. It’s essentially an “operating system within an operating system,” and it opens up another path for getting software onto IBM i.
As OpenLogic explains, the PASE environment is quite complete:
“PASE runs on top of the same hardware as IBM i and programs running within PASE have access to IBM i items such as Db2 resident data, programs (RPG, Cobol, CL), commands, data areas, and data queues (to name a few) via the syscall interface between PASE and the TIMI layer of IBM i,” OpenLogic writes. “This enables the implementation of *NIX-like applications within PASE that have native access to IBM i resources while being able to leverage the benefits of POWER Systems including processor allocation strategies, such as shared processors, memory sharing, and I/O performance.”
While PASE provides the runtime mechanism and RPM/Yum the distribution mechanism for bringing existing apps to the platform, open source also provides fertile soil upon which developers can create brand spanking new applications for IBM i.
Specifically, OpenLogic mentions the popular LAMP stack, which the broader open source community is quite familiar with. LAMP, of course, refers to the combination of the Linux OS, Apache Web Server, MariaDB, and PHP. Most of these can run on IBM i, including Linux, but that OS isn’t necessarily necessary.
“A simple install of PHP and MariaDB and you have your own variant of the LAMP stack referred to as iAMP — the same Apache Web Server, the same MariaDB open source database, the same PHP scripting language as other platforms,” OpenLogic writes, “just a better operating system than any other platform offers and the solutions on top of the stack — again that run unchanged.”
A key element of the IBM i is its integrated nature, and that advantage continues with open source software. While new open source apps may expect MySQL or its newer follow-on, MariaDB, most IBM i shops will have a lot of data housed in a Db2 for i database. So for that reason, access to the Db2 for i database is a big benefit when running open source applications on the IBM i.
There are a couple of ways to tap into that Db2 for i database. OpenLogic touts the ibm_db2 database driver that has traditionally been a way for PHP applications to get data out of Db2 for i. But a better solution is to use the ODBC driver, which IBM is positioning as the standard way to access all flavors of Db2, including the one for IBM i.
But the database is just part of the story, and sometimes users need to access programs. For that, OpenLogic presents IBM’s open source XMLService utility as the best way to tapping into ILE RPG and Cobol, as well as CL programs (as well as data areas and data queues). The company says that by using a language-specific toolkit (such as the one that Perforce provides for PHP on IBM i), developers can reduce the simplify the process of calling ILE items and processing the results.
With an abundance of pre-built open source applications and tooling for developing more, the barriers to using open source on IBM i are melting away, according to OpenLogic.
“The advantages of open source on IBM i are significant and they include choice of solution, innovation to the platform, and integration with IBM i data, programs, and artifacts to extend their reach and usefulness,” the company concludes in its white paper. “Getting started on open source on IBM i is easy — it just takes a willingness to embrace new methods and new solutions to strengthen an already powerful platform to take it to even higher capabilities.”
To get a copy of the white paper, go to www.openlogic.com/resources/advantages-open-source-ibm-i.
RELATED STORIES
IBM Brings More Open Source to IBM i
Apache Kafka And Zookeeper Now Supported On IBM i
More Open Source Databases Coming To IBM i
Mentioned here are ibm_db2 driver and ODBC, but was widely touted a few years ago that IBM had provided a MySQL compatible interface to DB2, i.e. calls to MySQL ran unchanged and actually accessed DB2 as DB2 was made a MySQL database engine module. As MariaDB is MySQL compatible, I’m surprised given the talk of open source, which all access MySQL / MariaDB natively, is not listed prominently as method to access DB2.
Also, as versions of Unix are open source, and some code commonly used in all versions, it was the OpenSSH buffer overflow vulnerability that we inherited using open source. That usage, and tons of other Unix open source running in PASE, predates bringing PHP onto the i.
But a nice update about open source on the IBM i. Thanks for this writeup.
P.S. I have a 720 but prefer writing and using native IBM i software, so have no plans for loading any open source for now. But I like to keep informed.
bring a remote centralized graphical protocol GUI to IBMi as in “i”… supported by IBM… integrated in the system like a display file… this would be real innovation
In my humble opinion and based on my direct involvement with IBM since 1962 as an IBM systems engineer, an IBM customer consultant, and an IBM business partner, Open Source is essentially the only avenue left for innovation for IBM i, and on IBM z/OS mainframe.
The thousands of innovative and valuable software IBM Field Developed Programs (FDPs) developed by IBMers, and the thousands of incredibly valuable IBM Installed User Programs (IUPs) developed by IBM customers to directly enhance the IBM i and IBM z/OS mainframe have long since disappeared, as have those who wrote them and documented them for IBM.
Again, In my humble opinion, Open Source is a hodge podge of offerings that do replace the development, marketing and support of critically needed IBM products that are needed for the survival and enhancement of IBM i and IBM z/OS mainframe.
What is left of IBM Business Partners is not nearly sufficient to enhance or sustain IBM i or IBM z/OS.