Based on the comment and response we got from Beginners…we are starting a series of Posts intended for Beginners of WebLogic. This post contains a very basic and brief introduction of WebLogic. This post is intended for people who are just about to start using WebLogic. Sonner the page length will increase with some more basic stuff on weblogic. This post contains just the brief introduction of WLS from theoretical point. For practicle on these things you can refer to other Posts of “BeginnersCorner” Page.
What is WebLogic Domain?
A WebLogic Domain is a logically related group of WebLogic Server instances (Admin + managed Servers)that you manage from a single set of configuration artifacts. A weblogic Domain contains exactly one AdministrationServer and zero or more than zero managed Servers.
All WebLogic Server instances within the same domain must be at the same major and minor version.
Servers within a domain can be at different Maintenance Pack levels as long as the Administration Server is at the same Maintenance Pack Level or higher than its Managed Servers.
Example: AdminServer may be running using WLS10 MP1 and Managed Servers may be runnning using WLS10 MP0. (Correct)
AdminServer may be running using WLS10 MP0 and Managed Servers may be runnning using WLS10 MP1. (Wrong)
What Are WebLogic Servers?
WebLogic Servers are the Programs Java programs which starts listening on a perticular port (Secure/Non-Secure) to serve clients requests. It can also have many sub systems for request processing like Jdbc Pools, JMS modules, Jolt connection Pools, Mail Servers,…etc are deployed on servers.
WebLogic Servers can be categorized in two categories
1). Admin Server
2). Managed Servers
What is Administration Server?
Administration Server Can be only one for a Domain, which works like a Central Configuration/Monitoring controller for the entire domain.
It Hosts the Administration Console application (consoleapp) which is placed inside the following Location: “C:\bea103\wlserver_10.3\server\lib\consoleapp”
ConsoleApp Helps us to Start and Stop servers from a from admin console Only if the Servers are configured to run with Machines, because Every machine has a Nodemnager Associated with it. If a Server is not assigned a Machine/NodeManager then it cannot be started using the Administartion Console.
AdminServer helps us to Migrate Servers and Services within the domain.
AdminServer helps us to Deploy Applications within the domain…targeted to ManagedServers/Clusters or targeted to AdminServer itself.
There must be exactly One Administration Server in domain. Usually we can deploy applications on AdminServer/ManagedServers/Clusters But for Production environments, it is Not recommend to hosting application logic or resources on the Administration Server.
What Are Managed Servers?
Managed Servers are similar to the Administration Servers, except few differences. Like Managed Servers will not have Administration Console Application (consoleapp) deployed in it.
Each Managed Server is independent of all other Managed Servers in the domain. Managed Servers can be part of Clusters to work together as a Unit. We can have one or more than one Managed Servers in a domain according to our requirement. The Managed Servers can reside inside the Physical box of AdminServer or they can run on a Separate Physical Box as well.
Managed Servers can be started and Stopped without the AdminServer Running as well…this feature is called as “MSI- mode of ManagedServers”. MSI stands for ManagedServers Independent Mode.
How ManagedServers interacts with Admin Server?
The Administration Server stores the master copy of the domain configuration, which contains all the configuration for all managed servers in the domain including other resource configurations like DataSource, JMS respurces, WLDF , mail Session…etc configurations as part of the “config.xml” file which is placed inside the: “<DOMAIN_HOME>\config” directory
Every Managed Server stores a local copy of its configuration with the help of NodeManagers.
If AdminServer is already started then while startup operation of Managed Server, it connects to the Administration Server to synchronize the configuration and in case of any modifications in the “config.xml” it collects those changes from the AdminServer.
If AdminServer is not already running and if we will try to start Managed Servers (in MSI Mode) then Managed Servers get the Cached Configuration file which is provided by the NodeManager with the name of “msi-config.xml”
For more information on this please refer to: http://download.oracle.com/docs/cd/E13222_01/wls/docs81/adminguide/failures.html
What Is a WebLogic Server Cluster?
A cluster is part of a particular WebLogic Server domain.
A WebLogic Server cluster consists of multiple WebLogic Server server instances running simultaneously and working together to provide LoadBalancing and Failover features. A cluster appears to clients to be a single WebLogic Server instance. The server instances that constitute a cluster can run on the same machine, or be located on different machines. We can add any number of Managed Servers as part of a Cluster. Each server instance in a cluster must run the same version of WebLogic Server. At any point of time Any Managed Server can not belong to more than one Clusters.
If a domain contains multiple clusters, each cluster in the domain has the same Administration Server.
How Cluster and Domain Are Related?
A domain is an interrelated set of WebLogic Server resources that are managed as a unit. A domain includes one or more WebLogic Server instances, which can be clustered, non-clustered, or a combination of clustered and non-clustered instances. A domain can include multiple clusters. A domain also contains the application components deployed in the domain, and the resources and services required by those application components and the server instances in the domain. Examples of the resources and services used by applications and server instances include machine definitions, optional network channels, connectors, and startup classes.
What Are the Benefits of Clustering?
Scalability (Load Balancing/Load Sharing): The capacity of an application deployed on a WebLogic Server cluster can be increased dynamically to meet demand. You can add server instances to a cluster without interruption of service, the application continues to run without impact to clients and end users.
High-Availability(Failover): In a WebLogic Server cluster, application processing can continue when a server instance fails. You “cluster” application components by deploying them on multiple server instances in the cluster so, if a server instance on which a component is running fails, an other server instance on which that component is deployed can continue application processing.
What is NodeManager?
A Node Manager process is not associated with a specific WebLogic domain but with a machine. Node Manager process to control server instances in any WebLogic Server domain until the server instances reside on the same machine as the Node Manager process.
Node Manager is a WebLogic Server utility that enables you to start, shut down, and restart Administration Server and Managed Server instances from a remote location. Although Node Manager is optional, it is recommended if your WebLogic Server environment hosts applications with high availability requirements.
A Node Manager process is not associated with a specific WebLogic domain but with a machine. You can use the same Node Manager process to control server instances in any WebLogic Server domain, as long as the server instances reside on the same machine as the Node Manager process.
Why We Need Nodemanagers?
1). It can Start, Shut Down, and Restart an Administration Server which has assigned a Machine.
2). It can Start, Shut Down, and Restart an Managed Server which has assigned a Machine.
3). It can Restart Administration and Managed Servers. (Crash Recovery of Servers is an Interesting feature)
4). It can be used to Monitor Servers and View Log Data
Types of NodeManagers?
1). Java Based Nodemanager: This can be used in Windiows as well as UNIX based Operating systems. Java Based Node Manager is not supported on Open VMS, OS/390, AS400, UnixWare, or Tru64 UNIX.
2). Script Based Nodemanager: This nodemanager can be used in UNIX based operating systems. The advantage of the script-based Node Manager is that it can remotely manage servers over a network that has been configured to use SSH.
For More Information on NodeManager please refer to: