Professional Documents
Culture Documents
Go to C:\IBM_ND_6.0\WebSphere\AppServer\profiles\AppSrv01\config\cells\dmgrcell\nodes\
appnode\servers\server1\server.xml
Here you can find an entry like <jvmEntries xmi:id="JavaVirtualMachine_1359459476485"
verboseModeClass="false" verboseModeGarbageCollection="false" verboseModeJNI="false"
initialHeapSize="100" maximumHeapSize="200" runHProf="false" debugMode="false" debugArgs="-
Djava.compiler=NONE -Xdebug Xnoagent Xrunjdwp:transport =dt_socket,server =y,suspend=n ,
address=7777" disableJIT="false"/>
Here you can change initial and maximum heap size.
Procedure
1. Open the Integrated Solutions Console.
2. On the left-hand side, expand the System Administration heading and click Deployment
manager.
3. Click the name of the node agent that you want to modify.
4. Under Server Infrastructure, expand the Java and Process Management heading and
click Process Definition.
5. Under Additional properties, select Java Virtual Machine.
6. In the Maximum Heap Size text box, specify the new maximum heap size.
7. Click OK and save.
8. Restart the deployment manager for the changes to take effect.
You might need to increase the WebSphere Application Server heap size.
Procedure
1. Open the Integrated Solutions Console.
2. On the left-hand side, expand the Servers heading and click Application servers.
3. Click the name of the WebSphere Application Server you want to modify.
4. Under Server Infrastructure, expand the Java and Process Management heading and
click Process Definition.
5. Under Additional properties, select Java Virtual Machine.
6. In the Maximum Heap Size text box, specify the new maximum heap size.
7. Click OK and save.
8. Restart the application server for the changes to take effect.
You might need to increase the WebSphere Application Server Node Agent heap size.
Procedure
1. Open the Integrated Solutions Console.
2. On the left-hand side, expand the System Administration heading and click Deployment
manager.
3. Click the name of the node agent that you want to modify.
4. Under Server Infrastructure, expand the Java and Process Management heading and
click Process Definition.
5. Under Additional properties, select Java Virtual Machine.
6. In the Maximum Heap Size text box, specify the new maximum heap size.
7. Click OK and save.
8. Restart the deployment manager for the changes to take effect.
If we give heap size value same for both min and max then what are the
advantages and what are the disadvantages?
The Java heap parameters influence the behaviour of garbage collection. Increasing the heap size
supports more object creation. Because a large heap takes longer to fill, the application runs longer
before a garbage collection occurs. However, a larger heap also takes longer to compact and causes
garbage collection to take longer.
The JVM has thresholds it uses to manage the JVM's storage. When the thresholds are
reached, the garbage collector gets invoked to free up unused storage. Therefore, garbage collection
can cause significant degradation of Java performance. Before changing the initial and maximum
heap sizes, you should consider the following information:
In the majority of cases you should set the maximum JVM heap size to value higher than the
initial JVM heap size. This allows for the JVM to operate efficiently during normal, steady state
periods within the confines of the initial heap but also to operate effectively during periods of high
transaction volume by expanding the heap up to the maximum JVM heap size.
In some rare cases where absolute optimal performance is required you might want to
specify the same value for both the initial and maximum heap size. This will eliminate some
overhead that occurs when the JVM needs to expand or contract the size of the JVM heap. Make
sure the region is large enough to hold the specified JVM heap.
Beware of making the Initial Heap Size too large. While a large heap size initially improves
performance by delaying garbage collection, a large heap size ultimately affects response time when
garbage collection eventually kicks in because the collection process takes more time.
What is the maximum heap size and how you are going to set maximum heap size?
1. For 32 bit the Max heap size is 2GB AND for 64 bit the Max heap size unlimited.
2. The Heap size assign for the particular server depends of requirement.
In general in work area we have to fallow Min heap 1024MB, Max heap 2048 MB.
How you going to configure these parameters to server.
Go to Server--> Java and Process Management --> Process Definition--> Java Virtual
Machine under this we have initial heap size and maximum heap size here we can give min
and max heap size and also here we can enable verbose garbage collection.
WebSphere Application Server offers valuable options for a fast and flexible Java application server
runtime environment and enhanced reliability and resiliency
In order to resolve the issue please apply the IBM recommended ifix PK66778 and tune the JVM
heap size, xloratio , pCluster & kCluster based on your application needs, expected load and the
optimum performance. IBM Monitoring and Diagnostic Tools for Java - Garbage Collection and
Memory Visualizer (GCMV) which is a part of IBM Support Assistant Tools can help you tune these
parameters based on the Garbage Collection logs history.
Output:
{classpath {}} {bootClasspath {}} {verboseModeClass false} {verboseModeGarbageCollection false}
{verboseModeJNI false} {initialHeapSize 258} {maximumHeapSize 512} {runHProf false}
{hprofArguments {}} {debugMode false} {debugArgs -
agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=7777} {genericJvmArguments {}}
{executableJarFileName {}} {disableJIT false} {osName {}} {internalClassAccessMode ALLOW}
OR
Output:
Realm/Cell Name: <default>
Username: root
Password:
WASX7209I: Connected to process "dmgr" on node myhostCellManager01 using SOAP connector;
The type of process is: DeploymentManager
OR
Output
Realm/Cell Name: <default>
Username: root
Password:
WASX7209I: Connected to process "dmgr" on node
myhostCellManager01 using SOAP connector; The type of process is: DeploymentManager
Note:- Kindly note that the difference between second and third command is only the
quotes,Commands inside a double quotes require \ prefix for $ symbol.
2. What are the steps involved in deploying themes and skins in a clustered production
websphere portal environment ?
3. What changes needs to be done to view changes to your theme and skins JSPs without
restarting the portal server ?
You need to enable automatic JSP loading by setting reloadingEnable property to true in
ibm-web-ext.xmi file of the wps.ear.
4. What are the 3 different ways of installing a portlet application in WebSphere Portal ?
Install a portlet using the portal administration page using Web Modules portlet.
Install a portlet using xmlaccess tool.
Pre-deploy a portlet as a standard EAR by installing the portlet WAR file in WAS console and
then registering the portlet using xmlaccess.
5. What is the purpose of XMLAccess configuration file Export.xml & ExportRelease.xml ? What
is the difference ? & When will you use one over the other ?
Export.xml exports the complete portal configuration and useful when transferring
configurations between development installations.
ExportRelease.xml exports the complete portal configuration from the release domain as
required by the portal ReleaseBuilder tool and useful when tranaferring different release
configurations between staging and production environments.
If you have a completely new installation of the staging server and the production server:
8. What are the steps involved in editing WebSPhere Member Manager (wmm.xml) files on a
federated node ?
On the primary node of the WebSphere Portal cluster, check out the files using
./WPSconfig.sh check-out-wmm-cfg-files-from-dmgr task.
Make any changes to the Member Manager files. The files can be edited in the
portal_server_root/wmm directory on the WebSphere Portal node.
When you have completed your changes, check the files back in using ./WPSconfig.sh
check-in-wmm-cfg-files-to-dmgr.
Set the property WpsContextRoot to the new URI and run ./WPSConfig.sh modify-servlet-
path task.
11. What is LDAP realm support and why would I want to use it?
A Realm allows you to group users from one or more LDAP trees of one user registry and
expose them as a coherent user population to WebSphere Portal; this is also referred to as
horizontal partitioning. Realms allow a flexible user management with various configuration
options; for example, you can combine principals from one or more corporate LDAP tree. A
realm must be mapped to a Virtual Portal to allow the realm's defined user population to
login to the Virtual Portal.
Application groups is a concept that allows you to define user groups within the database
user registry with members (users or groups) contained in the LDAP user registry you
configured. The benefit of application groups is that you can create Groups that are only
used in WebSphere Portal particularly in scenarios where there is Read-only LDAP or special
group setup specific to the portal.
13. What are the two methods to install the empty staging WebSphere portal server ?
Empty portal contents on the staging server by running the ./WPSconfig.sh action-empty-
portal.
Install portal with the ./install.sh -W emptyPortal.active="True" option.
14. How do you stop portal traffic to the node being upgraded in 24x7 cluster upgrade process ?
Locate the cluster member being upgraded, and change the value in the Configured weight
column from a value to zero and make sure the plugin config information is propagated to
webserver to stop traffic.
Portal pages.
Portlet instances.
Portal Search Engine search services and search collections. This includes the search
content sources.
18. How do you enable temporary and extended trace logging for WebSphere Portal ?
Temporary traces can be set for a temporary period by using the administration portlet
Enable Tracing or the IBM WebSphere Application Server administrative console and also
using the Enable Tracing portlet in the portal administration page.
To enable extended trace settings for a longer period of time, that is, for more than one
session, switch them on in the WebSphere Application Server configuration, save the
updates and restart the portal server.
you can run java -fullversion to find the jdk version details
Being a Java developer or Java based Application server administrator like WebSphere or WebLogic ,
i am sure you should have come across this exception " Error: java.lang.ClassNotFoundException "
which basically implies that the JVM is unable to find a definition for your class. It is usually resolved
by adding the jar file that contains the class to the classpath or packaging the jar file along with your
EAR or WAR file or placing the jar file in the right locations so that your Application Server
classloader can find and load the class . So inorder to indentify the .jar file where the class file is
present , the following simple UNIX command will help us to indentify the jar file and take
appropiate actions to resolve the issue .
LINUX:
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:
The above command will recursively search all the jar , EAR and WAR files under the
/usr/IBM/WebSphere/AppServer/ for the class name org.apache.xerces.dom.DocumentImpl.class
and output the location of the .jar file that contains the class.
Although this command is useful only in unix environment but there are other java based utilities to
find the same like Jar Class Finder , Java class finder, etc , but i find this command simple to use
without having to copy addtional jar files to your systems.
/AppServer/java/jre/lib/ext/ibmext.jar
-Dwas.status.socket=54859 -classpath
/cust/IBM/WebSphere/AppServer/profiles/AppSrv02/properties:/cust/IBM/WebSphere/AppSer
11:55:00 AM CPU %user %nice %system %iowait %irq %soft %idle intr/s
11:55:00 AM all 1.51 0.00 0.41 0.04 0.01 0.09 97.94 184.92
11:55:00 AM 0 1.50 0.00 0.41 0.04 0.01 0.11 97.93 123.76
11:55:00 AM 1 1.51 0.00 0.42 0.04 0.00 0.07 97.95 61.16
4)Find CPU usage with the process listing in runtime and much more statistics in terms of memory,
virtual memory, etc.
top
12:00:20 up 118 days, 15:16, 2 users, load average: 0.07, 0.02, 0.00
572 processes: 570 sleeping, 2 running, 0 zombie, 0 stopped
CPU states: cpu user nice system irq softirq iowait idle
total 2.7% 0.0% 1.1% 0.0% 0.0% 0.0% 95.9%
cpu00 1.9% 0.0% 0.3% 0.0% 0.0% 0.0% 97.6%
cpu01 3.5% 0.0% 1.9% 0.1% 0.0% 0.0% 94.2%
Mem: 11819592k av, 5088092k used, 6731500k free, 0k shrd, 295304k buff
3998132k active, 682312k inactive
Swap: 2048276k av, 0k used, 2048276k free 1258592k cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME CPU COMMAND
17719 root 16 0 306M 306M 3992 S 0.7 2.6 22:14 1 java
19358 root 16 0 2532 2532 896 R 0.5 0.0 0:00 1 top
17771 root 15 0 306M 306M 3992 S 0.4 2.6 3:48 0 java
18058 root 16 0 458M 458M 4032 S 0.1 3.9 12:55 0 java
1 root 15 0 512 512 452 S 0.0 0.0 1:19 0 init
2 root RT 0 0 0 0 SW 0.0 0.0 0:00 0 migration/0
5)Continuous CPU usage monitoring and find the average CPU used.
a) sar -u 2 5
b) sar -o output.file 12 8 >/dev/null 2>&1 &
c) nohup sar -o output.file 12 8 >/dev/null 2>&1 &
2)prints just one line with the total size of the directory, the below example show the size of the
/usr/IBM/Websphere WebSphere Portal Server directory.
du -ch | grep total
The below example shows the information like CNAME , Aliases, ipaddres , etc about
www.google.com
;; QUESTION SECTION:
;www.google.com. IN A
;; ANSWER SECTION:
www.google.com. 585119 IN CNAME www.l.google.com.
www.l.google.com. 69 IN A 216.239.51.99
www.l.google.com. 69 IN A 216.239.51.104
;; AUTHORITY SECTION:
l.google.com. 60734 IN NS g.l.google.com.
l.google.com. 60734 IN NS b.l.google.com.
l.google.com. 60734 IN NS f.l.google.com.
l.google.com. 60734 IN NS c.l.google.com.
l.google.com. 60734 IN NS a.l.google.com.
l.google.com. 60734 IN NS e.l.google.com.
l.google.com. 60734 IN NS d.l.google.com.
Non-authoritative answer:
www.google.com canonical name = www.l.google.com.
Name: www.l.google.com
Address: 216.239.51.99
Name: www.l.google.com
Address: 216.239.51.104
2) List all network interfaces, the below example list two interfaces eth0 and eth1 and a loopback.
infconfig -a
bash-2.05b# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:11:43:32:49:99
inet addr:10.2.150.74 Bcast:10.5.50.127 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:357854361 errors:0 dropped:0 overruns:0 frame:0
TX packets:383621806 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3168219417 (3021.4 Mb) TX bytes:3724305382 (3551.7 Mb)
Interrupt:17
3) To find more information about a network interface, the below example shows detail information
about interface eth0.
2) Soemtimes you might run out of diskspace and want to clean up some files, so this command will
help you find all large files. In this example it will list all the files greater than 10 mb in size.
4) Sometimes you might encounter a situation for example when running xmlaccess or wsadmin
where you might want to write stdout to the file as well as to the console so that you have a copy
even when the standard output disappears because of the screen buffer size.
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/logs
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/logs/dmgr/SystemOut.log
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/logs/ffdc/dmgr_exception.log
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/logs/activity.log
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/wstemp/events/eventbuffer0.ser
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/wstemp/events/eventbuffer1.ser
/usr/IBM/WebSphere/AppServer/profiles/Dmgr01/wstemp/events/eventbuffer2.ser
/usr/IBM/WebSphere/AppServer/profiles/AppSrv01/logs
free
cat /proc/meminfo
bash-2.05b# free
total used free shared buffers cached
Mem: 11819592 4938416 6881176 0 298148 1440200
-/+ buffers/cache: 3200068 8619524
Swap: 2048276 0 2048276
bash-2.05b# cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 12103262208 5056954368 7046307840 0 305303552 1474797568
Swap: 2097434624 0 2097434624
MemTotal: 11819592 kB
MemFree: 6881160 kB
MemShared: 0 kB
Buffers: 298148 kB
Cached: 1440232 kB
SwapCached: 0 kB
Active: 3718616 kB
ActiveAnon: 2968776 kB
ActiveCache: 749840 kB
Inact_dirty: 789328 kB
Inact_laundry: 237596 kB
Inact_clean: 0 kB
Inact_target: 949108 kB
HighTotal: 11140992 kB
HighFree: 6681628 kB
LowTotal: 678600 kB
LowFree: 199532 kB
SwapTotal: 2048276 kB
SwapFree: 2048276 kB
Committed_AS: 6039100 kB
HugePages_Total: 0
HugePages_Free: 0
Hugepagesize: 2048 kB