Vous êtes sur la page 1sur 4

1

4O4 Errors
500 errors
port conflicts
database connection problems
hung threads
low heaps
Out_of_memory issues
Analyzing java core and heap dumps using IBM thread and heap analyzer
Throttle closures..
Work requests for performing configuration changes
JVM bounce, security isseues..
Conference calls for fixing application issues
maintenance on servers..
lots more...
404 and 500 error answer
1. Check if the webserver is running, if it runs check if the JVM is running, if the JVM has stopped you
would get 500 errors.. If the Webserver is down you would get 404 error.

Common 404 errors


1. webserver down
2. virtual host not defined.
3. requested file(servlet/jsp/..) not found
and many more

500 Internal Errors


1. JVM stopped
2. external resources down(like database..., EIS systems, mainframe..)
and many more,
Trouble shooting.
Check if the webserver is running, and hit the application directly using the application server's
hostname and port number of the application, the port number can be gotten from plugin-cfg.xml or
severindex.xml. If the application works fine if it directly. then the issue is with the webserver or with
the plugin. check access, error, plugin logs for narrow down the search...

Session Affinity
In a clustered environment , any HTTP requests associated with an HTTP
session must be routed to the same Web application in the same JVM.
This ensures that all of the HTTP requests are processed with a consistent
view of the user's HTTP sessions.

Simply to say............... when a request goes from a client to application which is in cluster. Actually this
client request will be handled by a single JVM in the cluster .so when the next request from the same
client has to goto the same JVM ,next time.(since HTTP is stateless protocol,there is a chance that the
next request from the client can go to the next JVM in the same cluster) this is achieved by Clone id
(unique id for each JVM inside the cluster)this clone id will be embedded to the URL at the first time,so
when ever the next request comes from the same client ,it will go to the embedded clone id JVM
2

For enabling the GS (Global Security)through CUI you can follow below steps

isuue wsadmin command from <profile_root>/bin


issue below command in the wsadmin prompt
wsadmin>set security [$AdminConfig list Security]
wsadmin>$AdminConfig modify $security [list [list enabled true]]
wsadmin>$AdminConfig save

How to find the no. of connections to the webserver ?

netstat -na | grep <port number> |WC -l


where port number is the port number on which webserver is accepting the requests which is usually 80
or 443

HA & Workloadmanagement

Two main features of WLM are


- Load Balancing
- Server Affinity

WebSphere WLM is offering these two features on different levels like

- Application/web Server Clustering


Application Server: through web server plug-in
WebServer: through edge components.

- High avaliability issues


Fail over of application/webServer or even containers.

Purpose of DumpNameSpace Utility?


you can view all the jndi names in the namespace... this is a v useful tool to troubleshoot
NameNotFoundExceptions..

How to disable the security from security.xml

1. Stop WAS and the Deployment Manager.

2. Browse to the WAS install directory and open the document,


...\Websphere\AppServer\config\cells\yourcellname\security.xml.
3. Find the line below this header, </xmi:Documentation>, that contains the following entries:

useLocalSecurityServer="true"
enabled="true"

Change True to False in these entries.

4. Start WAS and the Deployment Manager. You may have to reboot the machine.
3

Common Issues with Plug-In

404 error
* Usually a 404 (page not found) error in the response means that the requested URI is not in the Plug-in
config, and did not match. The request was handled by the web server instead, but the file does not
exist there either, so the web server sends a HTTP 404 error back to the browser.
* Also, it is possible to get a 404 error from the WAS server itself. If the plug-in does match and does
send the request to the WAS server, but that application is currently stopped, the trace will show a 404
error coming back in the response from the server. So the plug-in sends the 404 error back to the
browser.

500 Error
* If the request is matched by the plug-in and is sent to the WAS server, but the server is unresponsive
or down, the plug-in will send an HTTP 500 error, which will show up as Internal Server Error in the
browser.
* If there are multiple servers in the ServerCluster, the plug-in will try all of the servers before sending
the 500 error to the browser.

Java Class finder with a UNIX command

find PATH -name '*.jar' -o -name '*.war' -o -name '*.ear' -type f |xargs -i bash -c "jar -tvf {}| tr / . | grep
CLASSNAME && echo {}"

(e.g)
find /usr/IBM/WebSphere/AppServer/ -name '*.jar' -o -name '*.war' -o -name '*.ear' -type f | xargs -i
bash -c "jar -tvf {}| tr / . | grep org.apache.xerces.dom.DocumentImpl.class && echo {}"

Output:
11160 Fri Feb 20 14:00:34 PST 2004
org.apache.xerces.dom.DocumentImpl.class/usr/IBM/WebSphere/AppServer/archive_lib/xerces-
2.6.2.jar 11160 Fri Oct 06 10:12:24 PDT 2006
org.apache.xerces.dom.DocumentImpl.class/usr/IBM/WebSphere/AppServer/updateinstaller/update.jar

Example: Starting a cluster using wsadmin


The following example starts a cluster:

Identify the ClusterMgr MBean and assign it to the clusterMgr variable.


Using Jacl:
set clusterMgr [$AdminControl completeObjectName cell=mycell,type=ClusterMgr,*]
Using Jython:
clusterMgr = AdminControl.completeObjectName('cell=mycell,type=ClusterMgr,*')
print clusterMgr
This command returns the ClusterMgr MBean.
Example output:
WebSphere:cell=mycell,name=ClusterMgr,mbeanIdentifier=ClusterMgr,type=ClusterMgr,process=dmgr
Refresh the list of clusters.
4

Using Jacl:

$AdminControl invoke $clusterMgr retrieveClusters


Using Jython:
AdminControl.invoke(clusterMgr, 'retrieveClusters')
This command calls the retrieveClusters operation on the ClusterMgr MBean.
Identify the Cluster MBean and assign it to the cluster variable.
Using Jacl:

set cluster [$AdminControl completeObjectName cell=mycell,type=Cluster,name=cluster1,*]


Using Jython:
cluster = AdminControl.completeObjectName('cell=mycell,type=Cluster,name=cluster1,*')
print cluster
This command returns the Cluster MBean.
Example output:

WebSphere:cell=mycell,name=cluster1,mbeanIdentifier=Cluster,type=Cluster,process=cluster1
Start the cluster.
Using Jacl:
$AdminControl invoke $cluster start
Using Jython:
AdminControl.invoke(cluster, 'start')

To find unix version uname -a


SSL certificate and key management > Key stores and certificates > CellDefaultTrustStore > Signer
certificates

what is extended deployment

Web sphere application server extended deployment increases the functionality of the server in two
main areas they are manageability and performance. Dynamic virtualization between servers is possible
with the help of XD.

To generate a plug-in configuration for all of the clusters in a cell:

GenPluginCfg -cell.name NetworkDeploymentCell

To generate a plug-in configuration for a single server:

GenPluginCfg -cell.name BaseApplicationServerCell -node.name appServerNode -server.name


appServerName

To generate a plug-in configuration file for a Web server:

GenPluginCfg -cell.name BaseApplicationServerCell -node.name webserverNode -webserver.name


webserverName

Vous aimerez peut-être aussi