About us. Proximity 2015

Similar documents
Running open source PHP appl icat ions. Part of the PHP on IBM i series

Collaborative Open Source with PHP on IBM i

PHP on IBM i: What s New with Zend Server 5 for IBM i

Bring your intranet to the IBM i With Drupal and Zend Server

GoAnywhere Director to GoAnywhere MFT Upgrade Guide. Version: Publication Date: 07/09/2015

Upgrade Guide. Product Version: Publication Date: 02/11/2015

MySQL for IBM i Or Zend DBi == MySQL!

MySQL Quick Start Guide

E-Commerce: Designing And Creating An Online Store

MySQL quick start guide

To install Multifront you need to have familiarity with Internet Information Services (IIS), Microsoft.NET Framework and SQL Server 2008.

MOODLE Installation on Windows Platform

Embedded Based Web Server for CMS and Automation System

MySQL Quick Start Guide

TAO Installation Guide v0.1. September 2012

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Content Management System

Installation, Configuration, and Usage

Speed up your web site. Alan Seiden Consulting alanseiden.com

User Guide Zend Server Community 4.0.3

Web Performance First Aid. Alan Seiden Consulting alanseiden.com

SETTING UP A LAMP SERVER REMOTELY

Bring your intranet to the IBM i With Drupal and Zend Server

Oracle Managed File Getting Started - Transfer FTP Server to File Table of Contents

Bring your intranet to the IBM i With Drupal and Zend Server

ultimo theme Update Guide Copyright Infortis All rights reserved

GoAnywhere MFT Upgrade Guide. Version: Publication Date: 08/12/2015

XCloner Official User Manual

Lesson 7 - Website Administration

Shop by Manufacturer Custom Module for Magento

Livezilla How to Install on Shared Hosting By: Jon Manning

AS/400e. TCP/IP Services and Applications Webserver(HTTP)

TIBCO Spotfire Metrics Prerequisites and Installation

System i Access for Web Configuring an Integrated Web Application Server Instance

Tutorial: Packaging your server build

FlexSim LAN License Server

How to Install MediaWiki on Windows Server 2003

VERSION 9.02 INSTALLATION GUIDE.

Workshop on Using Open Source Content Management System Drupal to build Library Websites Hasina Afroz Auninda Rumy Saleque

PHP in the Enterprise

Document Freedom Workshop DFW 2012: CMS, Moodle and Web Publishing

OxyClassifieds Installation Handbook

Installation Instructions

Easy Setup Guide 1&1 CLOUD SERVER. Creating Backups. for Linux

Lets Get Started In this tutorial, I will be migrating a Drupal CMS using FTP. The steps should be relatively similar for any other website.

Team Foundation Server 2013 Installation Guide

MarkLogic Server. Installation Guide for All Platforms. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

SIMIAN systems. Setting up a Sitellite development environment on Windows. Sitellite Content Management System

Compiere ERP & CRM Installation Instructions Windows System - EnterpriseDB

Build it with Drupal 8

How to start with 3DHOP

Configuring Apache HTTP Server as a Reverse Proxy Server for SAS 9.2 Web Applications Deployed on BEA WebLogic Server 9.2

Installation Guide. MashZone. Version 9.6

Open Source Content Management System JOOMLA

RecoveryVault Express Client User Manual

Mercury Users Guide Version 1.3 February 14, 2006

Cloudwords Drupal Module. Quick Start Guide

Software Development & Education Center PHP 5

Installing Drupal on Your Local Computer

Monitoring Oracle Enterprise Performance Management System Release Deployments from Oracle Enterprise Manager 12c

The easy way to a nice looking website design. By a total non-designer (Me!)

Apache web server magic on IBM i. Alan Seiden Consulting alanseiden.com

Customer Control Panel Manual

Online Backup Client User Manual

Elgg 1.8 Social Networking

WordPress Security Scan Configuration

Administering Jive for Outlook

1. Product Information

vcenter Operations Management Pack for SAP HANA Installation and Configuration Guide

i2b2 Installation Guide

Online Backup Linux Client User Manual

Online Backup Client User Manual Linux

X-POS GUIDE. v3.4 INSTALLATION SmartOSC and X-POS

Installation and Administration Guide

Online Backup Client User Manual

Recommended File System Ownership and Privileges

Installing Drupal 8 on Windows 7 with XAMPP. I am trying to install Drupal 8 on my Windows machine as a development system.

Building job sites with Joomla!

5 Mistakes to Avoid on Your Drupal Website

ultimo theme Update Guide Copyright Infortis All rights reserved

Compiere ERP & CRM Installation Instructions Linux System - EnterpriseDB

TECHNICAL DOCUMENTATION SPECOPS DEPLOY / APP 4.7 DOCUMENTATION

FileMaker Server 12. Getting Started Guide

System Administration Training Guide. S100 Installation and Site Management

Site Store Pro. INSTALLATION GUIDE WPCartPro Wordpress Plugin Version

IBM WebSphere Application Server Version 7.0

SugarCRM CE (Community Edition Only) Plugin. Installation. Guide

Creating Value through Innovation MAGENTO 1.X TO MAGENTO 2.0 MIGRATION

SOS SO S O n O lin n e lin e Bac Ba kup cku ck p u USER MANUAL

Pete Helgren Ruby On Rails on i

Deploying Intellicus Portal on IBM WebSphere

FileMaker Server 14. FileMaker Server Help

Compiere 3.2 Installation Instructions Windows System - Oracle Database

PHP and MySQL on IBM i New Stacks and New Solutions

Install guide for Websphere 7.0

Backup and Restore MySQL Databases

Configuring Sun StorageTek SL500 tape library for Amanda Enterprise backup software

DiskPulse DISK CHANGE MONITOR

MAGENTO Migration Tools

How To Create An Easybelle History Database On A Microsoft Powerbook (Windows)

Transcription:

About us

Agenda What is open source? PHP for open source PHP on IBM i Live install of Zend Server Live install of Zend DBi What are Zend Server applications? Hands-on install from a.zpk Hands-on install from source Zend Server - A brief tour Configuring Zend Server top tips Q & A

Objectives what are yours? What is your experience of open source applications? What is your experience of PHP, MySQL or Zend Server? Would you run an open source application on IBM i for your business? Are you interested in any specific open source applications?

Objectives what are ours? An understanding of open source applications on IBM i Implementation of Zend Server and Zend DBi Installation of an open source application of your choice Basic configuration of your open source application An open source application up and running

What is open source?

Free like a puppy

Open source solutions Source code made available for free under license License provides rights to study, change and distribute Core code is free, but expect to pay for anything beyond this Extra features Skins for CMS systems Support Cost of maintaining the software Your time Backups etc.

Open source solutions Can use any language or database, but PHP and MySQL is a popular combination PHP and MySQL are available on IBM i

Open source solutions We will install the following Zend Server PHP engine, Apache web server Zend DBi MySQL database Apache IBM i MySQL This gives us our iamp stack i = IBM i A = Apache M= MySQL P = PHP PHP Applications

PHP on IBM i A great choice for web development Easy to learn, especially for RPG developers PHP itself is open source and free to use Widely used Strong PHP community Extensive resources and tools available Wealth of education materials Runs on IBM i Integrates and works well with existing applications SQL database access, RPG / COBOL / CL program calls No 3 rd party hardware required

PHP on IBM i HTTP request HTML, CSS, JS etc. CSS, JavaScript

Installing Zend Server

Installing Zend Server who are Zend? Founded by Andi Gutmans and Zeev Suraski in 1999 Provides products and services relating to PHP Zend Server Zend DBi Zend Studio Zend Framework

Installing Zend Server what is Zend Server? The PHP engine (and not just on IBM i) Complete application server, including web server Brought to IBM i thanks to collaboration between IBM and Zend Basic version is free for IBM i (with forum support) Uses IBM HTTP Server (Apache) Comes complete with XML Toolkit to access native resources

Installing Zend Server prerequisites Folder /usr/local exists Ports 10080-10083 are available Licensed programs and PTFs appropriate to the OS version are installed Zend Server not already installed I will install on to a clean partition, you can verify it works

Installing Zend Server prerequisites For IBM i 6.1 Licensed Program Product Option Description 5761SS1 33 Portable App Solutions Environment 5761SS1 30 Qshell 5761DG1 *BASE IBM HTTP Server for i 5733SC1 *BASE IBM Portable Utilities for i 5733SC1 1 OpenSSH, OpenSSL, zlib Current PTF Group for 5761DG1 (minimum SF99115 Group 13) FastCGI PTFs 5761SS1 SI36005 5761DG1 SI36027

Installing Zend Server prerequisites For IBM i 7.1 Licensed Program Product Option Description 5770SS1 33 Portable App Solutions Environment 5770SS1 30 Qshell 5770DG1 *BASE IBM HTTP Server for i 5733SC1 *BASE IBM Portable Utilities for i 5733SC1 1 OpenSSH, OpenSSL, zlib Current PTF Group for 5770DG1 (minimum SF99368 Group 1)

Installing Zend Server prerequisites For IBM i 7.2 Licensed Program Product Option Description 5770SS1 33 Portable App Solutions Environment 5770SS1 30 Qshell 5770DG1 *BASE IBM HTTP Server for i 5733SC1 *BASE IBM Portable Utilities for i 5733SC1 1 OpenSSH, OpenSSL, zlib No additional PTFs required

Installing Zend Server installing the software Download the appropriate SAVF from the Zend website, and FTP to the IBM i Choose your installation mode Silent (a.k.a. Batch) Interactive We will choose interactive RSTLICPGM LICPGM(6ZSVRPI) DEV(*SAVF) SAVF(QGPL/ZSVRSAVF6) Skip Zend DBi for now

Straw Poll What IBM i version are you running?? Do you have Zend Server installed? Do you have any PHP / web development skills? Is your business using Open Source PHP applications on other platforms? Do you run Zend Server on Windows or Linux?

Installing Zend Server completing the installation Zend Server Console Web based UI for configuration and monitoring of Zend Server Navigate to http://<your_server_ip>:10081/zendserver First time in there will be initial configuration to do Accept the license agreement Select the appropriate launch profile Development Production Set the admin and developer user passwords Deploy source libraries

Exercise 1

Installing Zend Server Validate the installation Navigate to http://<your_server_ip>:10080 Zend Server Test Page should be displayed Check the subsystem on the IBM i For ease, we will use Presto to provide 5250 access via a browser Navigate to http://<your_server_ip>:8022/presto/presto Log in with QSECOFR / Proximity!! GO ZENDSVR6/ZSMENU > 5 > 3 > Enter

Installing Zend DBi

Installing Zend DBi what is Zend DBi? MySQL binaries, compiled to run on IBM i Functionally identical to MySQL Popular, widely used open source database The database of choice for many open source applications Zend DBi is the IBM i implementation of MySQL, delivered by Zend

Installing Zend DBi installing the software Can be done as a second stage of the initial Zend Server installation GO ZENDSVR6/ZSMENU then take option 6 ZendDBi Management menu and installation will start NOTE: QSECOFR privileges are required!

Installing Zend DBi verifying the installation A new subsystem and daemon job are created, so check that the subsystem is running WRKACTJOB SBS(ZENDDBI) Can also access the command line interface via QSH or QP2TERM then QSH cd /usr/local/mysql/bin mysql u root > show databases; > use mysql; > show tables;

Installing Zend DBi verifying the installation After installation, the root user password should be set > set password for root @ localhost = password( Proximity!! ) > quit To access the command line interface, we now need to enter mysql u root --pass= Proximity!!

Exercise 2

Installing Zend DBi Verify the installation Navigate to http://<your_server_ip>:8022/presto/presto Log in with QSECOFR / Proximity!! GO ZENDSVR6/ZSMENU > 6 > 2 Access the command line interface QSH cd /usr/local/mysql/bin mysql u root --pass= Proximity!! > show databases; > use mysql; > show tables; > select * from user;

Zend Server Applications

Zend Server applications what are they? Any software that you run using Zend Server Open source applications Packaged, e.g. Magento, Drupal From Source, e.g. MediaWiki, Adminer Your own developed applications STREAM (delivery and transport management) in our case Once an application is configured, you can View statistics and logging information relating to the application Define monitoring rules specific to the application Define caching rules specific to the application

Zend Server applications how to define an application Applications are created automatically when you deploy from a package You can also manually define an application for Your manually developed code Other applications installed from source We will cover this in detail shortly

Installing from a.zpk

Installing an application from a.zpk overview Zend provide a number of pre-packaged Open Source applications that can be installed directly from the Zend Server console Magento e-commerce Drupal content management WordPress content management / blog Joomla content management phpmyadmin database admin tool phpbb forum We have successfully deployed all of these, and use Drupal running on IBM i for all our company websites

Installing an application from a.zpk example We use Drupal extensively, so we will us this as an example Access the Zend Server Console > Guide Page > click the Drupal icon

Installing an application from a.zpk download

Installing an application from a.zpk readme

Installing an application from a.zpk app details

Installing an application from a.zpk license

Installing an application from a.zpk prerequisites

Installing an application from a.zpk parameters

Installing an Application from a.zpk summary

Installing an application from a.zpk manual download Alternative approach, if you already have the.zpk file Access the Zend Server Console Applications > Apps > Deploy Application Specify the location of the.zpk Remaining steps are as before Some config tweaks may be needed to ensure upload does not time out Configurations > PHP > Filesystem and Streams Set default_socket_timeout to e.g. 300 seconds Configurations > PHP > Resource Limits and Tuning Set max_input_time to e.g. 300 seconds

Installing an Application from a.zpk under the covers Source is deployed in /usr/local/zendsvr6/var/apps/http/ default /0 A.conf file is generated and saved in /usr/local/zendsvr6/etc/sites.d/http/ default /0 The.conf files are included within the Apache config file Provides the necessary alias information to let Apache locate the application Any staging and activation scripts defined in the package are executed Application config based on the supplied parameters Generation of MySQL database if required

Exercise 3

Installing an application from a.zpk Access the Zend Server Console Navigate to http://<your_server_ip>:10081/zendserver Log in with admin / Proximity!! Deploy an application Click on the Guide Page tab Click on the application you want to deploy Follow the steps defined on the crib sheet provided for the application Launch the application and have a wander around In the Zend Server Console, check the application specific statistics

Installing from source

Installing an application from source overview Any application written in PHP that uses MySQL for the database can be implemented on IBM i The examples we will look at today are Adminer database admin tool SugarCRM CRM tool Mantis BT bug tracker Media Wiki wiki We have successfully deployed and use Adminer and SugarCRM on IBM i

Installing an application from source archives Typically, source will be provided in a.zip or.tar archive for ease of downloading Both of these types can be unpacked on the IBM i

Installing an application from source unpacking.zip files Download the.zip file to the IFS, go into QSH or QP2TERM and enter jar tf <myfilepath> to list the contents of the archive Navigate to the location that you want to extract to and enter jar xf <myfilepath> to extract the contents

Installing an application from source unpacking.tar files Download the.tar file to the IFS, go into QSH or QP2TERM and enter tar -tf <myfilepath> to list the contents of the archive Navigate to the location that you want to extract to and enter tar -xf <myfilepath> to extract the contents. If you have a.tar.gz file, extract the.tar file from it before transferring to the server

Installing an application from source unpacking.tar files The native tar command can be problematic, as file paths are limited to 100 characters If you get a @longlink file after unpacking, the path limit has been exceeded and some files will be missing or wrongly named There are two ways to address this The easy approach save the.tar file to the IFS root and unpack, then move to the correct location This will only work if the file paths are now less than 100 characters The hard approach install the Open Source binary for the GNU version of the tar command More information on how to do this is available at http://www-01.ibm.com/support/docview.wss?uid=nas8n1011528 http://www.youngiprofessionals.com/wiki/index.php/pase/opensourcebinaries

Installing an application from source example Adminer is a lightweight MySQL management tool Single script file, so easy to install

Installing an application from source create folder

Installing an application from source create folder

Installing an application from source authority

Installing an application from source upload

Installing an application from source definition Access the Zend Server Console > Applications > click Define Application

Installing an application from source definition

Installing an application from source definition

Installing an application from source launch

Exercise 4

Installing an application from source Create a folder within htdocs for the application and set the folder authority Navigate to http://<your_server_ip>:8022/presto/presto Log in with QSECOFR / Proximity!! wrklnk '/www/zendsvr6/htdocs/* mkdir /www/zendsvr6/htdocs/<your_folder_name> Take option 9=Work with Authority against the new folder Grant user QHTTPSVR *RWX data and *ALL object authority Upload the source Use FileZilla to transfer the source,.zip or.tar to the new folder

Installing an application from source Unpack the source (if necessary) For.zip files In QSH or QP2TERM cd /www/zendsvr6/htdocs/<your_folder_name> jar xf <your_file_name> For.tar files In QSH or QP2TERM cd /www/zendsvr6/htdocs/<your_folder_name> tar xf <your_file_name>

Installing an application from source Define the Application within Zend Server Navigate to http://<your_server_ip>:10081/zendserver Log in with admin / Proximity!! Click on the Applications tab Click Define Application Follow the steps defined on the crib sheet provided for the application Launch the application and have a wander around In the Zend Server Console, check the application specific statistics

Troubleshooting Most common problems are authority related Try granting QTMHHTTP full authority to the application folder and all contents Check the logs! PHP log in Zend Server console Apache logs in /www/zendsvr6/logs For specific applications refer to user documentation, or Google

Zend Server Console

Zend Server Console overview dashboard Default landing page when you log into the console Displays overview information for the server Server statistics System events Information can also be filtered per application

Zend Server Console applications Lists defined and deployed applications Displays information for individual applications Application status Summary information Provides access to application monitoring and caching rules Provides access to virtual host configuration and PHP library management

Zend Server Console configurations Configuration of various aspects of Zend Server Components enable/disable and configure Zend Server Components Deployment required for us! Important for app performance Data Cache, OPCache, Page Cache Important for monitoring Code Tracing, Monitor, Statistics PHP configure installed PHP components Z-Ray fantastic tool for developers more later IDE Integration allows close coupled debugging from Zend Studio Monitor additional configuration for the Zend Monitor component

Zend Server Console administration Day-to-day administration of Zend Server Servers allows restart of server and shows any server level errors Audit Trail shows log of changes made to the server Users change passwords for admin and developer users Web API maintenance of Web API keys, used in Zend Studio integration and when accessing the server via its API layer (e.g. from Jenkins or other CI tools) License shows license information Settings server level configuration

Zend Server Console Z-Ray Live Developer tool that gives insight into PHP code by delivering detailed information into a browser component Information includes PHP functions SQL queries Request variables Errors and warnings Server events Memory usage Z-Ray Live allows this data to be viewed for requests from devices where browser component is not appropriate, e.g. mobile applications, API calls

Configuring Zend Server

Configuring Zend Server top tips As seen on PowerWire.eu Character Set Configuration Multibyte Support Compression Bonus Tip! Memory Pools and Run Priorities Available on our website: http://proximity.co.uk/php-on-i

Configuring Zend Server character sets Get this right now and you ll never have character set problems In /www/zendsvr6/conf/httpd.conf DefaultFsCCSID 00285 CGIJobCCSID 00285 DefaultNetCCSID 01208 AddCharset UTF-8.htm.html.xml In /www/zendsvr6/conf/fastcgi.conf SetEnv= CCSID=1208 SetEnv= LANG=C

Configuring Zend Server character sets In /usr/local/zendsvr6/share/toolkitapi/toolkit.ini encoding = UTF-8 In the console, go to Configurations > PHP > ibm_db2 ibm_db2.i5_dbcs_alloc set to use expanded allocations

Configuring Zend Server multibyte support Means you re not limited to ASCII In the console, go to Configurations > PHP > mbstring mbstring.http_output set to UTF-8 mbstring.internal_encoding set to UTF-8 mbstring.encoding_translation set to On mbstring.http_input set to Pass mbstring.language set to neutral

Configuring Zend Server compression A very quick win speeds up response times of web pages In /www/zendsvr6/conf/httpd.conf LoadModule deflate_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM AddOutputFilterByType DEFLATE application/x-httpd-php application/json text/css application/x-javascript application/javascript text/html

Configuring Zend Server memory pools and run priorities Worth considering for Production systems where resources are shared with legacy applications Use WRKSHRPOOL to define one of the shared pools as Zend Use CHGSBSD to allocate the pool to subsystem ZENDSVR6 Change the Zend Server Class using WRKCLS ZENDSVR6/*ALL to set Run Priority to 20, equivalent to interactive jobs Change the HTTP Server Class using WRKCLS QHTTPSVR/QZHBHTTP to set Run Priority to 20, equivalent to interactive jobs

Any questions?

Thanks i-ug for the opportunity Steve Bradshaw for the hardware and support You for attending