ibm websphere application server (clustering) concept
TRANSCRIPT
© 2010 IBM Corporation
WebSphere
WebSphere Application ServerClustering
Eryan Ariobowo – WebSphere Technical Specialist
Jan 2012
© 2010 IBM Corporation2
Application Server
The platform on which Java language-based applications run. It provides services that can be used by business applications, such as database
connectivity, threading, and workload management.
© 2010 IBM Corporation3
Application Server Architecture
Internal architecture of WebSphere Application Server, and packaging structure
Available in ND platform only.
Base and Express doesn’t have this capability
© 2010 IBM Corporation
Application Server Architecture V8.5
Internal architecture of WebSphere Application Server, and packaging structure
Base & Express Network Deployment
© 2010 IBM Corporation5
Server
Server is a regular Java process responsible for serving J2EE requests (eg.: serving JSP/JSF pages, serving EJB calls, consuming JMS queues, etc).
© 2010 IBM Corporation6
Stand-Alone Application Servers
each application server acts as a unique entity (functions independent from all others) each can be managed from its own administrative console stand-alone servers can be managed from a central point by using administrative agents
and a job manager
© 2010 IBM Corporation7
Administrative Agent (Admin Agent)
An additional administration component (available since V7)
A single interface to administer multiple unfederated/stand-alone application server (Express & Base) nodes in different environments
Multiple application servers in the same machine can be administer by one administrative agent.
The administrative agent and application servers must be on the same machine
A node can be registered with the administrative agent or federate the node with a deployment manager, but you cannot do both
© 2010 IBM Corporation8
Distributed Application Servers
a distributed server configuration – built by the Network Deployment packaging– enable central administration, workload management, and failover
© 2010 IBM Corporation9
Node, Node Agent
Node– An administrative grouping of
application servers for configuration and operational management within one operating system instance
– Multiple nodes can be created inside one operating system instance
Node Agent – Process responsible for spawning
and killing server processes and also responsible for configuration synchronization between the Deployment Manager and the Node.
– Created automatically when you add (federate) a stand-alone application server node to a cell
Stand-alone environment
Distributed environment
© 2010 IBM Corporation10
Node Group
A collection of nodes within a cell that have similar capabilities in terms of installed software, available resources, and configuration
Used to define a boundary for server cluster formation DefaultNodeGroup
– contains the deployment manager and any new nodes with the same platform type
– created automatically.
© 2010 IBM Corporation11
Profiles
Runtime environments are built by creating profiles. Product files
– a set of read-only static files or product binary files that are shared by any instances of the WebSphere Application Server product.
Configuration files (profiles)– a set of user-customizable data files. This file set includes WebSphere configuration,
installed applications, resource adapters, properties, log files, and so on.
© 2010 IBM Corporation12
Profiles
Each profile is stored in a unique directory path
© 2010 IBM Corporation13
Profile Types
Product WebSphere profiles availableWebSphere Application Server Express ► Application server profiles (stand-alone)
► Management profile with an administrative agent serverWebSphere Application Server (Base)
WebSphere Application Server Network Deployment (ND)
► Management profile with a deployment manager server► Management profile with an administrative agent server► Management profile with job manager server► Application server profiles (stand-alone)► Cell profile► Custom profile► Secure proxy profile
© 2010 IBM Corporation14
Profile Types
Single aplication server profile • consists of one cell, one node, and one server • has a dedicated administrative console
Deployment Manager profiles• A cell for the administrative domain• A node for the deployment manager• A deployment manager with an administrative console• No application servers
Cell profile• Combination of two profiles: a deployment manager profile & an application server profile• Deployment manager and application server reside on the same system
Administrative Agent profile• created on the same node as the stand-alone servers• can manage only servers on that node
Job Manager profile• queue jobs to application servers in a flexible management environment
© 2010 IBM Corporation15
Profiles
node1
server1
dmgrNode
dmgr
dmgrCell dmgr profile
nodeagent1
server2
node2nodeagent2
profile2
adminconsole
addnodeprofile1
adminconsole
Note: Node of WAS Base/Express can be added to a Deployment Manager
© 2010 IBM Corporation16
Cell
A grouping of nodes into a single administrative domain. A cell can consist of multiple nodes and node groups. In the Base and Express configurations:
– contains one node and that node contains one server
© 2010 IBM Corporation17
Cell in Stand-alone & Network Deployment Environment
© 2010 IBM Corporation18
Cell in ND Environment – Deployment Manager
A Cell is a virtual unit that is built of a Deployment Manager and one or more nodes. The Deployment Manager is a process (in fact it is an special WAS instance) responsible
for – Managing the installation and maintenance of Applications– Connection Pools and other resources related to a J2EE environment– Centralizing user repositories for application– Centralizing WAS authentication and authorization.
Can contains nodes that are running on mixed platform (heterogeneous cell)
Node 1 Node 2 Node 2 Node 2
Deployment Manager
© 2010 IBM Corporation19
Integrated Solutions Console (administrative console)
connects to – a running stand-alone server OR– a deployment manager (in a distributed environment)
In WAS > V7, it also connects to an administrative agent and a job manager
© 2010 IBM Corporation20
Cluster
virtual units that groups Servers servers is managed together resources added to the Cluster are propagated to every Server that makes up the cluster Provide highly available
– because requests are automatically routed to the running servers in the event of a failure A cell can include no clusters, one cluster, or multiple clusters Cluster members cannot span cells.
A cluster is a group of application servers that collaborate for the purposes of workload balancing and failover.
© 2010 IBM Corporation21
Example ConfigurationCell, DeploymentManager, Node, NodeAgent, Server, Cluster
© 2010 IBM Corporation22
Cluster
Cluster support following types of servers– Application server clusters
a logical collection of application server processes that provides workload balancing and high availability. It is a grouping of application servers that run an identical set of applications managed so that they behave as a single application server (parallel processing).
– Proxy server clustersconsists of a group of proxy servers that can route requests and traffic to applications in a cell
– Generic server clustersallows you to configure external servers (non-IBM application servers or a pre-V6 WebSphere Application Server) into a logical cluster that can be used by the proxy server to route requests
© 2010 IBM Corporation23
Vertical & Horizontal Clustering (Scaling)
Vertical Horizontal
© 2010 IBM Corporation24
Mixed Clustering (Horizontal & Vertical)
© 2010 IBM Corporation25
Mixed-node version in a cluster
WAS V7 can contains nodes & server from WAS V5.1, V6.0, V6.1 ,and V7.0
WAS V8 can contains nodes & server from WAS V6, V6.1, V7, and V8
© 2010 IBM Corporation27
Job Manager
Allows the management of multiple WAS domains (multiple deployment managers and administrative agents) through a single administration interface.
© 2010 IBM Corporation28
Web Server
Web servers are independent products i.e. IBM HTTP Server (HIS) Managed Node
– Can be defined to and managed by the administration process through Deployment Manager
© 2010 IBM Corporation29
Web Servers
Unmanaged Node– Manually transfer the web server plug-in configuration file to the web server on an
unmanaged node– Still can be administered from the Integrated Solutions Console; push/upload the plug-in
configuration file to web server from admin console through HTTP• does not require a node agent
© 2010 IBM Corporation30
Web server plug-in
Used to route requests to one of multiple application servers Uses the plug-in configuration file (plugin-cfg.xml) to determine if a request should be
handled by the web server or forwarded to an application server Request transmitted to application server can be HTTP or HTTP Secured (HTTPS).
© 2010 IBM Corporation31
Edge Components
Caching Proxy– Reverse Caching Proxy– Forward Caching Proxy
Load Balancer
© 2010 IBM Corporation32
Edge Components: Caching Proxy
Intercepts requests from the client, retrieves the requested information from the content-hosting systems (usually local cache), and delivers that information back to the client
Cacheable content examples: – static Web pages– JavaServer Pages files that contain dynamically generated, but infrequently changing,
information Cache storage
– physical storage device that uses raw disk caching (writes directly without using the operating system's read and write protocols)Use htcformat command for preparing storage device for a disk cache
– system memory Cache index
– uses system memory space to hold an index of the cache– reduces the processing time to find cached files.