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.