s103 cics cloud and dev ops agility

45
© 2015 IBM Corporation CICS Cloud and DevOps agility Matthew Webster STSM, CICS meets the cloud S103

Upload: nickgarrod

Post on 04-Aug-2015

26 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: S103 cics cloud and dev ops agility

© 2015 IBM Corporation CICS Cloud and DevOps agility

Matthew WebsterSTSM, CICS meets the cloud

S103

Page 2: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Please note

IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion.Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion.Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

Page 3: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Agenda

• CICS Explorer As-Is Scenario

• CICS TS V5.3 open beta : Cloud with DevOps

• Automated builds with the CICS Build Toolkit

• Scripted deployments with DFHDPLOY

• UrbanCode Deploy support

Page 4: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Explorer As-Is Scenario

5

Page 5: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Bundles and CICS Applications

CICS TS V4.1 CICS business events

CICS TS V4.2CICS system eventsCICS Java applications

CICS TS V5.1CICS policyCICS cloud applications

CICS TS V5.2Web servicesApplication multi-versioning

All these applications require CICS bundles to be packaged, deployed to zFS, and installed into CICS

6

Page 6: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Explorer

7

Page 7: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Explorer Scenario

• Export projects to local file system (and build into OSGi bundles)• Deploy binary CICS bundles and CICS applications to zFS• Create bundle and application definitions as necessary• Install, enable and make available• Make unavailable, disable and discard

How do I build the CICS bundles from SCM?

How do I automate the deployment into CICS?

How can I coordinate this process with other application and database components?

Page 8: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

To adopt DevOps and fully automate deployment of CICS applications …

A Build Engineer can create a fully automated build environment for any style of CICS application.

A Release Engineer can use common scripting languages and tools to create a continuous deployment model for any style of CICS application.

A Release Engineer can use IBM UrbanCode Deploy to provision a CICS application in coordination with other application and database components in a single action.

10

Page 9: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS TS V5.3 open beta: Cloud with DevOps

11

Page 10: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Service Agility

Enhanced support for Java and the WebSphere Liberty Profile

Cloud with DevOps

Operational Efficiency

IBM CICS Transaction Server V5.3 open beta

enterprise grade mixed language application serving

Performance optimizations, enhanced metrics and additional security

New cloud and DevOps support to automate CICS deployments

• Additional Liberty features• Enhanced interoperability• Simplified management• Enhanced Java SE support

• Web service optimizations• Performance improvements• Enhanced metrics• Additional security options

• Automated builds• Scripted deployments• UrbanCode Deploy support• Enhanced cloud

enablement

Available since 23rd Mar 2015

Page 11: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Automated builds

Scripted deployments

UrbanCode Deploy support

Enhanced cloud enablement

CICS TS V5.3 open beta : Cloud with DevOps

New cloud and DevOps support to automate CICS deployments

Cloud applications and bundles are a convenient way to package and manage components, resources, and dependencies in CICS.

The CICS TS V5.3 open beta introduces the CICS Build Toolkit, which provides a command-line interface for automating the building of CICS projects created using the CICS Explorer.

CICS cloud applications and bundles, as well as non Liberty Java components, can now be automatically built from source code.

Page 12: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Automated builds

Scripted deployments

UrbanCode Deploy support

Enhanced cloud enablement

CICS TS V5.3 open beta : Cloud with DevOps

New cloud and DevOps support to automate CICS deployments

A built CICS project that resides in zFS, can now be programmatically deployed across CICS systems using a set of scripting commands.

DFHDPLOY is a new batch utility to support the automated provisioning of CICS bundles, OSGi bundles within CICS bundles, and CICS applications.

DFHDPLOY commands can be used to deploy CICS bundles and CICS applications into a desired state, such as ‘enabled’ or ‘available’ as well as undeploy and remove them.

Page 13: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Automated builds

Scripted deployments

UrbanCode Deploy support

Enhanced cloud enablement

CICS TS V5.3 open beta : Cloud with DevOps

New cloud and DevOps support to automate CICS deployments

A CICS Transaction Server beta plug-in for UrbanCode Deploy supports the deployment of CICS applications middleware configurations and database changes.

Using UrbanCode Deploy, multiple deployment steps can be coordinated in a single action.

The CICS TS beta plug-in provides functions for installing and removing resources, NEWCOPY and PHASEIN for programs, and performing a pipeline scan.

Page 14: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DevOps Scenario

19

Page 15: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Automated builds with the CICS Build Toolkit

Page 16: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Build Scenario: Java OSGi

“I need to build a Java application that comprises several OSGi bundles. I have to invoke the Java build and package the JAR files with the right names in the CICS bundle. The process needs to be flexible enough to cope with version changes as well as the addition and removal of OSGi bundles “

Page 17: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Build Toolkit

• Command-line interface to build CICS projects– Script alternative for “Export ... to z/OS UNIX File System”– One tool to build for all versions of CICS TS– Uses projects from CICS Explorer optionally shared through SCM

• Installation on z/OS, Linux, Windows – Transfer cicsbt_v5.3.0.0.zip from CICS beta site in binary – Unzip; jar -xf cicsbt_v5.3.0.0.zip – Make executable on z/OS and Linux; chmod a+x *.sh – Requires

• Java 7 or above, for z/OS IBM 31-bit or 64-bit SDK

Page 18: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Build Toolkit examples

• Build a CICS bundle• Bundle name, bundle name+version, several bundles, all bundles

cicsbt --input my/source/dir/*--build MyBundleProject--output my/output/dir

• Build a CICS bundle that references an OSGi Java project• Can use a CICS version .target or your own

cicsbt --input my/source/dir/*--build OSGiBundleProject

--target com.ibm.cics.explorer.sdk.runtime51.target--output my/output/dir

• Build a CICS cloud application and binding• Application name, application name + version, all applications

cicsbt --input my/source/dir/*--build MyApplication

--output my/output/dir

Page 19: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS Build Toolkit as part of continuous integration

• Build Engineer can download write a build script to: – Check out resources– Build CICS

application– Copy to staging

• Test, and run from continuous integration build server, such as Jenkins or RTC

Page 20: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Scripted deployments with DFHDPLOY

Page 21: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Deployment Scenario: Java OSGi

“I need to deploy a Java application and the required JVM server. The process needs to be simple and repeatable so that it can be used by developers each time they change the application or the Java environment is updated. Bundles have a lot of states, and it takes a lot of work to automate getting them into the state I want.“

Page 22: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

As-Is: Undeploy bundle v1 and deploy bundle v2 (pseudo-code)

Page 23: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Example DFHDPLOY script

Page 24: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Example DFHDPLOY output

29

Page 25: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

The new DFHDPLOY program

Automate deployment of bundles (and applications) through simple single commands…

“Take a bundle on disk, install it, and take it to the state I want.”... and the reverse as well.

Automation runs faster - takes advantage of new synchronous APIs where available.

Intelligent management of BAS and CSD definitions– Including support for shared CSDs

Page 26: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

The new DFHDPLOY program

• Can also run a SET command for granular control of existing bundles and applications.

SET APPLICATION(MYAPP) VERSION(1.2.5) PLATFORM(MYPLAT) STATE(DISABLED)

• Applications work in just the same way as CICS bundles do.

Page 27: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

The different commands

Page 28: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DFHDPLOY DEPLOY BUNDLE

33

Page 29: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DFHDPLOY UNDEPLOY BUNDLE

34

Page 30: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DFHDPLOY SET BUNDLE

35

Page 31: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DFHDPLOY DEPLOY APPLICATION

36

Page 32: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DFHDPLOY UNDEPLOY APPLICATION

37

Page 33: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

DFHDPLOY SET APPLICATION

38

Page 34: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

UrbanCode Deploy support

Page 35: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Deployment Scenario: CICS and DB2 Updates

“I need to deploy an application update into CICS and perform a BIND operation of the updated DB2 package and plan. The process should be the same in development, test and productiont. This should be simple and safe enough for a developer to use”

Page 36: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

IBM UrbanCode Deploy – typical uses

• Continuous Delivery• Integrate with build and test tools to automatically deploy, test and promote new builds

• Production Deployments • Orchestrate a complex production deployments of applications and configuration

• Self-Service • Grant teams rights to “push the go button” for different applications and environments

• Incremental Updates • Deploy only the changed components or missing incremental (patch) versions

Page 37: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Different environments support through variables

42

Page 38: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS TS plug-in for UrbanCode Deploy example

• z/OS and CICS plug-in steps

• – Copy Artifacts - loads the artifacts that make up the z/oS component version

• – Deploy Data Sets - deploy the component version to z/OS by copy datasets and members

• – NEWCOPY Programs – performs a NEWCOPY for the changed members

43

Page 39: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS and DB2 steps performed in parallel

44

Page 40: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

More than just NEWCOPY

45

Page 41: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

CICS TS plug-in for UrbanCode Deploy

IBM UrbanCode Deploy no-charge trialhttp://www.ibm.com/software/products/en/ucdep/

CICS TS plug-in available now!https://developer.ibm.com/urbancode/plugins/ Use UrbanCode Deploy web interface to install plug-in .zip

Scenarios in CICS TS plug-inInstall and lifecycle resourcesNEWCOPY and PHASEIN programs, scan pipelines

46

Page 42: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Summary

• CICS Build Toolkit – Multi-platform tool with a command-line interface to build CICS cloud

applications and bundles – Run from continuous integration build server, such as Jenkins– Works with CICS TS V4.1 and above.

• DFHDPLOY– JCL utility to deploy and undeploy CICS bundles and cloud

applications– Script the deployment in a single step, without the complexity of

polling.

• CICS plug-in for UrbanCode Deploy – Extends IBM UrbanCode Deploy to deploy and undeploy CICS

applications, in coordination with other application and database components in a single action

47

Page 43: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

Questions?

Page 44: S103 cics cloud and dev ops agility

© 2015 IBM Corporation

More Information

• IBM Redbooks publication (“Cloud Enabling IBM CICS”): http://www.redbooks.ibm.com/abstracts/sg248114.html?Open

• Blog (CICSdev): https://www.ibm.com/developerworks/mydeveloperworks/blogs/cicsdev/tags/blog?lang=en

• What is CICS Application Multi-versioning?• How can I phase in the new version of a CICS Application?• Quick start CICS Explorer projects for “Cloud Enabling CICS”

• Demos: http://www.ibm.com/software/htp/cics/tserver/v52/library/demos.html• Provisioning application updates with no loss of service• Hosting two versions of a CICS application concurrently on the same platform

• Podcasts: http://www.ibm.com/software/os/systemz/podcasts/websphereonz/• CICS V5.2 - Multi-Versioning

• Scenarios: https://www-01.ibm.com/support/knowledgecenter/#!/SSGMCP_5.1.0/com.ibm.cics.ts.scenarios.doc/topics/Scenarios.html

• Updating an application on a platform• Hosting two versions of a CICS application concurrently on the same platform

Page 45: S103 cics cloud and dev ops agility

© 2015 IBM Corporation