Open Source on IBM I Webinar Series Day 3 ERWIN EARLEY ([email protected]), SR
Total Page:16
File Type:pdf, Size:1020Kb
Open Source on IBM i Webinar Series Day 3 ERWIN EARLEY ([email protected]), SR. SOLUTIONS CONSULTANT, PERFORCE, NOVEMBER 2019 2 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Questions / Comments • Is there a way to clone a container? ▪ Currently the answer is no ▪ The dev directory has device identifiers that are unique to each container ▪ The dev directory would need to be regenerated after the container is copied ▪ Currently working with IBM to identify the commands to regenerate the dev directory − At that point it would be relatively simple matter to create a script that would perform the copy and then regenerate the dev directory − Long term working with IBM to add an option to the chroot_setup command to regenerate the dev directory and it's contents. ▪ IBM has opened an issue for this enhancement request: − https://github.com/IBM/ibmichroot/issues/64 ▪ Lab Environment Availability: − The lab environment will be available for two (2) weeks following the end of the webinar series − Please don't wait to the last minute to run through the exercises − The lab environment will be taken down on 7th of December. − If you need the environment past the 7th let myself and/or Ian know and we will attempt to accommodate that request. 2 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 3 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Day 1 Review • Introduction to Open Source on IBM i • Why is Open Source on IBM i Important • Understanding the PASE environment as the enabler of Open Source on IBM i • Getting Familiar with the PASE environment 3 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 4 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Day 2 Review • Setting up OSS EcoSystem on IBM i – ACS version • Exploring Containers on IBM i • Managing Open Source on IBM i • Exploring Open Source Programming Languages ▪ Integration with Db2 and ILE • After-Hours Lab: Containers & Setting up Development Environment • After-Hours Lab: Open Source Programming Languages 4 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com IBM Systems Technical University © 4 5 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Day 3 Agenda • Reviewing the three Pillars of Modernization • Looking at the IBM i variant of the LAMP stack • Deploying LAMP-based solutions • Bonus: Approaches to Rapid Modernization • After-Hours Lab: Deploying LAMP applications • Bonus After-Hours Lab: Rapid Modernization 5 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 6 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Materials Available online 6 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 7 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Pillars of Modernization 7 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 8 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Pillars of Modernization Application Usage Enhancement Data Exploitation Platform Expansion 8 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 9 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Augmenting existing Solutions • Augmenting existing solutions is the process of developing new interfaces within an existing application/data environment • An example of solutions augmentation would be development of new interfaces for the consumption of ERP application generated data • Solution augmentation 9 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 10 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Augmentation example/benefits • Classic application structure from a user/function perspective could be represented as follows: • Augmented solutions could include supporting new output/consumption formats: 10 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 11 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Things to consider • The existing application does not change ▪ Can continue to be used for both data-entry and data-consumption • The existing data-model does not change ▪ The investment made in collecting/generating data is not lost. 11 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 12 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Augmentation Benefits • Moving “data consumption” functions to PHP/web allows us to move beyond the 80x25 display ▪ Combination of data from multiple traditional screens/applications becomes possible • Augmentation can be undertaken as a step-wise progression ▪ Since the “legacy” application is not be replaced, individual functions can be supplemented over time “The green screen is great for data entry, but it lacks in data consumption.” 12 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 13 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Modernization Data – Extending Reach & Influence • One way to extend the reach of data is through web-enabled CRUD applications • Data stored in database tables generally need the following operations ▪ Create Insert a new row ▪ Read Read existing row(s) ▪ Update Change some values in a record ▪ Delete Delete a record This is the basic definition of CRUD 13 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 14 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Three approaches to CRUD Functions Supported Development Competency Level Developer Dependent Straight / High – all required function Procedural / handled by custom code Monolithic PHP Moderate – calls to MVC / middleware facilitate db Developer Dependent Middleware connections and retrievals Low – Single statement CRUD, rd enables CRUD (based on master-detail 3 Party table or select) export Solutions phpGrid 14 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 15 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com A Simple Script Generates a Data Grid <!DOCTYPE html> <?php use phpgrid\C_DataGrid; require_once("phpGrid/conf.php"); $dg = new C_DataGrid("SELECT * FROM SP_CUST","CUST_ID","SP_CUST"); $dg -> display(); ?> 15 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 16 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Adding Capabilities is Also Simple • Adding Search Capability $dg -> enable_search(true); • Adding Advanced Search $dg -> enable_advanced_search(true); • Adding Edit Capability $dg -> enable_edit(“FORM”); • Adding Export Capability $dg -> enable_export(‘EXCEL’); • Supporting Master/Detail $sdg -> new C_DataGrid(“SELECT * FROM ORDER”, “CUST_ID”, “ORDERS”); $dg -> set_masterdetail($sdg, “CUST_ID”); 16 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 17 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Modernization as it relates to the Platform • Modernization is defined as the action of modernizing or the state of being modernized • Modernization as it relates to the platform is the process of moving beyond an application solution view to a more holistic view of the platform ▪ Platform modernization can be accomplished in a number of ways including: − Deploying new/additional productivity oriented solutions on the platform − Leveraging new development capabilities for the development of new solutions 17 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 18 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Open Source Solutions – Growing Rapidly • In May of 2018 IBM released a software repository and tools for installing and managing Open Source packages in an open source fashion (i.e., RPMs) • The Open Source support and packages takes advantages of the PASE environment • This support brings to IBM i a whole world of additional solutions and allows for rapid delivery of those solutions 18 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 19 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Open Source Productivity Solutions Layer Solution MySQL/MariaDB Apache PHP Stack Deployment Linux 19 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 20 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Open Source Productivity Solutions on IBM i Layer Solution MySQL/MariaDB Apache PHP Stack Deployment LinuxIBM i 20 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 21 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Db2 Storage Engine for MySQL and MariaDB • Supports open source applications (i.e., LAMP-based) while simplifying data management ▪ Applications written to MySQL or MariaDB can store their data in Db2 without any code change ▪ One database to manage, backup, and protect ▪ RPG applications, Db2 Web Query have access to MySQL/MariaDB generated data 21 | Zend by Perforce © 2019 Perforce Software, Inc. zend.com 22 | COMMON Webinar Series: Open Source on IBM i | November 2019 zend.com Case studies galore “The ability to run the latest open source software alongside unmodified code from the 1980s is surely unheard of on any other platform, and this offers huge value to our business in terms of reducing both ongoing risk and costs in IT.” https://www.ibm.com/case-studies/cras-systems-open-source “The fact that the platform supports open source solutions means that we can leverage the very best technology and benefit from the support and development of the open source community while avoiding inhibitive licensing costs. https://www.ibm.com/case-studies/fibrocit-systems-furniture-design