agenda: multi-tier application environments
TRANSCRIPT
IBM Software Group
1
Agenda:
SOA:What is a “Service Oriented Architecture” (SOA)Benefits of an SOASOA with IBM productsESB and SOA lifecycle
WebSphere Application Server V6.1:FeaturesScalability and high availabilityTransaction managementEIS integration
Q & A
IBM Software Group
2
Tier-0 Web Browsers
Tier-1 ServersPresentation Logic
Tier-1 Clients
B2B Connections
Tier-2 ServersBusiness Logic
Tier-3 ServersData Logic
Workflow
PvC
DocumentExchange
MessageExchang
e
ServletServlet
JSPJSP EJBEJB
EJBEJBEJBEJB
Multi-tier Application EnvironmentsMulti-tier Application Environments
IBM Software Group
3
Single integrated web-based platform
Process ChoreographyBusiness RulesBusiness State MachinesHuman TaskBusiness ObjectSCA basedWith full ESB connectivity and Adapters
Application Server
Full J2EE 1.4 Web-based AdminMessagingWeb ContainerEJB ContainerJDKPMEs
Like Express with no limitation up to 2 CPUs
ClusteringFailoverWorkload Management
Distributed Administration
Web ServicesUDDI RegistryWeb Services Gateway
Express
Network Deployment WebSphere Process Server
Editions WAS v6.0
Extended Deployment (XD)
On demand operating environment
IBM Software Group
4
Product install has a new look and feel compared to WAS V5
Product images are distributed electronically on DVDs as well as CDs
Enhancements have been made to the profile support
Web
Sphe
re A
pplic
atio
n Se
rver
for z
OS
Mainframe Qualities of Service
Web
Sphe
re A
pplic
atio
n Se
rver
N
etw
ork
Dep
loym
ent
(Clu
ster
ed, m
ulti-
mac
hine
) Deployment Manager, Node Agent, Clustering
High Availability Manager, Edge Components
“Bas
e”(S
ingl
e Se
rver
)
Web-based Administration, Web Services
Work Manager, Application Profiles, etc.
JDK
EJB Container, Messaging
Web Container (Servlets, JSPs, XML)
Service Data Objects
Packaging and Install
IBM Software Group
5
Packaging and Product Install
Single Install Image for Application Server and Deployment Manager
Product Binaries Separated from Configuration
Greatly Reduced Number of Product CDs
Support for multiple product profiles from single binary installation
IBM Software Group
6
Creating Server ProfilesV6 offers a tool (wasprofile) that creates different server profiles
Based on templatesProduct ships templates for default application server, Deployment Manager, managed nodeAdditional templates may be created with Profile Creation Wizard
Changes for WebSphere Application Server 6.0The default product configuration will itself be a profile
Profile Templates that ship with WAS 6.0Standalone Server – similar to WAS 5.x default configurationManaged Node – An empty node for the initial install of a production serverDeployment Manager – A profile that defines the Deployment Manager for a Cell
IBM Software Group
7
WebSphere Configuration Archives
Administrative options for exporting and importing:Full configurationsSubset of a full configuration
Configuration information is made generic so that it can be portedRemoves any explicit reference to the environment where the archive was captured, like the host name
Many different uses:Saving a portion of a configuration prior to making changesCreating a customized configuration archived to be imported at many different locationsCreating definitions to be shipped with applications…
IBM Software Group
8
J2EE 1.4 Highlights
Web Services and XML supportStandards / Portability - XML Schema definitions for all deployment descriptorsJAX-P 1.2 - New properties for XML parsersJAX-R - XML registry APIJAX-RPC - APIs for representing WSDL-based services as RPCs in Java (and vice-versa)JSR 109 - Web services programming and deployment modelSAAJ 1.1 - SOAP Attachments API for Java
MessagingEJB 2.1
Typed message beans (used for any inbound JCA including pluggable JMS provider)Timer service Web service end-point support
JMS 1.1Unification of point-to-point and pub-sub interfaces
ISV EnablementJMX 1.2 / JSR-077 (J2EE Management)
Notification emitters, and standard patternsInformation model representing J2EE application server concepts
JSR-088 (J2EE Deployment)XML-based deployment interfaces for J2EE
JACC 1.0Java Authorization Contract with ContainersAPIs for registering J2EE component authorization policies
OtherServlet 2.4
Extensible deployment descriptorsRequest/response listeners
JSP 2.0Expression LanguageSimple Tag Extension
EJB 2.1Timer Service
JDBC 3.0Meta data and cursor support
JavaMail 1.3 updatesJ2CA 1.5
In-bound connectionsRA lifecycle support Work manager (threads for resource adapters)
IBM Software Group
9
WebSphere 4.0 & 5.0 WebSphere 6.0WebSphere 5.02/5.1
JAX-RPC (JSR-101) 1.0 New standard API for programming Web services in Java
JSR-109 1.0New J2EE deployment model for Java Web services
SAAJ 1.1
WS-SecurityExtensions added
WS-I Basic Profile 1.0Profile compliance
UDDI4J version 2.0 (client)
Apache Soap 2.3 enhancements
The engine is a new high performance SOAP engine supporting both HTTP and JMS
JAX-RPC (JSR-101) 1.1Additional type supportxsd:listFault supportName collision rulesNew APIs for creating ServicesisUserInRole()
JSR-109 - WSEEMoved to J2EE 1.4 schema typesMigration of web services client DD moving to appropriate container DDsHandlers support for EJBsService endpoint interface (SEI) is a peer to LI/RI
SAAJ 1.2 APIs for manipulating SOAP XML messages SAAJ infrastructure now extends DOM (easy to cast to DOM and use)
WS-SecurityWSS 1.0Username Token Profile 1.0X.509 Token Profile 1.0
WS-I Basic Profile 1.1Attachments support
JAXR support UDDI v3 support
Includes both the registry implementation and the client API libraryClient UDDI v3 API different than JAXR (exposes more native UDDI v3 functionality)
Changes in Web Services
Apache SOAPThe programming model, deployment model and engine
Proprietary APIs Because Java standards for Web services didn’t exist
Not WS-I compliant
IBM Software Group
10
Programming Model ExtensionsProgramming model extensions (PMEs) are IBM-developed extensions to the J2EE model
Core extensions included in all versionsFormerly available only in Enterprise Edition
•Last Participant Support
•Internationalization Service
•WorkArea Service
•ActivitySession Service
•Extended JTA Support
•Startup Beans
•Asynchronous Beans (now called
WorkManager)
•Scheduler Service
•Object Pools
•Dynamic Query
•Web Services Gateway Filter
Programming Model (with
migration support)
•DistributedMap
•Application Profiling
IBM Software Group
11
Service Data Object (SDO)Unified data representation & retrieval across heterogeneous data sources in a disconnected, source-independent formatExploitable by tooling to provide simple application developmentexperienceSupport of XML typed dataSupport for dynamic and statically type data
DataStore
2
DataStore
3
……
Access APIsData APIs
Metadata Access APIsMetadata APIs
Access APIsData APIs
Metadata Access APIsMetadata APIs
Access APIsData APIs
Metadata Access APIsMetadata APIs
DataMediator
3
DataMediator
1
DataMediator
2
SDO CoreAPIs
Client
DataStore
1Supported Mediators:
Relational databaseEJB
FutureWeb ServicesXML
IBM Software Group
12
Enhanced Application Server ToolKit (ASTK)Provides WebSphere users with a set of basic Eclipse-based tools for assembling, deploying, debugging and profiling their WebSphere applicationsIncludes the following capabilities
Eclipse 3.0 based workbench and JDT
J2EE Assembly SupportDD editors including WAS extensions (including PMEs that are now in the base) and bindings Module/EAR creation and editing
WebSphere Rapid Deployment Capabilities
Debug and Trace/Profiling Tools
Server ToolsConfiguration ValidationAutomated Table and Datasource creationWebSphere Test Environment
– For both local and remote servers (including ND managed servers)
Universal Test Client
EJB/Web Services Deployment Tools
CMP/RDB Mapping Editor
IBM Software Group
13
Application Management: Enhancements
Enhanced EAR FileCan include all of the information needed to run the application on a server
Bindings InformationResource definitionsPer application security settings
Integrated with the WebSphere Test Environment in Studio and ATK
Fine-grained Application UpdateAbility to introduce small delta-changes to installed applications Ability to add/remove(*) modules to installed applications
System ApplicationsBinaries are stored in the product binary folderSimplifies PTF/Service Pack updates, prevents accidental removalIncludes Admin Console, File Transfer App, etc.
IBM Software Group
14
Web Server Administration
Support for extensible server typesWeb ServerGeneric Server
Console allows management of Web Servers:Check the status of the Web ServerGenerate the plug-in configuration file for that specific Web Server
No manual editing needed any longerAllows specifying keyring and keystore files
In addition, if the Web Server runs on a managed node:You can propagate the file to the node using the console
Special treatment for the IBM HTTP Server (IHS)Console allows stopping/starting server, editing httpd.conf file, displaying error.log, and propagating plug-in configuration even on an un-managed node
IBM Software Group
15
New Admin Console Look and FeelIBM Software Group
16
Integrated Web Performance Viewer (TPV)
IBM Software Group
17
Migrating to Version 6
Migration paths and tools available to migrate from V4 and V5
Version 6 supports J2EE 1.2, 1.3, and 1.4 applicationsIn general, no changes to the application code are required
Migrating from Version 5 significantly simpler than any past migration
Thanks to mixed cells support
IBM Software Group
18
Mixed Version Cells
Cell 6.xThe cell can operate in this mode for indeterminate amounts of time
Node 6.x
Node 5.x
Server 1
Server 2
J2EE 1.3Capabilities
Server 3
Server 4
J2EE 1.4Capabilities
Supported node versions include:WebSphere Application Server 5.0.x DistributedWebSphere Application Server 5.1.x DistributedWebSphere Application Server 6.x Distributed
WebSphere Application Server 6.0 supports a cell composed of multiple WebSphere nodes at different version levels
IBM Software Group
19
RequestsRequests
Requests
RequestsRequests
Requests
RequestsRequests
Requests
RequestsRequests
Requests
TransportChannel Service
TCP Channel
Small number of threads…only doing work for active operations…hold state for many connections waiting on network I/O operations
Thread pools and other resources sharedbetween WebContainer and Messaging
HTTP Channel JFAP Channel
WebContainer Channel
Port Shared between WebContainer and Messaging
WebContainer
Messaging
1. Non-blocking IO improves scalability (Does not require 1 thread per connection)
2. WebContainer and Messaging can share the same port can share the same thread pool
IBM Software Group
20
JMS Support
WebSphere V6 will provide a pure Java JMS 1.1 provider that is installed as part of the base server installation
not a silent install of another product with its owns prereqs and runs completely inside the application server JVM
Persistent messages are stored either in an embedded Cloudscape database or an external database of customer choice (DB2, Oracle, etc) via JDBC driverEach application server can host a messaging engine. Messaging engines can be interconnected to form a messaging busFully integrated with application server management including high availability. Messaging engines will failover along with application serversInteroperable with WebSphere MQ
MQ
Event Broker
JMS (MA88)
App Server1 process
9 messaging processes
app server securityapp server security
Java code C & Java
codeapp server cluster model
R51 process ...
Base Server with J2EE, Integrated
messaging
all Java code
integrated security
Cloudscape or other RDBMS for persistence support
R6
IBM Software Group
21
Enterprise Service Bus Enablement
V6 includes the Service Integration Bus (SIB)
An important contribution to the ESB concept
JMS resources and Web Services can be exposed to the Bus
Multiple Buses can communicate
Fully administered via the console
IBM Software Group
22
WebSphere 6.0 High Availability ServicesWebSphere 6.0 has significant improvements in its high availability capabilities
Goal – WebSphere 6.0 be used as part of an overall 99.999% availability solution
A built-in high availability manager Provides Key Services needed to manage the server clusters
Reliable, high-speed, low-latency interconnect (Reliable Multicast UDP or Multicast over TCP)Distributed Computing Services– Elections, Quorums, Heartbeats (Active or TCP Keepalive), Virtual SynchronySingleton Management– 1 of N
Runs key services on available servers rather than on a dedicated one (such as the deployment manager)
Offers hot standby and peer failover for critical singleton servicesTransaction LogsMessaging Engines
Takes advantage of fault tolerant storage technologies such as Network Attached Storage (NAS) to significantly lower the cost and complexity of High Availability configurations
The configuration of high availability systems is significantly simplified
IBM Software Group
23
WAS and JMS Highly Available V6 System
Blades
Active/StandbyClustered/HACMP DB
No HACMP software onany blades, just install
WAS100M/1GB Ethernet
Messaging engine keeps messages in remote DB.
WAS elects an online server to run the messaging engineand WLM routes JMS connections to that server.
If a blade running the messaging engine fails then a peer restarts the engine from the failed blade after20 seconds.
IBM Software Group
24
Enhanced Data Replication ServiceRebasing on top of / Integrating with HA Manager and Transport Channel services
Improves performance and scale:Improvements in the range of 4x to 8x
Improves high availability and failure recovery:Leverages the failure detection provided by high availability servicesAllows for "active failure recovery"– For example, with HttpSession replication, if the affinity server for a
HttpSession goes down, WLM can route to another server that has a backup copy ready to use
Improves usability:Leverages group services to simplify partitioning – Now have "n-replica", where the customer simply defines the number of
backup copies they want for dataStateful Session Beans state now replicated
IBM Software Group
25
WebSphere Administration Configuration Repository
XML Document Repositoryall configuration stored in collection of XML and XMI documents on the file systemno RDBMS
WebSphere Common Configuration Model (WCCM)Data-model representing the configuration of the systemDocumented API for manipulating WebSphere configuration files
Servers load directly off of documentsIn a cluster, WebSphere manages synchronization of documents across machinesApplication Binaries are managed as part of the repository
IBM Software Group
26
WebSphere System Management - JMX
Java Management Extensions (JMX) used both internally and externally to manage WebSphere runtime components and resources
ProvidesRuntime AttributesAccess to runtime operationsAccess to configurationAccess to performance data
Provides management tool vendors with a standard interface for monitoring and controlling WebSphere
IBM Software Group
27
WebSphere Admin Security Authorization
WebSphere 4.0 adminstration had no granularity of access control for the administrative sub systems
anyone with a userid/password can configure/operation on the entire domain
WebSphere 5.0 has finer granularity of access control. Defines 4security roles:
"monitor" role can observe system state and configuration data but cannot make changes"configurator" role is a monitor who make changes to the WebSphere system configuration"operator" role is a monitor who can change runtime state (e.g. start, stop)"administrator" role which is basically a configurator and also an operator
monitor
configurator operator
administrator
Administrative Security Role Inheritance Relationship
IBM Software Group
28
WebSphere Application Server ND - Terminology
App Server
XML Config
App Server
XML Config
App Server
XML Config
Node Agent
Deployment Manager- Admin
App Server
XML Config
Node AgentApp Server
XML Config
Node AgentApp Server
XML Config
Node Agent
Cell Network of multiple nodes in a single logical administration domain
Deployment ManagerManages the multiple nodes in a distributed topology
Node AgentResides on a single nodeManages the servers running on the node
Managed Process or ServerEach server running in its own JVM
Application ServersJMS Server
IBM Software Group
29
HTTP
plug-in
Application server
HTTP
plug-in
Application server
HTTP
Application server HTTP
HTTP
HTTP
Edgeserver plug-in
plug-in
plug-in
plug-in
I scenario II scenario III scenario
Applicationserver
DBsession
DBuser HA
Edgeserver
zos/390
CICS
IMS
Connectors
Applicationserver
FirewallFirewall
Architectural design: scalability and availabilityIBM Software Group
30
DB2 MQ Oracle
TransactionManager
ApplicationServer
Container
EJB EJB EJB
UserTransaction
Jdbc
ResourceManager
DataSource
ResourceManager ResourceManager
DataSource DataSource
ORB
RequestInterceptors
WebSphere as Transaction ManagerWebSphere AS as Transaction Manager
IBM Software Group
31
WebSphere Transaction Manager
zOSApplicationserver
TCP62TCP/IPNetbiosLU6.2RPC CICS
CTGWAS v6: Last Participation support feature for two-
phase commit with CICS
Applicationserver
EJBcontainer
RMI/IIOP
CICSsolo
TS2.2EJB container
zOS
WebSphere AS as Transaction ManagerIBM Software Group
32
WebSphere Application Server v6.1 Overview
IBM Software Group
33
Upgrade to Java SDK 5.0
IBM’s Virtual Machine for Java and JIT includesImproved performanceImproved startupImproved garbage collection
No Sun intellectual property
IBM’s Virtual Machine for Java used on Windows®, Linux ®, AIX ®, i5/OS ®, z/Linux and z/OS ®
Sun’s JVM used on Solaris and HP-UX
IBM Software Group
34
Web Services evolution
JAX-RPC (JSR-101) 1.0 New standard API for programming Web services in Java
JSR-109 1.0New J2EE deployment model for Java Web services
SAAJ 1.1
WS-SecurityExtensions added
WS-I Basic Profile 1.0Profile compliance
UDDI4J version 2.0 (client)
Apache Soap 2.3 enhancements
The engine is a new high performance SOAP engine supporting both HTTP and JMS
JAX-RPC (JSR-101) 1.1Additional type supportxsd:listFault supportName collision rulesNew APIs for creating ServicesisUserInRole()
JSR-109 – WSEE 1.1Moved to J2EE 1.4 schema typesMigration of web services client DD moving to appropriate container DDsHandlers support for EJBsService endpoint interface (SEI) is a peer to LI/RI
SAAJ 1.2 APIs for manipulating SOAP XML messages
WS-SecurityWSS 1.0
WS-I Basic Profile 1.1Attachments support
WS-TX AT (Atomic Transactions) JAXR support UDDI v3 support
Includes both the registry implementation and the client API library
WS-BA (Business Activity)Compensation framework for loosely coupled transactions
WS-I BSP (Basic Security Profile)Interoperability over the wire (i.e. WebSphere client with .NET svr.)Tightening of specification
WS-N (Notification)Publish/Subscribe model
WS – Security enhancementsPerformance Enhancements
SAAJ changes (send XML docs. w/ attachments)SOAP/JMSNew and faster parser (Banshee instead of B2B)
SOAP/JMS EnhancementsCaching enhancements
Text message enhancementsWS-RF (Resource Framework)
Stateful web service resourcesWS-Addressing
Endpoint ref. support for WS-Res.
WAS V5.0.2/5.1 WAS V6.0 WAS V6.1
IBM Software Group
35
Portlet support overviewIBM Software Group
36
Installation enhancements
IBM Software Group
37
IBM HTTP Server Administration
Allows complete configuration of IBM HTTP Server through the administrative console
Provides operational management of IBM HTTP Server through the administrative console
IBM Software Group
38
Security enhancements: overview
Administrative security enabled “out of the box”
Fine-grained administrative security capabilityUsers can now be defined to administrative roles on a specific set of resources
Cells, node groups, nodes, clusters, servers and applications
IBM Software Group
39
Security enhancements: overview (cont.)
Federeted repositories featureAbility to use mutiple heterogeneous user repositoriesUser identity, profile, and relationship management
Simplified administrative console tasks and guided tasks
SPNEGO support for single sign-on authentication through Windows desktop
IBM Software Group
40
Simplified certificate and key management
IBM Software Group
41
Federated repositories overviewIBM Software Group
42
Single integrated web-based platform
Process ChoreographyBusiness RulesBusiness State MachinesHuman TaskBusiness ObjectSCA basedWith full ESB connectivity and Adapters
Application Server
Full J2EE 1.4 Web-based AdminMessagingWeb ContainerEJB ContainerJDKPMEs
Like Express with no limitation up to 2 CPUs
ClusteringFailoverWorkload Management
Distributed Administration
Web ServicesUDDI RegistryWeb Services Gateway
Express
Network Deployment WebSphere Process Server
WAS v6 Extended Deployment
Extended Deployment (XD)
On demand operating environment
IBM Software Group
43
An “add-on” or “extension” to the WAS ND environmentPrereqs WAS ND 6.0.2 instead of bundling it
Installation is a simple delta to an existing environmentDoes not require “migration” or restructuring of current installation
Totally integrated into the WAS ND environmentExtends the WAS Admin ConsoleExtends the wsadmin scripting environment
Meaningful without implementing full Autonomic conceptsManual and Supervised modes allow autonomics to be adopted graduallyGoals-directed WLM can be implemented without placement featuresExtended Manageability features such as visualization and healthmonitoring have broad appeal
WebSphere XD - Design PrinciplesIBM Software Group
44
WebSphere Extended Deployment (XD)Supporting On Demand - Mission Critical ApplicationsDynamic Operations
Resource pooling and allocation in a WebSphere environmentApplication differentiation through operational policies Dynamic routing and workload management
High Performance ComputingApplication partitioningHigh availability servicesJ2EE development of high-end OLTP applications
Extended ManageabilityFlexible modes of runtime operations: manual, supervised and on demand, HA Deployment Mgr, Application Edition Control CentreRuntime operations tree map, charting and event visualization tools
App Server Node Agent
Deployment Manager -Admin- ClusteringApp Server
App Server Extensions
IBM Software Group
45
Dynamic OperationsCapabilities Help Increase Responsiveness and Flexibility Virtualized WebSphere Environment
“I want my IT resources to adjust on the fly to the demands of business critical
applications”
Scale on demand through dynamic allocation of WebSphere
resources
Dynamically adjusts application resources as needed depending on demand
Scale for unpredictable application demand
Dynamically expands and contracts resources by adding and removing machines into and out of resource pools when it is deemed necessary by monitoring logic
Scale beyond the defined application server pool with Tivoli Intelligent Orchestrator (option)
Breaks the tie between application clusters and machines which can now be shared amongst applications, optimizing resource utilization and simplifying overall deployment
Create pools of resources that can be shared among applications
IBM Software Group
46
Dynamic OperationsCustomer Scenario: Large Financial Company
100%
0%50
%
15%Utilized Servers
Account Management
100%
0%50
%
20%Utilized Servers
StockTrading
100%
0%50
%
10%Utilized Servers
PortfolioForecasting
100%
0%50
%
55%Utilized Servers
100%
0%50
%
75%Utilized Servers
100%
0%50
%
100%Utilized Servers
100%
0%50
%
100%Utilized Servers
EnvironmentMultiple business critical applicationsHundreds of application servers
ChallengesUnderutilized serversInability to share resources across server pools – especially during peaksInconsistent quality of service for business critical applicationsHuman-intensive monitoring and management environment
Conventional Distributed Environment
IBM Software Group
47
Account Management
StockTrading
RESOURCE POOL
CustomerSupport
RiskManagement
100%
0%50
%
55%Utilized Servers
PortfolioForecasting
Dynamic OperationsCustomer Scenario: Large Financial Company
WebSphere Extended Deployment Environment
VirtualizedPooled resources Virtualized applications
Goals basedOperational policies are attached to Application to reflect operational goals and importance of applicationAutonomic managers monitor environment for maximum utilization using business goals
ResultsReduce total cost of ownership (doing more with same/less)Increase stability and repeatability of environment
IBM Software Group
48
Goals Directed Infrastructure
“I want to get the most out of my infrastructure while at the same time ensuring
consistent and predictable performance of business-critical applications”
Deliver application availability and performance using policies based
on defined business goals
Application performance is optimized according to operational policies that reflect application service level goals and relative importance to the organization
Define required application service levels consistent with business goals
User requests are classified, prioritized, queued and routed to servers based on application operational policies (which are tied to business goals)
Deliver enhanced quality of service for business critical applications
Server weights (and associated workload routing) are dynamically adjusted based on actual server performance, resulting in optimal application throughput and response time
Balance workload based on actual performance of servers
IBM Software Group
49
Stock Trading
Stock Trading
Account Management
PortfolioForecasting
CustomerSupport
RiskManagement
Idle
Gold
BronzeBronze
Silver
Policies – Applying Business Goals to ApplicationsApplication Solutions Service Classes Goals Priorities
Gold
Silver
Bronze
RT < 1sec for < 10 TPS
RT < 2sec for < 10 TPS
RT < 5sec for < 10 TPS
Idle
VeryHigh
Medium
Best Effort
Medium
Low
IBM Software Group
50
Key components : On Demand Router
The On Demand Router (ODR) is a component that logically replaces and extends the functionality of the ND HTTP Plug-in
The ODR provides the standard functionality of a compliant HTTP and SOAP proxy server with added On Demand features
Request classification and prioritizationRequest queuingRouting and load balancingWeighted round robin dispatching with Dynamic WLM weightsDynamic routing table updates with multiple WebSphere backend cellsHTTP Session affinitySSL ID AffinityWPF Partition Affinity
IBM Software Group
51
Example TopologyIBM Software Group
52
StockTrading
Prioritization andFlow Control
Routing andLoad BalancingClassification
Operational Policy
WebSphere Cell
WebSphere on demand Router
WebSphere XDDecision Makers
AccountMngmt
FinancialAdvice
HighImportance
MediumImportance
LowImportance AMFANode
5
AMSTNode2
FASTNode3
AMFANode4
AMSTNode1
PlacementExecutions
StockTrading
AccountMngmt
FinancialAdvice
Application DemandResource State
PlacementDecisions
WebSphere Dynamic Operations Environment
IBM Software Group
53
Macro Provisioning in XD using TIO
Virtualization
Policy
Prioritization
Provisioning
Visualization
ODOEWeb Server WebSphere - Banking WebSphere - Trading Lotus - eMail
Tivoli Intelligent Orchestrator (TIO)
MAPE MAPE MAPE MAPE
EnterpriseBusiness Policies
IBM Software Group
54
WebSphere Servers
Database
WebSphere High Performance Computing: Partitioning Facility Conventional Distributed Environment
Transaction requests are spread evenly
across servers All servers require real-time shared database access
EnvironmentHigh application transaction volumes and database hitsHigh growth rateLarge number of distributed servers, prefer to scale linearly for additional capacityContinuous availability
Challenges:Transaction volumes are limited by database accessScaling to accommodate growth requires significant system reconfiguration to ensure high transaction speeds
Database eventually becomes a bottleneck
IBM Software Group
55
WebSphere High Performance Computing: Partitioning Facility
High Performance Computing CapabilitiesDynamic data partitioning and re-partitioningHigh end cachingWorkload managementAutonomic high availability management
ResultsConsistently low response times99.999% availability (Class 5)Linear scalability on commodity hardware
WebSphere Extended Deployment Environment
WebSphere Servers
Database
High performance, availability and scalability
IBM Software Group
56
WebSphere Extended Manageability Customer Scenario: Application Service Provider
Conventional Distributed Environment
Environment50+ applications500+ application server instances across distributed locations
ChallengesNo application-centric visualization of the entire running environmentOperators must provide own mechanisms (scripts, user interface, etc.) for monitoring the runtime behavior and performanceRuntime decisions must be manually made ─no events or WebSphere supervision to assist in maintaining an optimal runtime environment
IBM Software Group
57
Visualization & Monitoring of OperationsVariety of runtime operational viewsCustomized chartingReal-time event reporting
ResultsOperators can see what is going on “at a glance”Tasks from autonomic managers keep operators aware of how well the environment is running and suggests changes to optimize the environmentApplication performance is measured against business goals
WebSphere Extended Manageability Customer Scenario: Application Service ProviderWebSphere Extended Deployment Environment
IBM Software Group
58
WebSphere XD: Visualization – Runtime Topology
Two Main Purposes:What is Running WhereWhat Has Potential To Run
Different Perspectives:Application CentricNode Group CentricService Policy Centric
“Quick Glance” Hover-oversContent Changes on Item HoveredExample - Server Instance:
PID, dWLM Weight, Node Name
HA Managed Item Running LocationsHealth Management ControllerApplication Placement ControllerdWLM Controller
IBM Software Group
59
Health MonitoringXD Providing monitoring of certain aspects of the WebSphere system to detect and take action on potential problemsHealth monitoring is defined by a set of Health Policies of the following types
Age-basedWorkload-basedExcessive Memory UtilizationExcessive Response Time
Health policies can be applied to individual servers, to clusters, or to an entire cellWhen a problem condition is detected, one of three action styles can be put into effect
Monitor – Simply notify the administratorSupervise – Notify the administrator of the problem and provide an action (such as restart the server). The administrator has to approve the application of the actionAutomatic – Notify the administrator and automatically take action (such as restart the server)
Notifications are provided in the Admin UI and optionally via e-mail
IBM Software Group
60
WebSphere XD Tasks
IBM Software Group
61
E-Mail NotificationXD Supports sending health monitoring event to an administration via e-mail
The notification configuration looks something like this:
IBM Software Group
62
Health ControllerThe health monitoring is controlled by an HA-Managed service called the Health ControllerThe health controller determines how aggressively XD monitors for violations of the health policiesThe controller configuration also allows you to adjust how often server restarts will be allows and it allows you to define blackout periods when server restarts should be prohibited.The configuration of the health controller looks something like this:
IBM Software Group
63
HA Deployment Manager Console Support
System Administration > Deployment manager
IBM Software Group
64
Application Edition Control Center – Functional Objectives
Provide interruption-free application update capability Explicit control through systems management interfaces Careful orchestration of moving parts by system management infrastructure to ensure requests are not sent to servers undergoing transition
Introduce systems management support for application versions in the WebSphere server environment
Allow for multiple deployments of same-named J2EE application Unique ‘version’ identity for each instance
Enable multiple activation patternsSimple activation Validation mode Rollout – interruption-free replacement of one version with another
IBM Software Group
65
Console exampleIBM Software Group
66
Lazy Application Start
Dynamic Clusters support a min and max number of instances
Default is min 1 and max N, where N = the number of nodes in the node group
A user can set limits to whatever they desire
A user can also set the min size to zero.This means that the application may not be running in the pool anywhere.When a request is received an instance of the application is startedWhen the application goes idle the instance is stoppedThis allows low volume applications to be available without consuming resources.
IBM Software Group
67
Dynamic Cluster Configuration – Vertical Stacking
Multiple cluster members on a node
Allows full utilization of server resources.
Stacking numberApplication instances that are active when the CPU reaches 100% utilizationCan be defined at the node level, overriding the Cluster level definition
Determine the number of instances to create by profiling the application
Profiling phase must be performed on each node typeDifferent number of instances might need to be created on each node
IBM Software Group
68
Business Grid Description
Need exists for long-running, resource-intensive work that does not fit the transactional paradigm
Traditional J2EE model is transactional, short lived, lightweight units of work
Long-running work might take hours or even days to complete and consume large amounts of memory or processing power while it runs.
WebSphere Extended Deployment accommodates applications that need to perform long-running work alongside transactional applications
The functionality of running both transactional and long-running units of work is called the Business Grid
IBM Software Group
69
Business Grid Programming Models
Based on J2EE
Compute Intensive ApplicationsA job that uses the CPU for an extended time to perform some computationBased on CommonJ WorkManager Work object (extended as CIWork)A free form model that is very flexible for Java-based Grid Applications
Java Transactional BatchImplemented as a EJB CMP Entity BeanContainer manages transactions, data streams, steps, checkpointing, and job lifecycleCustomer provides logic to process one record in the data streamData streams are an abstraction that supports data from any source, including database, network, files, etc.
Applications are packaged and deployed as regular J2EE EAR files
IBM Software Group
70
Scheduler
Scheduler supports standard job control operations
SubmitStart, StopPause, ResumeGetStatus
Jobs can be submitted via Command line toolWeb servicesEJB interface
Scheduler and Jobs can be configured and monitored via the WebSphere admin infrastructure
IBM Software Group
71
WebSphere Extended Deployment
XD is a Quality of Service Extender for Middleware
WebSphere Application Server
WebSphere Application ServerNetwork Deployment
WebSphere ESB(post v6.0.1)
WebSphere Process Server
WebSphere Portal Server
WebSphere Commerce Server
J2EE(BEA, JBoss, Geronimo,
WebSphere CE, Tomcat, Jetty,Oracle, etc.)
LAMP/LEAPPHPRuby
.NETStatic HTTP
(Apache, IHS,IIS, etc)
XD is constructed as an extension to an existing middleware environment
XD provides QoS features to extend what types of applications you can run on your middleware and how you run them
XD works across a heterogeneous environment that includes IBM WebSphere and non-WebSphere servers
IBM Software Group
72
XD as an Extension to a WebSphere Serve Environment
IBM Software Group
73
XD as an Extension to a Non-WebSphere Server Environment
Cell
Network
ODR Tier
HTTP Servers(Apache, IHS, Sun, IIS)
Scale Out Non-WAS ODR Topology
J2EE Servers(Tomcat, Jboss,
Geronimo, BEA, Oracle, etc)
.NET Servers
Optional Monitoring
Agent
Optional Monitoring
Agent
Optional Monitoring
Agent
DeploymentManager
WAS ND License XD Full License
WAS ND License XD Full License
XD MSE Server License
IBM Software Group
74
Steps to construct a mixed server environmentDo you have an ODR defined?
We are providing workload shapingWe are not providing application placement
ConfigureVirtual hostsService classesTransaction classes
Optionally, install remote agent on all the external nodesImproved feedback loop for the ODRData collected include
Node capacityNode utilization
Install characteristicsHard disk footprint ~80MBRAM footprint ~15MBDefault port is 9980, configurable
IBM Software Group
75
Agenda:
SOA:What is a “Service Oriented Architecture” (SOA)Benefits of an SOASOA with IBM productsESB and SOA lifecycle
WebSphere Application Server V6.1:FeaturesScalability and high availabilityTransaction managementEIS integration
Q & A