28
© 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments Giovanni Pacifici ([email protected])

© 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

Embed Size (px)

Citation preview

Page 1: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

© 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps

IBM TJ Watson Research Center

Middleware Challenges for the Emerging Application Environments

Giovanni Pacifici([email protected])

Page 2: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation2

Emerging Application Environments

•Pervasive connections

•Everyone is a web app developer

N2 World

•Multimodal applications

•Time critical events

•Business agility

Real-Time Enterprise

•Software stack complexity becoming unmanageable

•Exploding number of apps

•Exploding Interdependence

•Heterogeneous environments

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Complexity

Page 3: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation3

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Enable Infrastructure Scalability, Simplification and Responsiveness

Simplified

ScalableResponsive

Abstraction, Encapsulation, Virtualized

Policy DrivenEvent DrivenAutonomic

Peer to PeerPlug and Play

Page 4: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation4

Client

L7 Switch

AMFANode

4

AMSTNode

1

FASTNode

2

AMFANode

3

Client

Client

L4Switch

Configuration Manager

Centralized management model

Specialized nodes

Significant administrative overhead to grow or shrink a deployment

Not scalable communication infrastructure

Centralized and not scalable performance management controllers

Current Scalability Limitations of Middleware and Multi-Tier Architectures

Page 5: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation5

Node 5

Node 4

Node 3

Node 2

Node 1

Client

AM

FA

FA

ST

AM

FA

AM

ST

AM

ST

Client

Client

L4Switch

• no specialization of nodes• decentralized model• self-configurable infrastructure• scalable architecture and management

Middleware Self-Organization Approach to Scalability

Page 6: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation6

Middleware Scalability: Challenges

peer

• Key Functionalities–Request routing and

load balancing

–Self-organizing

–Self-healing

–Configuration data dissemination

–Single-console system monitoring

Page 7: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation7

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Enable Infrastructure Scalability, Simplification and Responsiveness

Simplified

ScalableResponsive

Abstraction, Encapsulation, Virtualized

Policy DrivenEvent DrivenAutonomic

Peer to PeerPlug and Play

Page 8: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation8

Application Architecture Complexity

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 9: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation9

How Do We Deal with This Mess?

• Virtualization: “A technique for hiding the physical characteristics of computing resources from the way in which other systems, applications, or end users interact with those resources”

• Dominant benefit of virtualizationgoing forward

– Abstraction of physical interfaces– Isolation

PhysicalResources

Resource APIs

AbstractedAPIs

PhysicalResources

Virtualization (Mapping and Substitution)

Resource APIs

App App AppAbstracted

APIs

Page 10: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation10

Reducing Complexity Through Virtualization

• Virtual resources and their configurations are decoupled and insulated from physical environment

– Durability: limits the impact of physical changes

– Pre-built virtual resources serve as the units of product distribution and provisioning

• Greater flexibility for allocating computing resources when needed and where needed

– Deploy to Resource pools

– Goal-based management

• Virtualization will be extended in scope from single server to aggregations of servers, storage, and network components.

– From making partitioning technology a large system look like many – partitioning technology

– Into make many small systems look like one from a management perspective

Physical Environment

Virtualization

Virtual Environment

Virtual Storage

Virtual Application

Server

Virtual Application

Server

Virtual Application

Server

Virtual NetworksVirtual Servers

Fixed sizes, limited ports/slots, incompatible versions, rigid configurations, workloads bound to boxes, …

SMP Servers

NetworkHardwareStorage Servers

and StorageBlades

Decouples Virtual and Physical Environments

Page 11: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation11

Virtualization is a Disruptive Technology

• Will transform data center management– Virtualization will extend beyond single systems to multi-system

pools consisting of servers, network and storage, thus creating a new platform for integrated management and optimization of data center resources.

• Will transform desktop management– The Enterprise desktop will become a virtual machine image,

standardized by the IT staff, secured by Enterprise policies, and streamable to hosted servers or client machines.

• Will transform software lifecycle management– Virtual appliances will become the unit of software distribution,

licensing, maintenance, archival and service/support.

• Will drive new hardware, software and services technologies– Hardware support for virtualization, new programming models, new

licensing models, new service & support models.

Page 12: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation12

Virtual Software Appliances

• Virtual Appliances: pre-wired, pre-configured, production-ready software stack packaged inside virtual machine images designed to run under a VM hypervisor

– Contains customization logic– May contain management agents– Associated meta-data manifest describing capabilities and requirements

• Marrying Appliances with Virtualization– Appliances: ease of use, purposed

– Virtualization: fast replication, isolation, consolidation

• Change the way enterprise software is packaged and distributed, allowing for the development of self-contained application stacks that are easy to deploy and more reliable than traditional methods

• Change the way enterprise software is managed by including management intelligence into an appliance thereby making it easy to manage from the outside

• Emerging Technologies and Research Areas– Best of breed self-managing virtual appliances focusing on multi-image ones (end-to-

end solution)– Develop tools to create, configure, provision and life-cycle manage virtual appliances– Develop techniques to manage virtual appliances at runtime to ensure high

performance, availability, and electrical power conservation

Appliances

Middleware

Operating System

Image

ResourceDefinition

Middleware

Operating System

Image

ResourceDefinition

Integrated software stacks for easier production usage by partners and customers

Preinstall and configured

Common management enablement

Common patterns

Management functionality

Virtualization

Virtual Machine

VirtualAppliance

Page 13: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation13

Configuration and Lifecycle Management

Developer

VSA Engineer

Deployer

Datacenter

Vendor Environment

Customer Environment

Application

Structure

Logical

Topology

Virtual Software Resources (VSR)Deployed, configured and running instance of VSA

VSARepository

VSA Factory

VSARepository

VSRRegistry

Register

Internet

Virtual Software Appliance (VSA)

VSR

VSR

VSR

VSA

DeploymentManager

VSA

VSA

VSAVSA

VSA

VSA

Page 14: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation14

Deployment and Activation of Virtual Appliances

OS

Middleware

Application

VSA Stack Configuration

VSA OS Configuration

OS

Middleware

Application

VSA Stack Configuration

VSA OS Configuration

DeploymentConfigurationParameters

VM Hypervisor

Physical Node

CMDBVSA Topologyvalidation and

resolution logic

VSA Model

CapabilityRequirements

VSA Model

CapabilityRequirements

DeploymentManager

VSA Master ImageVSA Clone

Page 15: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation15

Drag and Drop VSAs

Model Driven Deployment: Adding Application to Middleware VSAs

Page 16: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation16

Drag and Drop Logical App Structure

Model Driven Deployment: Adding Application to Middleware VSAs

Page 17: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation17

Create LAS → VRST Hosting Links

Configuration of both

containers auto updated based on requirements from

LAS

Model Driven Deployment: Adding Application to Middleware VSAs

Page 18: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation18

Save Topology

Model Driven Deployment: Adding Application to Middleware VSAs

Page 19: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation19

Drag and Drop Physical Resources (VM Hosts)

Model Driven Deployment: Adding Application to Middleware VSAs

Page 20: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation20

Create VSRT → VM Hosting Links

Model Driven Deployment: Adding Application to Middleware VSAs

Page 21: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation21

Deploy Topology to Physical Resources

Model Driven Deployment: Adding Application to Middleware VSAs

Page 22: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation22

Life Cycle Management of Virtual Appliances

• Two approaches:– update by replacement – a new version of appliance is created by vendor

and shipped to customer– internal update – each VM is individually updated with patches of its

software stack

• Update by replacement:– state management problem – new appliance does not include the state

acquired by the old appliance• customization parameters• business application installs• runtime data (caches, cookies, sessions, etc.)

– downtime problem – old appliance must be brought down before new appliance may be started

• Internal update– difficult to generalize as different software stacks may require different

match mechanisms

• Hybrid approaches possible

Page 23: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation23

Classification – Flow Control - Routing

On Demand Router

AMSTNode

2

FASTNode

3

Node4

Node1

PlacementExecutions

StockTradingAccountMngmt

FinancialAdvice

AM

FAST

FAST

Runtime Management: from JVMs to Virtual Appliance Management

• Runtime management in existing middleware infrastructures

– goal oriented resource management for web application environments

• Supports multi-tiered applications where each request uses multiple resources distributed

• Supports multiple applications deployed and replicated on different but overlapping subsets of machines

• Expand to manage Virtual Software Appliances and heterogeneous workloads

– Manage both request/response workloads and long-running workloads like batch jobs on same pool

– Leverage virtualization technology to enable “anywhere” placement of any workloads

– Leverage new control knobs: migration, suspension, resource control

– Make many small systems look like one from a management perspective

10

0%

0%

50

%

55%* Utilized Servers

Virtual Resource Pool

Page 24: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation24

Anywhere Placement of Workloads

Blade 1 Blade 2 Blade 3 Blade 4

Virtual Server ResourceRepository

Suspended VSRs VSR

OS

WAS

App Job Scheduling and Placement Controller

Web Request Flow Controller

Job Submissionand Monitoring

DB Inst B

J2EE App

Lucene

PovrayBlast

J2EE App

J2EE App

DB Inst A

DB Inst A

DB Inst B

DB Inst B DB Inst A

Povray

Page 25: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation25

Merging Job Scheduling and Placement

• Decides when, where, and how may instances of each container should run– Application characterized by memory and CPU requirements– Resource Requirements derived from performance goals

• Average response time goal for web applications• Completion time goal for long running jobs

– Server machine characterized by memory and CPU capacity

• Application placement algorithms– Bases on multi-dimensional bin packing techniques

• Constraints– Memory used by applications and their containers does not exceed a threshold on any server– CPU usage of applications and their containers does not exceed a threshold on any server– Constraints on the number of servers where an application should run, on the number of

instances of an application that may be started on a node, etc.– Collocation restrictions and allocation restrictions

• Objectives – Fairness – equalize application utility whenever possible– Minimize the number of placement changes

Page 26: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation26

powered off

CPU-intensive workload(s) w/ allocation limited by

hypervisor

CPU usage (MHz)

Pow

er u

sage

(w

atts

)

Hypervisor only

1 VM running (idle)

4 VMs running (idle)

Power vs. Performance prototypical example

Use Virtualization for Power Management

Key observations:• The majority of the power used by a blade is static

(i.e., used before workload is started)• Can be as much as ~80%• An (over)simple calculation:

2 blades, each 40% busy: ~170 watts

1 blade, 80% busy: ~95 watts

Savings = ~44%

• Power usage grows with workload intensity: linearly or as a convex function (when frequency scaling is implemented)

Key energy-saving strategies:• Workload consolidation and machine shut-

down• Workload reduction (via flow control)• Workload distribution

Page 27: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

IBM TJ Watson Research Center

Where is Middleware Going © 2007 IBM Corporation27

Summary

• Middleware infrastructures must address key challenges– Scalability

• no specialization• Self-configuration

– Complexity• Achieve simplification using pre-configured software stacks inside virtual

containers

• Model-driven tools to simplify deployment, provisioning and change management

– Flexibility• Enable “seamless” and “anywhere” placement of heterogeneous workloads

through isolation, migration, suspension and resume techniques

• Make many small systems look like one from a management perspective

• Future Challenges– Manage software updates

– Integrate security concerns

– Physical and virtual configuration and connectivity

– Software stack proliferation

Page 28: © 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps IBM TJ Watson Research Center Middleware Challenges for the Emerging Application Environments

© 2007 IBM Corporation | Workshop on Middleware for Next Gen Apps

IBM TJ Watson Research Center

Thank You

[email protected]