dave hay web sphere administration for domino administrators
Post on 10-May-2015
1.790 Views
Preview:
DESCRIPTION
TRANSCRIPT
1
WebSphere Administration for Domino AdministratorsWednesday 2 May 2012
about.me/david_hay
DanNotes – Danish Notes User Group 2012
2
Introduction
With IBM since 1992
Experienced with hardware, software and services● Started with AS/400 and iSeries● Moved onto Network Station● Working with WebSphere and Lotus software since 2000● Linux and Mac advocate● Collaboration evangelist● Serial blogger
Infrastructure Architect● Focused on IBM middleware and integration with client hardware, software and services
With IBM Software Services since 2009● Wide range of projects, including Collaboration Portal, Secure Portal, Process Portal, Google Search
Appliance integration and, most recently, WAS integration with Active Directory .....
3
Session objectives
This presentation aims to introduce you, the Domino administrator, to the fundamentals of IBM WebSphere Application Server (WAS).
It aims to cover: -
● What is WebSphere Application Server (WAS) ?
● A brief history of WebSphere Application Server
● The core building blocks of a typical WAS infrastructure
● An examination of some of the core WAS configuration files
● An illustration, by demonstration, of WAS administration● via command-line● via script● via graphical user interface
● Note that I'm going to focus on WAS v7 because that's what is currently delivered via IBM products such as Connections and Sametime .....
3
4
Source: The Java EE 6 Tutorial: Basic Concepts (4th Edition) - Eric Jendrock (Author), Ian Evans, Devika Gollapudi, Kim Haase & Chinmayee Srivathsa
What is Java Enterprise Edition (JEE) ?
5
What is WebSphere Application Server (WAS) ?
● A core component of many IBM software products● IBM Connections● WebSphere Portal● IBM Web Content Manager● IBM Sametime● IBM Lotus Quickr for WebSphere Portal● IBM Forms
● From the WebSphere Brand of IBM Software
● Available on every server software platform on the market ......
● Often misnamed purely as WebSphere● WebSphere is the brand● WAS is but one product
● A standards-based Java Enterprise Edition (JEE) application server.
● A set of run-time components, servers and services
● Based and built upon open-standards including JEE6, OSGi, CEA, JPA, SAML, SCA, SDO, SIP, Web 2.0, Mobile, Dynamic Scripting and XML :-)
5
6
A brief history of WebSphere Application Server – v1 to v7
6
7
A brief history of WebSphere Application Server – Up to Date
WebSphere Application Server V6.0.2
WebSphere Application Server V6
WebSphere Application Server V6.1
WebSphere Application Server V7
WAS V7 & V6.1 Feature Packs
2005
2006
2007
WebSphere Application Server V6.1 Feature Packs (FeP) 2008
2009
2011
WAS V7 Feature Packs (XML, CEA, SCA)
SAML & WOLA WAS HV WAS EC2 AMI
2010
WAS V8 Alpha, Beta & Beta RefreshWAS V7 Feature Packs
OSGi Apps & JPA 2.0Modern BatchCEA Mobile WidgetsDynamic Scripting
WAS HV RefreshMigration Toolkit Refresh
WAS V8 Web 2.0 & Mobile FePWAS HV RefreshMigration Toolkit Refresh
WebSphere Application Server V6.0.2
WebSphere Application Server V6
WAS V7 Feature Packs (XML, CEA, SCA)
SAML & WOLA WAS HV WAS EC2 AMI
WebSphere Application Server V6.1
WebSphere Application Server V6.0.2
WebSphere Application Server V6
WAS V7 Feature Packs (XML, CEA, SCA)
SAML & WOLA WAS HV WAS EC2 AMI
WebSphere Application Server V6.1 Feature Packs (FeP)
WebSphere Application Server V6.1
WebSphere Application Server V6.0.2
WebSphere Application Server V6
WAS V7 Feature Packs (XML, CEA, SCA)
SAML & WOLA WAS HV WAS EC2 AMI
WebSphere Application Server V7
WAS V7 & V6.1 Feature Packs WebSphere
Application Server V6.1 Feature Packs (FeP)
WebSphere Application Server V6.1
WebSphere Application Server V6.0.2
WebSphere Application Server V6
WAS V7 Feature Packs (XML, CEA, SCA)
SAML & WOLA WAS HV WAS EC2 AMI
8
Introducing WebSphere Application Server 8.5 ....
Specifically, WAS 8.5 will include …
The Liberty Profile
●A dynamic WAS profile●Features and services deployed on-demand●Model is similar to that of the Linux kernel●Built around the Open Services Gateway Imitative (OSGI) model●For example: -
●The application only requires Java servlets, only the WAS kernel, the HTTP transport and the web container are loaded....●The application then requires database persistence via the Java Persistence API ? Load that up ....●No WAS restarts required●Ideal for development.
●Perhaps this is a parallel with the way that Domino works ? One can load and unload tasks such as nldap and nhttpd at will. Just a thought ..... :-)
9
WAS vs. Domino – What's the Difference ?
9
John P. Lamb, Michael Laskey and Gopal Indurkhya explain in their book, IBM WebSphere and Lotus: Implementing Collaborative Solutions, which applications are best suited for Lotus Domino or WebSphere Application Server in the following way:
“At a high level, the type of application is an important factor in deciding on which platform to build. ... the strengths of Domino lie in collaborative applications.
Domino is good at applications involving user interaction, providing a scalable document data store, rich content handling, and a robust security model.
WebSphere Application Server (WAS) is ideal for transactional applications, highly leveraging a relational data store, and providing enterprise-level J2EE application hosting.”
10
LoadBalancer
Domino
IBM HTTP Server
WAS
WAS
Oracle
SiteVisitor
Domino Directory
DeploymentManager
Cluster
WAS
WAS
Cluster
DB2
Active Directory
Plugin
Plugin
Cell
Typical WAS Operational Model
11
Some examples of where WAS fits ...
IBM Connections
WebSphere Portal
IBM Sametime
12
How is WAS delivered ?
12
13
What will you see most commonly ....
●Most IBM Collaboration Solutions ( nee Lotus ) deployments will include some entitlement for WAS Network Deployment (WAS ND)
●Built on top of the WAS Base edition●Advanced deployment services such as: -
●Advanced clustering●Dynamic scalability●High availability
●Supports multiple, distributed servers as well as stand-alone servers●Centralized administration of multiple servers●Advanced management features for distributed configurations
●Includes: -●IBM HTTP Server●WebSphere Plugin●WebSphere Edge Components ( Load Balancer, Reverse Proxy )●etc.
14
What are the core WAS building blocks ?
Application in this model refers to a Java EE (J2EE) web application, comprised of an Enterprise ARchive (.EAR) file and/or Web Application Archive ( .WAR) files.
Application Server is a process that hosts and runs one or more Java EE web application. Each application server runs in its own Java Virtual Machine (JVM).
Another name for Application Server is Instance or JVM instance or merely JVM
Node is an individual physical or virtual system/machine that contains an installation of WebSphere Application Server.
Cell is a group of Nodes in an administrative domain.
15
What are the core WAS building blocks ?
Deployment Manager administers multiple nodes in a cell from a centralized location.
Node Agents work with the Deployment Manager to perform administrative functions.
Cluster is a group of application servers that are used for the same purpose / run the same applications.
16
To put it another way ....
●A cell consists of one or more physical or logical ( virtual ) nodes
●A node contains one or more application servers or instances
●An instance comprises a single JVM
●Applications are deployed to instances
●A cluster consists of one or more instances ( a cluster of one wouldn't be much of a cluster )
●The configuration of the cell is managed by the Deployment Manager instance
●Each node has a Node Agent instance which is communicates with the Deployment Manager
17
Split into two distinct sections: -
●Read-only product static files or product binaries●shared by any functional instance of the WAS product
●Set of configuration files that are customized●Known as the WAS profile●Minimum of one profile per WAS installation
Analagous to Domino partitioning
File System Layout
18
File System Layout – Domino and WAS Compared
+ +
Domino Product Binaries
DominoData
Directory
DominoServer
DominoServer
+ +
WAS Product Binaries
WASProfile
WASProfile
ApplicationServer /
DeploymentManager
ApplicationServer /
DeploymentManager
DominoData
Directory
Physical / Virtual Machine Physical / Virtual Machine
19
An Example - IBM Connections Deployment
+ +
WAS Product Binaries
ApplicationServer
Instance(Homepage)
ApplicationServer
Instance(Blogs)
Node 2
+ +
WAS Product Binaries
WASProfile
(DMgr01)
WASProfile
(AppSrv01)
DeploymentManagerInstance
ApplicationServer
Instance(Profiles)
Node 1
WASProfile
(AppSrv01)
WASProfile
(AppSrv02)
20
What else do we need to know about the WAS file system ?
Product Binaries
/opt/IBM/WebSphere/AppServer
Profiles
/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/opt/IBM/WebSphere/wp_profile
Cell Configuration
/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/config/cells/rhel
Node Configuration
/opt/IBM/WebSphere/AppServer/profiles/wp_profile/config/cells/rhel/nodes/rhel/servers/server1/opt/IBM/WebSphere/AppServer/profiles/wp_profile/config/cells/rhel/nodes/rhel/servers/WebSphere_Portal
Note: these are examples of paths; guess which OS I mainly use :-)
21
Where does WAS keep it's logs ?
●In multiple places
●With the binaries
●/opt/IBM/WebSphere/AppServer●/opt/IBM/WebSphere/PortalServer●/opt/IBM/WebSphere/UpdateInstaller/logs
●With the web server
●/opt/IBM/HTTPServer/logs●/opt/IBM/HTTPServer/Plugin/logs
●With the profile
●/opt/IBM/WebSphere/AppServer/profiles/wp_profile/logs●/opt/IBM/WebSphere/AppServer/profiles/wp_profile/logs/server1●/opt/IBM/WebSphere/AppServer/profiles/wp_profile/logs/WebSphere_Portal
Most Useful
22
Which bits of WAS do we really need to know about ? ( 1/3 )
●The Web Container●Similar to the Domino Web Server●Serves dynamic web content such as servlets and JSPs
●Can serve static content, but this isn't a typical pattern●Receives requests vis Web container inbound transport chain●Participates in Single Sign-On interactions including LTPA and SPNEGO
●The EJB Container●Similar to Domino IIOP Task in that it communicates over the RMI/ORB protocol.●Runtime for deployment and management of Enterprise JavaBeans (EJB)●Can interaction with Web Container
●The Service Integration (SI) Bus●Default Java Message Service (JMS) provider●Provides point-to-point and publish/subscribe services between application servers●JMS is a reliable protocol with built-in Quality of Service (QoS) and intelligent mediation●Provides asynchronous messaging capability●IBM Connections makes particular use of the SIbus
23
Which bits of WAS do we really need to know about ? ( 2/3 )
●Java Database Connectivity (JDBC)●Provides loose coupling between application servers and relational databases●Application talks to application server, application server talks to JDBC data source, JDBC data source talks to JDBC driver, JDBC driver talks to relational database●Supports performance characteristics such as connection and statement pooling●JDBC drivers exist for most relational database platforms, including: -
●DB2 UDB●Domino :-)●Oracle●SQL Server●PostgreQL●MySQL
●Lightweight Third Party Authentication (LTPA)●Provides identity assertion across Domino and WAS-based servers●Allows a user to log-in once and then seamlessly access other servers in SSO realm●Proprietary to IBM●Potentially more efficient that mechanisms which “call back” e.g. SPNEGO, Kerberos
24
Which bits of WAS do we really need to know about ? ( 3/3 )
●Federated Respository●Unlike Domino, WAS cannot be used as a LDAP server
●However, it does have its own built-in user registry – defaultWIMFileBasedRealm – which, out-of-the-box, contains the administration user ID
●Federated Repository function allows WAS to see multiple user registries, including WIM, LDAP, database, custom adapters etc.
●This provides a single logical repository of users and groups, similar to Domino's Directory Assistance feature
●Job Manager●Introduced in WAS v7, this adds flexible management to WAS●Application servers register with the Job Manager, via an Administrative Agent●The Job Manager can then queue jobs to one of many Application Servers●Jobs can include wsadmin scripts, application management commands, server start/stop commands etc.●The next slide provides an illustration of the Job Manager hierarchy
25
An Example of the Job Manager Hierarchy
26
●A single, common interface for system administration
●The main platform on which IBM and non-IBM products can build administrative user interfaces as individual plug-ins to a common console framework
●A Java EE application running on WAS
●Completely web-based●No separate admin client ( not required since v4 )
●Not the only game in town for WAS admin
What is the Interated Solutions Console (ISC) ?
27
IBM Sametime extends the ISC – one of a few products which do ...
28
Apart from the ISC, we also have wsadmin ....
●wsadmin is a scripting interface to the WAS administration APIs
●wsadmin can be interactive: -
$ ./wsadmin.sh -lang jython -c 'AdminApp.list()'
or scripted
$ ./wsadmin.sh -lang jacl -f ~/extractDataSource.tcl
●wsadmin supports two different scripting languages
●Jacl - a self-contained implementation of Tool Command Langage – Tcl●Jython – a Java-based implementation of the Python programming language
Jacl has been deprecated in favour of Jython, which could also be said to be simpler
●Why script ?
Automation, audit trail, re-use, remote access, consistency ....l
29
A quick plug for automation ....
●Rational Automation Framework
●A customizable framework to provide automation of: -●environment build-outs●configuration management●application deployments on heterogeneous middleware platforms
●IBM Workload Deployer
●A hardware appliance that provides access to IBM middleware virtual images and patterns●Easily, quickly and repeatedly create application environments●Provide for secure deployment in a private cloud●Uses Rational Automation Framework
●IBM PureSystems
●Expert, integrated, enterprise-level family of cloud system●Encompasses applications, services, hardware, and the expertise●Uses Rational Automation Framework
30
And onto .... The Demo .....
3131
??
?
??
???
?
Questions ?
??
?
? ?
? ??
32
Next Steps ....
●Go here and download the WAS 8.5 Liberty Profile
●Sign up for IBM developerWorks
●Check out some of the links at the end of this deck
●Download a trial / evaluation of one of the IBM Lotus products that include WAS
●IBM WebSphere Portal
●IBM Web Content Manager
●IBM Forms
●etc.
●Reach out to IBM Software Services :-)
33
Tak !Mange tak
Tack så mycket
34
WebSphere Application Server
WebSphere Application Server Version 7.0 Information Center
WebSphere Application Server product architecture
JVM updates in WebSphere Application Server V8: Using wsadmin and Jython to easily collect and report WebSphere Application Server PMI data
WebSphere Scripting: WSADMIN, jacl, jython [PDF]
Jython script library
Redbook - WebSphere Application Server V7 Administration and Configuration Guide [PDF]
Using Jython Scripting Language With WSADMIN
IBM Education Assistant – WebSphere
Overview of IBM WebSphere Application Server Concepts for IBM Lotus Connections Administrators [PDF]
IBM WebSphere Application Server Introduction for Lotus [PDF]
Introducing the WAS Liberty Profile
WebSphere Application Server V8.5 Concepts, Planning and Design Guide
References
35
Backup Material
36
Recap of the Demo ( 1/2 )
The main points of the file system●Product binaries●Profiles
●Where the logs are kept●For binaries and installations●For profiles
●How to start and stop WAS●Examples of scripts and “short cuts”
●How to back up WAS●backupConfig.sh
●Some core configuration files●Cell configuration – resources.xml●Security configuration – security.xml●WIM configuration – wimconfig.xml●SOAP client configuration - soap.client.props
37
Recap of the Demo ( 2/2 )
●The Integrated Solutions Console
●wsadmin●JACL●Jython
●Federated Repositories●defaultWIM●LDAP
●Update Installer●Covers IHS, Plugin, SDK, WAS ....
●Common TCP/IP ports●And how to see what's listening ....
38
JACL - lots of dollars, now deprecated
$AdminApp uninstall DefaultApplication
$AdminApp list
$AdminApp install /opt/IBM/WebSphere/AppServer/installableApps/DefaultApplication.ear
$AdminApp taskInfo /opt/IBM/WebSphere/AppServer/installableApps/DefaultApplication.ear MapModulesToServers
$AdminConfig save
wsadmin – what did we do ?
39
Jython - it's the future
Getting Help
print Help.help() // Penelope Pitstopprint AdminConfig.help()print AdminApp.help()print AdminControl.help()print AdminTask.help()print AdminServerManagement.help()print AdminTask.help('-commands')
Unformatted output - hard to read
AdminApp.list()AdminApp.install('/opt/IBM/WebSphere/AppServer/installableApps/DefaultApplication.ear')AdminApp.uninstall('DefaultApplication.ear')AdminApp.taskInfo('/opt/IBM/WebSphere/AppServer/installableApps/DefaultApplication.ear', 'MapModulesToServers')AdminConfig.save()
wsadmin – what did we do ?
40
Formatted output - easier on the eyes
print AdminApp.list()print AdminApp.uninstall('DefaultApplication.ear')print AdminConfig.save()
print AdminApp.install('/opt/IBM/WebSphere/AppServer/installableApps/DefaultApplication.ear')print AdminApp.taskInfo('/opt/IBM/WebSphere/AppServer/installableApps/DefaultApplication.ear','MapModulesToServers')print AdminConfig.save()
print AdminApplication.startApplicationOnSingleServer("DefaultApplication.ear","rhel","server1")print AdminConfig.save()
print AdminServerManagement.listServers()
print AdminServerManagement.showServerInfo("rhel","server1")
wsadmin – what did we do ?
41
Interactive
/opt/IBM/WebSphere/AppServer/profiles/wp_profile/bin/wsadmin.sh -lang jython -c 'print AdminApp.list()'
/opt/IBM/WebSphere/AppServer/profiles/wp_profile/bin/wsadmin.sh -lang jython -c 'AdminApplication.stopApplicationOnSingleServer("DefaultApplication.ear","rhel","server1")'
Scripted
/opt/IBM/WebSphere/AppServer/profiles/wp_profile/bin/wsadmin.sh -lang jython -f stopApplication.py/opt/IBM/WebSphere/AppServer/profiles/wp_profile/bin/wsadmin.sh -lang jython -f uninstallApplication.py/opt/IBM/WebSphere/AppServer/profiles/wp_profile/bin/wsadmin.sh -lang jython -f installAndStartApplication.py/opt/IBM/WebSphere/AppServer/profiles/wp_profile/bin/wsadmin.sh -lang jython -f startApplication.py
wsadmin – what did we do ?
top related