Friday 28 March 2014

Installing packs for WebSphere Application Server V7.0

On a regular basis, WebSphere fix packs and individual interim fixes for public download. Fix packs contain multiple corrections and improvements in the areas of function, security, stability, and performance. It is recommended that you run your WebSphere with current fix pack levels.

PROCEDURE
Ø  Download the Update Installer for WebSphere Software
Ø  Install the Update Installer.
Ø  Extract the Update Installer package to a temporary directory.
Ø  Navigate to the UpdateInstaller subdirectory and start the installation wizard with the following command:

ü  Windows: install.exe
ü  UNIX/Linux: ./install

GUI Installation of WAS UpdateInstaller 7.0.0.x

Figure 1: Welcome Screen

Figure 2: License Agreement


























Installation Location























Update installer successfully installed 

Now Installing Updates - Refresh Packs, Fixpacks, & iFixes

Preparation for Updates

Ensure sufficient free space exists in the /tmp filesystem and in the install filesystem as specified in the ReadMe file for the update.

For Websphere updates, before proceeding, STOP ALL WEBSPHERE-JAVA, any that use WebSphere’s Java! 

For IHS and Plugin updates, only the HTTP processes must be stopped.

Backing up a repository using backupConfig
bin$backupConfig.sh

Run update.sh






























Welcome screen


Now check the version of WAS 7
Now apply packs  to IHS
Check ihs version


Now verify the packs are apply or not 
Now apply packs to plugins
Befor checks plugins versions



Verify packs are apply or not






Interview questions

1.when u deploy your application , the server is crashed . What do u do to recover server?
Ans:  I will check the logs to see any error messages. If the application related errors then
I will check for EAR files is corrupted or not.  Otherwise check  for WAS System out files .
I will redeploy  the application  and start the server.

2. What is the difference between HTTP and HTTPS?
   HTTP is without  security and HTTPS with security.

3.Tell me some monitoring tools?
   Intrascope and IBM Assistance.

4. if single cell has 20 nodes? is it possible?  Any problem this  type of configurtion?
   Yes. It is possible and it supports 20 nodes.

5. How many cells in your production?
Ans: 2 cells

6. how to generate heap dump through wsadmin. 

Invoke the generateHeapDump operation on a JVM MBean, for example,
* Finding JVM objectName:
<wsadmin> set objectName [$AdminControl queryNames
WebSphere:type=JVM,process=<servername>,node=<nodename>,*]
* Invoking the generateHeapDump operation on JVM MBean:

<wsadmin> $AdminControl invoke $objectName generateHeapDump

7. What is the usage of systemErr.log and systemOut.log
    These gives all the error information when you want check for any application had a issues.

8. How do u find context root?

<PROFILE_ROOT>/<profile_NAME>/ installedApps/>CELLNAME>/<APPLICATION_NAME>/META-INF/application.xml
 /u03/local/opt/was/was70/profiles/node01/installedApps/PRODUSG/usg_war.ear/META-INF/ application.xml
<module>
        <web>
            <web-uri>usg.war</web-uri>
            <context-root>/usg</context-root>
        </web>
    </module>



admin console :   applicatns>websphere enterprise applications> <application_name> Context Root For Web Modules











9.What is the use of plug-in?
    Plugin is used for  link b/w  IHS  server and Application Server.

10.what is the difference between Web server and Application Server?
       A Web server exclusively handles HTTP requests, whereas an application server serves business logic to application programs through any number of protocols.

11. are you using IBM HTTP Server or Apache Server? What is the difference between them? 
      We are using HTTP server . Both are same purpose but the product is different.
     One is IBM and other one open source product.

12. . How many Environments you are supporting. 
DEV,QC, SAT and PROD.

13. tell me about your topology.
My environment has 60 applications running across 20 rhel boxes with  5 cells  each cell has 3 nodes under dmgr all nodes are established horizontal cluster all cluster have 3 jvms

14. Tell me something about clustering?
A cluster is a set of application servers that you manage together as a way to balance workload.
Horizontal clustering
Horizontal clustering, sometimes referred to as scaling out, is adding physical machines to increase the performance or capacity of a cluster pool. Typically, horizontal scaling increases the availability of the clustered application at the cost of increased maintenance. Horizontal clustering can add capacity and increased throughput to a clustered application; use this type of clustering in most instances.

Vertical clustering
Vertical clustering, sometimes referred to as scaling up, is adding WebSphere Application Server instances to the same machine. Vertical scaling is useful for taking advantage of unused resources in large SMP servers. You can use vertical clustering to create multiple JVM processes that, together, can use all of the available processing power.

15. Tell me about yourself?

 My name is KUMAR I am Currently working as SOFTWARE ENGINEER OR WAS ADMINISTRATOR in IBM from APRIL 2009.

As a WAS ADMINISTRATOR My Roles and Responsibilities are

 Exprience in Deploying EAR , JAR , WAR files.
 Federated multiple nodes to DMGR

 Experience in setting up of nodes , Data Sources , Virtual Hosts

 Implemented when using Horizontal and Vertical Clusters.

Configured enabled Global Security system.

Configured Web Sphere resources like JDBC PROVIDERS , JDBC DATA SOURCES , CONNECTION POOLING.

 Responsible for general WAS ADMIN tasks like Starting and Stopping of Servers.


16.Explain the installation of ND?

17.How to create profiles (Explain)?
Ans)by using  Manageproiles.sh and pmt tool

18. Difference b/w 6.1 and 7.0?

Changes in v7.0
Administration changes
– SessionInitiationProtocol(SIP) Migration Considerations
– zOS Migration tool
– Administration script required changes
– Port usage
– Security Migration considerations
– Mixed version considerations
Development changes
– Development tool change
– JRE 6 impacts
– JEE 5 impacts
– WebSphere removed features

– Increased usage of Open Source implementations included in WAS


19. Which tool your are using for WAS?
wily introscope monitoring tool

20.  Which server your using for WAS(HTTP or Apache)?
HTTPSERVER

21. What are your daily tasks?
ans) Monitor the  applications and check health status of SERVERS
and we are using ticketing tool based on tickets i will do my work and finally i update my work log.

22. What you did yesterday(explain about your yesterday task)?
ans) yesterday i had 4 tickets so i did my tickets works

23. How to apply packs ?
Through update installer
1. first take backup the configuration files  and down all process's
2. copy the packs to maintains directory under UpdateInstaller
3.run update.sh  and select environment (was/ihs/plugins) as your requirement
4. start process's

24. How to federate Node to Dmgr?
by using addNode.sh

25. What are use of packs?

to fix the specific issues and add miner new features

26. what is the use of addNode.sh and syncNode.sh?

by using addNode.sh to federate the custumprofile to DMGR
By using syncNode.sh to synchronize the master repository to local repository

27. Diff b/w Profile and Node?

Profiles: set of files to provide the runtime environment
Nodes: logical unit  that build of nodeagent and one or more servers .

28 .  How to solve thread dump issues?
Bounce the servers

29. How to solve heap dump issues using heap dump analyzer?

Increase the heap size for temporary purpose.
and find the root cause of out of memory or memory leaks  then discuss with developers for changing code

30. What does plunging contain?

plugin has set of files. 
The primary responsibility of the plug-in is to forward HTTP requests from the Web server to the WebSphere Application Server.

31. Command to invoke heap dump analyzer?
kill -3 <processID>

32. Types of algorithms  in workload management?
1. Random
2. Round Robin

33. Session Affinity?
Session affinity overrides the load-balancing algorithm by directing all requests in a session to a specific application server.

34. How many ways we will create profiles? what are they?
2 ways 
1.  command line( MANAGEPROFILES.SH)
2. Profile management tool (PMT)

35. What is SSL?
Secure socket layer its just a protocols 
SSL protocol for transmitting data securely over the World Wide Web is Secure HTTP (S-HTTP).

36. what is heap dump analyst ?

ibm memory analyzer

37. how to take thread dump?
kill -3 <server process id>
and  jython script

38. How many types of profiles? what are they?
5 types there are  1. cell 2. application server 3. Deployment Manage (DMGR)
4. custom profiles 5. proxy profiles

39. What are config files?
all xml files are config files

40. How to do silent installation?

Extract the installer
Create a responsefile.base.txt as per your requirement content.
Install with the following options

./install –options responsefile.base.txt -silent

41. What is 505 error how to handle it?

The Web server (running the Web site) does not support, or refuses to support, the HTTP protocol version specified by the client (e.g. your Web browser or our CheckUpDown robot) in the HTTP request data stream sent.

The HTTP protocol has various versions identified as major. minor e.g. version 0.9, 1.0 or 1.1. The server is indicating that it is unable or unwilling to complete the request using the major version provided by the client - other than with this error message.

Assuming that your request identifies a valid major. minor version number (the request is not fundamentally corrupt), then this error should mostly only occur if you are trying to use version 1.0 or 1.1, but the Web server only supports the older 0.9 version.

Fixing 505 errors - general

Most Web browsers assume that Web servers support 1.x versions of the HTTP protocol. In practice very old versions such as 0.9 are little used nowadays, not least because they provide poorer security and performance than newer versions of the protocol. So if you see this error in your Web browser, the only option is to upgrade the Web server software. If version 1.x requests fail, it may well be because the Web server is supporting the 1.x protocol versions badly, rather than not supporting them at all.

42.  What is 404 error how to handle it?(file not found )

The server could not find the file that the visitor requested. This error commonly occurs when a URL is mistyped.

check the sysemout.log and check the status of server and check url
check webserver logs files

43. What is the log files of a plug-in?

http_plugin : we can check plug-in related issues.
IHS logs.
a) Access.log. If a request is reaching to web server or not.
b) Error.log. <HIS-root>/logs
c) Adminerror.log. If the web server is on remote box at that time we will get logs.

44. What is the memory  space of DMGR?
Ans: 35 Mb

45 . What is global security?
Global security can be enabled for application servers running within a cell so that authentication is required, requesting that a valid user ID and password is entered before an application server can be accessed.

46. If any changes made in admin console ,in what user role we have to do in real-time?

Configurator role

47. What is the size of connection pool?

To view this administrative console page, click
Resources > JDBC Providers > JDBC_provider > Data Sources > data_source > Connection Pool.

48. What is j2c?

J2EE Connector architecture (J2C) authentication alias can be used to provide the credentials required for access to systems like Databases, Queue Manager (MQ), Mail providers,....is a way to configure a user/password in Websphere and then link with the connector (datasource, connection factory,....)

49. What is the responsibilities when your restart  a server?
operator

50. why your using plug-in?
plug-in provide workload management and failover
and routing request away from a failed application server

51. Can you tell me ,what issues  you troubleshooting?
http 500 , http 404 , 403
memory leaks
out of memory
hang the servers 

52. What are the heapdump thread dump analyzer?

IBM Thread and Monitor Dump Analyzer
ibm memory analyzer

53. What is the responsibilities of monitor?

An individual or group that uses the monitor role has the least amount of privileges. A monitor can complete the following tasks:
  • View the WebSphere Application Server configuration.
  • View the current state of the Application Server.
54. What is the responsibilities of operator?

An individual or group that uses the operator role has monitor privileges plus ability to change the runtime state. For example, an operator can complete the following tasks:
  • Stop and start the server.
  • Monitor the server status in the administrative console.
55. why we need personal signed certificate ( by certificate signing authority ) and not self signed certificate ?

selfsigned certificates are not trusted by other components /browser while handshaking . It is likely to throw not secured site / handshake error / cross mark symbol on https sign in browsers. One should only use selfsigned certificates in intranet, not suggested to use in real world
signed certificate: used in Internet

56. How plug-in is communicated with back end application server by using ssl ?say yes if there is any process?
In general if SSL is enabled between browser (read LB) and webserver you can bypass the SSL configuration between webserver plug-in and application server .In WAS 6.X and 7.X by default non secure port will be used if plugin.kdb path is not set . But its highly recommended to enable SSL between webserver plug-in and application server if application is critical and is exposed to internet . It can be achieved by using exiting /creating plugin.kdb . In addition to this plugin-key.kdb must include the cell’s root signer certificates and the web server plug-in certificate must be added in the CellDefaultTrustStore to SSl properly to work between plug-in and application server . For any particular application to use the SSL between plug-in to application JVM one can enable client authentication in webcontainer service transport tab.

57.Why we need to use more intermediate certificate then root certificates?
The more components you connect , the more intermediate cert is required to be added in signer trust

58. How webserver does know the firewall is getting request?
 simple telnet from source to destination on port . check for logs it will also give information's.

59.What kind of keystore are using apart from PKCS from websphere?
  JKS ,BKS

60.Which command to check the fixpack are applied or not ?
versioninfo.sh in WAS installed bin directory .
./versioninfo.sh -long

61.We want to send directly request from LB to WAS?what are steps you are fallowing in WAS level?
Yes it can be done. There are several ways to do it . One of the common is using firewall ( assigning public IP addresses on the firewall) acts as a proactive layer and using dynamic outbound at console by enabling SSL over specific port .

62.Which command to check OS performance in linux/aix?
Top, topas, nmon , vmstat , lsof,  nice & nmon

63. There are 3 difference Horizontal clusters(C1-20,C2-20,C3-20) in the WAS & all cluster weights are same & up and running as well. How do we know which cluster is receiving first request ?

 The JSESSIONID has mainly 3 information's cacheID , Session Id , clone ID /partition id . To know which cluster member is serving the request one need to check clone Id . but when Memory to memory replication is used check for Partition IDs rather than Clone IDs.

64. what are default port for FTP/SSH/LDAP/DNS?
FTP: Default port 21
SSH: Default Port 22
LDAP: Default Port  389/ 636
DNS: Default Port  80/443

Thursday 27 March 2014

Real time issues and interview questions

what is the difference between the Generate Plug in and Propagate Plug in?

generate plugin:-if any changes are done in websphere environment then we have to do generate plugin(changes like:-change in virtual host, creating or deleting servers or clusters, deploying or deleting new application)to create the plugin we have a cmd bin/genplugincfg.bat->dmgr/bin directory) then it will be generated in the DMGR cell level.
Propogate plugin - It transfers the generated plugin to it respective remote webserver config path : <WEBSERVER_HOME>/Plugins/config.

Why can't we start nodeagent from the DMGR console when it is stopped as there is no option given to start it from dmgr console and at the same time if it is that is nodeagent is started then we can restart it from the Console ...why is it so?

node agent is a interface, communicator b/w servers and dmgr.. But there is not interface between dmgr and nodeagent. nodeagent behaves like manager to itself..once you start the nodeagent you can give commands like stop, start jvms in the similar way you can stop and restart the node agent as it is running..if nodeagent stopped, if you are issuing command like start nodeagent which process is going to receive the command.

there is restart option in console and as we know in restart the nodeagent first stops then starts..then in this case as it stops the nodeagent in restart then hw it again starts it if ur explanation is valid?

answer is simple lets take this general example. u can call a mobile if it is switch on (u can reach NodeAgent if it is running and u can do activities like stop/restart from dmgr)

u cant call a mobile if it switched off ( u cant reach Node Agent if it is stopped and u cant do any activities stop/restart/restart) so only from mobile he can switch on (so u can start Node Agent from Node Agent only)

but if mobile is reachable u can call your friend and ask him to switch off and switch on his mobile (if nodeAgent is reachable u can restart(stop+start) from dmgr )
 or
we have 'restart' option for Nodeagent in admin console. Restart is nothing but stopping and starting. When 'restart' option is clicked, NA first stops, which breaks the communication between NA and DMGR. So, how does NA start again? My understanding is DMGR, at one shot, sends both stop and start signals/commands to NA. My point here is where the start signal/command is stored when NA stops?

when we synchronize node from cmd mode, why do we need to stop nodeagent.

 To make sure no changes to the master configuration while performing full sync via cmd. If node agent Is up and some one else saving configuration which conflict to the full sync...

 if did not stop node agent, then changes made by sync is not recognize and in next auto sync all these changes are overridden. because node agent sync is done only from dmgr. so it identifies only changes known by dmgr, if u do manually sync without stopping nodeagent ,then dmgr doesn't come to know these changes and those are overridden in next sync.

How to get the password of .kdb file if we forget?

once you have create the .kdb file this file related passwords are stored into .sth file it will be stored into the same directory.in the .sth file contains the .kdb file password in encrypted format.

what all information we can find in severindex.xml file
Details of the JVM server process witin that node where the serverindex.xml belongs
Deployed Applications within that Server
The Ports which like "SOAP_CONNECTOR_ADDRESS" , BOOTSTRAP_ADDRESS etc

what are the different types of logging and troubleshooting utilities in websphere?

we have a) Trace logs
b) JVM Logs = Server logs such as sysout.log, syserror.log, nativesttd.log nativeerror.logs etc
c) webserver logs = Access.log and error.log

What is difference between jacl and jython?

Both same jacl is old one more using in market(Little bit defuilt to understand syntx etc).Jython using now in market(user understandable)

when will you regenerating the pluggin?

when we made manual changes on configurations file, at that time we will regenerate.

We have a serious problem with the DMGR admin console, cannot able to open the admin console. Manager is up nd the port number is checked nd it is fine. The same works in another environment. Can someone give few steps to fix the issue?

 backup of isc application and remove the admin console using below wsadmin then restart the dmgr may be it helps you wsadmin.bat –f deployConsole.py remove
wsadmin.sh –f deployConsole.py install

 Before removing Temp files, Stop DMGR, clean all Temp files under dmgr/temp, dmgr/wstemp & dmgr/config/temp and also check any Java process still exist on Task manager . REstart MDGR, this should set your issue


WAS855 installed with nonroot.Fixpack was installed with root.In the same system another WAS8 is installed.Now the issue is when I check or run versionInfo through root it is showing version as 855.When I check through nonroot it is showing version as 800.(Reason is that when I check thourgh "env" it is picking up WAS8 path.Even I tried to execute setupCmdLine.sh for WAS855 its not working.Manually I tried to set path for Java.Even then no use).What could be the reason and how to solve this issue

Issue got resolved by installing with root.Later changed the permissions and working fine

What is the difference between deploying an EAR File and WAR File?

in ear files no need to give the context root...in war files u have to give
1.EAR menace Enterprise application and WAR menace web application
2.In WAR Auto Deployment is possible where else in EAR auto deployment is not possible
3.WAR contains Web.xml file where EAR contain web.xml and Application.xml file

what are the steps should be taken before depolying a application in production evirnotment

first take necessary backups ,raise change request,approval request and schedule time from change control

How can we do hot deployment on PROD app servers ? App should be deployed and clustered app servers needs to recycled without an outage ?
do the deployment...and then do ripple restart...it will recycle jvm 1 by 1...no outage

Hot deployment means, adding modules or additional services to the existing or new application without stopping the app server as well as application. In your case, When application is went to PROD environment then you can't stop the application as application requests will come, so you can do hot deployment now.

If suppose dmgr having only one node in that only one JVM. If suppose dmgr &node agent of the node is also down. I want to start the JVM inside the node Is it possible or not?

 It is possible to run a JVM without running of DMGR, but without node agent is JVM will not start... !

if in case failure of DMGR node, then how do we handle the issue ?

 No impact to the severs even if dmgr is down. Only configuration changes not possible to do

 else simply kill the PID of DMGR and node agent and restart it again at the same time tail the logs any you can know the answer from the logs

how i can know how many users are hitting the application? if any command is there to find out the hit-counts?

 if i enable map stat where can i see the hit count.
 U have to check in error.log
 Using monitoring tool introscope willy

when we are accecing irctc at night time some times it shows it is under maintenance. (in realtime environment how can we set that page) i hope u got my point.

Need to add custom property of that JVM, saying under maintance.. Then if the jvm is down. It will how that message
Application server->Server->Webcontainer->Custom Properties-> New
 Add the below

Name: com.ibm.ws.webcontainer.webgroupvhostnotfound
Value: <html><head><title>UNder Maintennance</tile></head></html>

there any possibility to install all versions of WAS at a time on one OS?
you can install but need to give different file system path

Server went to hung state i have restarted to resolve the issue. but when i see in the logs I am getting below error in the logs. Please let me know how to avoid this error in future. My WAS Version is 6.1.0.31

J2CA0045E: Connection not available while invoking method createOrWaitForConnection for resource jms/XXXQCF

This most probably is the issue with not having too much of connections in the connection pool

Looks like there are no avaliable connections in the connection pool.

Either you must have set the max connections to a very low number or its not tuned to suit your application need.

The immediate fix would be bump up the max connections and then tune your connection pool settings.

In what situations we have to go through activity logs and trace logs... please explain in detail..thanks in advance
activity.log & trace.logs are available in webserver, when we are not able to communicate to the app.server we can check here...

what is the use of connection pools?


 connection pools are readymade connections to database. we can use these connection again and again. these comes with datasource creation.