4156 twist and cloud-how ibm customers make cics dance

50
© 2015 IBM Corporation ASZ-4156 Twist and Cloud How IBM Customers Make CICS Dance Isabel Arnold CICS TechSales Germany [email protected]

Upload: nickgarrod

Post on 17-Jul-2015

253 views

Category:

Technology


5 download

TRANSCRIPT

© 2015 IBM Corporation

ASZ-4156 Twist and CloudHow IBM Customers Make CICS Dance

Isabel ArnoldCICS TechSales [email protected]

Agenda

• What is a cloud?

• How CICS does cloud

• How 3 customers really want to use this

2

What does Cloud mean

• No cloud in hell…Comic Source: Webpal.net

What is Cloud Computing?

NIST Definition :

• Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to

• a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) - that can be rapidly provisioned and released- with minimal management effort or service provider interaction

• composed of 5 essential characteristics, 3 service models, 4 deployment models.

Pool resources and virtualize them

Standardize Services so they can run there

>> Service provided on-demand via Automation, >> on increasing Demand assign additional resources from the pool (elastic Scaling)

= Cost ++ Flexibility VIRTUALIZATION STANDARDIZATION AUTOMATION

Rapid elasticity Broad network access Resource pooling Measured service On-demand self-service

5 Characteristics

Private cloud Public cloud Hybrid cloud Community cloud

4 Deployment Models

http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf

Cloud - Deployment, Service, Characteristics

Software as a Service (SaaS)

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)

3 Service Models

Networking

Storage

Servers

Virtualization

O/S

Middleware

Runtime

Data

Applications

Traditional On-Premises

Clie

nt M

anag

es

Networking

Storage

Servers

Virtualization

O/S

Middleware

Runtime

Data

Applications

Softwareas a Service

Vendor Manag es in Cloud

Networking

Storage

Servers

Virtualization

O/S

Middleware

Runtime

Data

Applications

Infrastructureas a Service

Vendor Manag es in Cloud

Clie

nt M

anag

es

Networking

Storage

Servers

Virtualization

O/S

Middleware

Runtime

Data

Applications

Platformas a Service

Vendor Manag es in Cloud

Clie

nt M

anag

es

Customization; higher costs; slower time to value

Standardization; lower costs; faster time to value

3 Service Models - Comparison

SaaSSource: Cloudtechsite.com

Tag, Track &Time to pay only for what you used

TT

Tub (Pool) of resourcesTT Workload-dependent, elastic scalingWW

Interfaces over the InternetII

Self-Sevice On DemandSS

Mass production vs. high customization

• Fixed images with Compute, storage, database services …

• “mass” production – one/ few images fit all

• Reusable patterns

• Extremely customizable >> value proposition

• no Blueprints delivered – customer must create own master image

• Break down image to middleware (CICS, SAP, IMS TM, WebSphere, …)

Amazon, Linux, … z/OS

Source: www.youtube.com/watch?v=jOhbTAU4OPI#!

Glenn Anderson: With z/OS, we need to think about cloud just a bit differently…..• Today in cloud environments on distributed servers, or even with Linux

on System z, installations would provision a virtual machine with an instance of an operating system to run a single workload. To deploy another workload would mean another virtual machine with another instance of the operating system.

• However, in the context of z/OS, this methodology goes against everything we have come to know and expect about z/OS. On z/OS, you have the ability to

- run multiple disparate workloads - with different service levels - for those hosted workloads - with isolation or multi-tenancy.

• Hence the approach for cloud on z/OS is not focusing on the provisioning of operating system instances, but rather the ability to provision multiple workloads in a single z/OS instance.

Stage 1: Create a platform Simple layer of abstraction to decouple

applications from the underlying complexities of a CICS topology

Consists of Region Types - logical grouping collecting CICS regions with

common characteristics- enables them to be managed as a unit in a

platform- Created: define a region type & set up new

CICS region definitions

- Adopted: adopt existing CICS system group (CSYSGRP) as region type with its existing CICS regions

Terminal Owning Region (TOR)

Production Payroll

Automatic-Mode vs. Tuning

Stage 2: Create an application and application entry points

package CICS application in Application bundle

Deploy > manage > monitor as single entity across multiple regions in platform

Application entry points – identify resources as access

points to Application–control users' access to different

Application versions

Bind application to platform for additional characteristics

Stage 3: Add resources for the application

Transfer responsibility for creating, installing, managing resources

Don't modify resources individually (use CICS Bundle/Application operations)

Application architects: carefully consider which resources to tie to CICS Bundle lifecycle

Specify resource separately and declare as import (dependency) if resource–cannot be defined in a CICS bundle–has different lifecycle–should not be private (only LIB &

PROGRAM)

Transactions

Programs

Files

Applications in CICS

How we think about applications in CICS

How applications look after they

have been installed

Bundle your resources > get Application Context

Create a CICS Bundle to keep your resources together

Consider as a vehicle to get them into (and out of) CICS A CICS Application can

contain several CICS Bundles

OK, for simplification: this is now an application with

a CICS Bundle

About Entry Points

PROGRAM that tasks call to access application–Program not required in this bundle

URIMAP* resources providing URIs for requesters to access application–Unique name (still) required–Must be contained in same bundle–Access for Liberty, HTTP, MQ

Application context data if entry point passedOperation = FrontDoor

Application Context – Slippers (Museums-Pantoffel)

CICS Application Binding

Maps CICS bundles for application to region types in the target platform

Where else can Bundles be deployed

Bundle in Application Bundle in

Binding

Bundle in Platform

Transaction * Program *File ** Library *

OSGi Bundle JVM Server ** Pipeline **TCP/IP Service **

URI map *

Web service **Event (Application or System)Atom feedXML-based serviceChannel-based service

* CICS 5.1 | ** CICS 5.2

CICS Bundle Resources

Think about what you will be able to

build in the future!!!

German Insurance

• Hurray, we can finally bundle together Java OSGi Bundles and their corresponding Program Definitions! Because for the rest we use autoinstall…

25

Program *

OSGi Bundle

URI map *

JVM Server **

TCP/IP Service **

New packaging options

+ Library + Program + URI map + Transaction + File

+ OSGi Bundle + Program + URI map + JVM Server + TCP/IP Service

Within Bundle

Within

Binding

Classic CEDA

Within Platform

Web Services Lifecycle

Define both inbound and outbound web services

Import WSBind file Import WSDL file Generate URIMAP resource All configuration managed within the

CICS bundle lifecycle Resources can be life-cycled with

Application, Binding or Platform as appropriate

German Building Association: Great, we don’t use the PIPELINE SCAN mechanism to generate the

URIMAP anyway, now we can bundle resources

German Building Association: Great, we don’t use the PIPELINE SCAN mechanism to generate the

URIMAP anyway, now we can bundle resources

Stage 4: Add a policy

XML definition Rules to describe controls or actions

For one or more application tasksThreshold conditions to manage behaviour of user tasks

e.g. define a threshold for the amount of storage allocated by a user task, and make CICS issue a message if the threshold is exceeded

So far: Combination of IBM, ISV and self-written tools

Without application hard to tell what individual

resources do

Trans exceeding Threshold

Control application behaviour

Avoid runaway & loosing money

Policies to control

Policy Types Threshold: CPU, storage,

database access, … Action:

- Message DFHMP3001 (MP = Messaging Platform Domain)

- Event

- Abend Scope of Policy

- Application

- Operation within Application- Platform- no Scope – Scope CICS Region

Stage 5: Remove the application from the platform

Complete lifecycle by removing application from platform>> unavailable, disable, discard

Removal of individual versions possible

German Insurance

32

Multi-versioning Update

Application A 1.0.0

PROGRAM P

PROGRAM S

PROGRAM E1

Platform M

Region R

EXEC CICS LINK PROGRAM(E1)

single version application: private resources declared as application entry points become public resources when application entry point is made available.

Version 1.0.1 INSTALL & ENABLE

Platform M

Application A 1.0.1

PROGRAM P’

PROGRAM E1

Region R

PROGRAM S

Application A 1.0.0

PROGRAM P

PROGRAM E1

EXEC CICS LINK PROGRAM(E1)

Version 1.0.1 AVAILABLE

Platform M

Application A 1.0.0

PROGRAM P

Application A 1.0.1

PROGRAM P’

PROGRAM E1

PROGRAM E1

Region R

PROGRAM S

EXEC CICS LINK PROGRAM(E1)

multi-version application: entry point of highest version application public, others private

Version 1.0.1 UNAVAILABLE

Platform M

Application A 1.0.1

PROGRAM P’

PROGRAM E1

Region R

PROGRAM S

Application A 1.0.0

PROGRAM P

PROGRAM E1

EXEC CICS LINK PROGRAM(E1)

UNAVAILABLE

Application

• Generated from xCobol

• Current versioning in generated file names

• No entity, only few can tell from entry module what’s behind

• Wholistic approach• 3 major releases/

year

• 6-8 weeks testing block before release for everyone

• Include Bundle generation in that process

• Have application as entity and bundles as encapsulated modules

• Individually upgrade and test bundles – also in parallel to old version

• Allows continuous, parallel testing for dedicated users

Developer chooses

Platform M

Application A 1.1.1

PROGRAM P

Application A 1.1.2

PROGRAM P’

PROGRAM E1 PROGRAM E1

Region R

PROGRAM R

EXEC CICS INVOKE APPLICATION(A) OPERATION(op1) MAJORVERSION(1) MINORVERSION(1) EXACTMATCH

Application A 1.2.1

PROGRAM P’’

PROGRAM E1op1 op1

op1

Will pick highest bug fix automatically, so 1.1.1 hiddenEXACTMATCH: exactly 1.1MINIMUM: at least 1.1

Platform

• Developer platform on RD&T for Compile

• Test on RD&T or Host – have complete image that can be restored or reset to old version for regression test

• Not possible on mainframe, no self service …• Also test against different patch levels

• Production: multi-versioning enables testing there as well for dedicated users, 1-click rollback essential

• Services• TQF (Technical cross section functions) with date inquiry,

RACF interface, data access & locking etc. • Web Service architecture

39

Austrian Insurance

CICS Development Scenario

Mainframe SystemServices

RESTInterface

WebUI

• Goals

easily create new JVM servers for Developers Developers should get an Environment on which they can work independent No need to know the mainframe parts

• Rest Interface, for other systems to access functionality

Automatic creation of platforms and JVM servers for new users Possibility for a continuous integration server to deal with deploys and

compiles

• Web UI

Easy way for non mainframe developers to get a new JVM server on the fly Admin in the development department (not System programmer) can manage

all developer-specific use cases on the mainframe

Technical Overview

CICS Liberty

PL/1

REST Services

Web UI

RDZTest Deployment, Test PL/1 Compile

CI ServerDeployment, Staging

Job submit

Mainframe SystemServices

AdminDeployment Overview,

Server Overview, …

DeveloperSandbox management

My Servers, My Applications

REST swagger UI implementation

• Multi platforms – 1 region

• Incremental implementation of requirements• Was always dependent on a completed release to start

working, even though new requirements kept coming in – had to wait and was always the „Fool of the Nation“

• Decouple development and specify explicit dependencies• Old versions can still run in parallel• „You can use something without the fear that something else

does not work any more. And if somebody is faster, he/she does not have to wait for the rest any more.“

• „We need this system really really urgent.“

44

Isabel

WUI(CPSMWUI)

CICS Bundle (EXPLPREF)

URIMAP PREFALLPath=/connections/*HFS File =/ZT01/user/CPSMWUI/Connections_1.0.0/prefs/*

/ZT01/user/CPSMWUI/Connections_1.0.0--PREFALL.urimap--EXPLPORT.tcpipservice--META-INF

--cics.xml--prefs

--general.pref--suci101.pref– …--suci1nn.pref

Packagin & Hosting Connection Preferences

Server consolidation

Platform M

Application A

PROGRAM HELLO

Application B

PROGRAM HELLO PROGRAM HELLO

PROGRAM E PROGRAM F PROGRAM G

Region R

resource name does not have to be unique any more

> private search path

HOMELIBSYSA.SOME.LOAD

OTHERLIBSYSA.OTHER.LOAD

DFHRPL

1. Non-unique program names2. Individual load libs instead of

just one common in RPL3. Cleanup everything by

discarding the bundle4. Let students deploy as

application in one go (little checkmark)

1. Non-unique program names2. Individual load libs instead of

just one common in RPL3. Cleanup everything by

discarding the bundle4. Let students deploy as

application in one go (little checkmark)

So enough TWIST…

51

Let’s rock the

mainframe

Let’s rock the

mainframe

Thank YouYour Feedback is

Important!

Access the InterConnect 2015 Conference CONNECT Attendee Portal to complete your session surveys from your smartphone,

laptop or conference kiosk.