Documente Academic
Documente Profesional
Documente Cultură
D56082GC10
Edition 1.0
March 2009
D58926
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Author Copyright 2009, Oracle. All rights reserved.
Oracle University and African Legend Indigo (PTY) LTD use only
Robert Lavallie find any problems in the document, please report them in writing to: Oracle University,
Thomas Palazzolo 500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not
warranted to be error-free.
Vijayalakshmi Narasimhan If this documentation is delivered to the United States Government or anyone using
Joyce Raftery the documentation on behalf of the United States Government, the following notice is
applicable:
Sujatha Nagendra Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other
names may be trademarks of their respective owners.
Joseph Fernandez
Veena Narasimhan
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Contents
Preface
Oracle University and African Legend Indigo (PTY) LTD use only
1 Installing Oracle WebLogic Server Environment
Objectives 1-2
Road Map 1-3
Distributed Systems 1-4
How Standards Help 1-6
The J2EE Standard 1-7
The J2EE Architecture 1-8
Java Servlets 1-9
JavaServer Pages (JSPs) 1-10
Enterprise JavaBeans (EJBs) 1-11
Java Database Connectivity (JDBC) 1-12
Java Naming and Directory Interface (JNDI) 1-13
Java Transaction API (JTA) 1-14
Java Message Service (JMS) 1-15
Java Authentication and Authorization 1-16
Java Management Extensions (JMX) 1-17
Client Application 1-18
Web Client 1-19
Proxy Server 1-20
Firewalls 1-21
Web Server 1-22
Application Servers 1-23
Web Application Server Configuration 1-24
Application Server Configuration 1-25
Domain 1-26
Why Use Domains 1-28
Domain Restrictions 1-30
Server 1-31
Administration Server 1-32
Managed Server 1-34
Interaction Between the Administration Server and the Managed Server 1-35
Machine 1-36
Cluster 1-37
iii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Cluster Guidelines 1-39
Node Manager 1-40
Road Map 1-43
Oracle WebLogic Server Installation 1-44
GUI Mode Installation 1-46
Choosing an Installation Type and Products 1-47
Choosing the JDK and Product Directory 1-48
Oracle University and African Legend Indigo (PTY) LTD use only
Installation and Summary 1-49
Console and Silent Mode Installations 1-51
Postinstallation: Oracle Home 1-52
Oracle WebLogic Server Directory Structure 1-53
Samples Directory Structure 1-55
Setting Environment Variables 1-56
Quiz 1-57
Summary 1-65
iv
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Starting Administration Server Using the
java weblogic.Server Command 2-36
Starting Administration Server Using startWebLogic.sh 2-37
Road Map 2-39
Configuring Managed Servers 2-40
Configuring Machines 2-42
Starting Oracle WebLogic Managed Servers 2-43
Oracle University and African Legend Indigo (PTY) LTD use only
Starting a Managed Server Using the java weblogic.Server Command 2-44
Starting a Managed Server Using startManagedWebLogic.sh 2-46
Starting a Managed Server Using the Administration Console 2-48
Creating a Boot Identity File 2-49
Demonstration 2-51
Managed Server Independence (MSI) 2-52
When the Administration Server Is Down 2-55
Restarting an Administration Server on a New Machine 2-56
Running Multiple WLS Instances 2-57
Road Map 2-58
Custom Domain Templates 2-59
Domain Template Builder 2-61
Creating a Domain Template 2-62
Selecting the Template Domain Source and Describing the Template 2-63
Adding Files and SQL Scripts to the Template 2-64
Configuring the Administration Server, Username, and Password 2-66
Configuring Users, Groups, and Roles 2-67
Assigning Users to Groups and Assigning Groups to Groups 2-69
Assigning Users and Groups to Global Roles 2-70
Start Menu Entries for Windows and Prepare Scripts and Files with Replacement
Variables 2-71
Reviewing the WebLogic Domain Template and Creating a Template 2-73
Successful Template Creation 2-74
Road Map 2-75
Using the Administration Console 2-76
Accessing the Console 2-77
Console Login 2-78
Basic Navigation 2-79
General Console Preferences 2-80
Advanced Console Options 2-81
Setting Basic Properties 2-82
Shutting Down a Server 2-83
XML Schema for config.xml 2-84
v
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Configuration Change Management 2-86
Console Change Center 2-87
Domain Configuration Repository 2-88
Configuration Change Process 2-89
Predictable Distribution of Domain Configuration Changes 2-90
Configuration Management Architecture 2-91
WebLogic Scripting Tool (WLST) 2-93
Oracle University and African Legend Indigo (PTY) LTD use only
Jython 2-94
Using Jython 2-95
WLST Modes 2-96
WLST Example 2-97
WLST Command Requirements 2-98
Running WLST Scripts 2-99
Importing WLST as a Jython Module 2-100
General WLST Commands 2-101
Offline WLST Commands 2-102
Creating a Domain: Example 2-103
Online WLST Commands 2-104
WebLogic JMX: Overview 2-105
Navigating JMX MBeans 2-106
Creating a Server: Example 2-103
Generating a WLST Script 2-108
Quiz 2-109
Summary 2-127
vi
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Configuring Node Manager as a Windows Service 3-20
Daemonizing Node Manager for UNIX Systems 3-21
Starting Oracle WebLogic Server at Boot 3-23
Oracle WebLogic Server as a Windows Service 3-24
Setting up Windows Service 3-25
Oracle WebLogic Server as a Unix Daemon 3-27
Oracle WebLogic Server at Boot 3-28
Oracle University and African Legend Indigo (PTY) LTD use only
Example rc Scripts 3-29
Configuring Java-Based Node Manager Security 3-31
Administration Console Node Manager Security 3-33
Remote Server Start Security for the Java-Based Node Manager 3-34
Reviewing nodemanager.properties 3-35
Configuring Node Manager on Multiple Machines 3-37
Configuring Script-Based Node Manager 3-39
Creating a Node Manager User 3-40
Configuring Script-Based Node Manager Security 3-41
Additional Configuration Information 3-43
Configuring a Machine to Use Node Manager 3-44
Configuring the nodemanager.domains File 3-45
Configuring Remote Startup Arguments 3-46
Ensuring that the Administration Server Address Is Defined 3-48
Setting Node Manager Environment Variables 3-49
Node Manager Configuration and Log Files 3-50
Road Map 3-53
Oracle WebLogic Server Logs 3-54
Server and Domain Logs 3-56
Configuring Server Logging 3-57
Viewing Logs with the Console 3-59
Message Attributes 3-60
Message Severity 3-61
Message Catalog 3-62
Log Filters 3-64
Creating a Log Filter 3-65
Applying a Log Filter 3-66
Console Monitoring 3-67
Monitoring All Servers 3-68
Customizing the View for All Servers 3-70
Monitoring Individual Servers 3-71
Road Map 3-72
Network Addressing Features 3-73
vii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Network Channels 3-75
Configuring Network Channels 3-76
Using Channels: Example 1 3-77
Using Channels: Example 2 3-78
Administration Port 3-79
Overriding the Administration Port 3-83
Quiz 3-84
Oracle University and African Legend Indigo (PTY) LTD use only
Summary 3-87
4 Basic Deployment
Objectives 4-2
Road Map 4-3
The Role of Web Servers 4-4
A Typical Web Interaction 4-5
MIME Types 4-7
HTTP Status Codes 4-8
Static Content 4-9
Dynamic Content 4-10
Road Map 4-11
Java EE Web Applications 4-12
Packaging Web Applications 4-14
Web Application Structure 4-15
Configuring Web Applications 4-18
web.xml 4-20
weblogic.xml 4-21
The weblogic.xml Deployment Descriptor 4-22
Web Application Archive 4-23
URLs and Web Applications 4-25
Web Service Applications 4-26
Virtual Directory Mappings 4-27
Virtual Directory Mapping: Example 4-28
Archive Versus Expanded Directory 4-29
Road Map 4-30
EJB Applications 4-31
Types of EJBs 4-32
weblogic-ejb-jar.xml 4-35
EJB Administrator Tasks with WLS 4-36
Road Map 4-37
What Is an Enterprise Application? 4-38
A Typical Java EE System 4-39
viii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
J2EE Enterprise Application 4-40
Java EE Enterprise Applications 4-41
Why Enterprise Applications? 4-42
Enterprise Application Structure 4-43
weblogic-application.xml 4-44
Configuring WLS-Specific Features 4-45
WLS Application Classloader 4-46
Oracle University and African Legend Indigo (PTY) LTD use only
EAR Class Libraries 4-47
J2EE Library Support 4-48
WebLogic Shared Java EE Libraries 4-49
Shared Library References 4-50
Road Map 4-51
Deployment Process: Overview 4-52
Deployment Methods 4-53
Deployment Tools 4-54
Auto-Deployment Copying Files 4-55
Auto-Deployment 4-56
FastSwap and On-Demand Deployment 4-57
Development Versus Production Modes 4-59
Production Mode Flag 4-60
Console Deployment Method 4-61
Preparing a New Application 4-63
Deploying or Undeploying Applications 4-65
Redeploying an Application 4-66
Console Deployment 4-67
Editing Deployment Descriptors 4-69
Monitoring an Application 4-70
Application Testing 4-71
Application Update and Delete 4-72
Command-Line Deployment 4-75
Deployment with weblogic.Deployer 4-76
weblogic.Deployer: Examples 4-77
Deploying Applications with WLST 4-78
Deploying an Application with WLST 4-79
Deployment with WLST 4-80
Quiz 4-81
Summary 4-84
ix
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
5 Understanding JNDI
Objectives 5-2
Road Map 5-3
What Is JNDI? 5-4
Why JNDI? 5-5
JNDI Structure 5-6
Naming Service 5-7
Oracle University and African Legend Indigo (PTY) LTD use only
JNDI Tree 5-8
Contexts and Subcontexts 5-10
JNDI for Administrators 5-11
Viewing the JNDI Tree 5-12
Listing the JNDI Contents 5-13
Summary 5-14
6 Setting Up JDBC
Objectives 6-2
Road Map 6-3
What Is JDBC? 6-4
JDBC Review 6-5
JDBC Data Sources 6-6
Data Source Scope 6-7
Two-Tier Architecture 6-8
Multi-Tier Architecture 6-9
JDBC Architecture 6-10
Type 1 Driver 6-11
Type 2 Driver 6-12
Type 3 Drivers 6-13
Type 4 Drivers 6-15
WebLogic JDBC Drivers 6-16
Choosing the Correct Driver 6-18
Road Map 6-19
What Is a Data Source? 6-20
What Is a Connection Pool? 6-21
Benefits of Data Sources and Connection Pools 6-22
JDBC Data Source Architecture 6-23
Modular Configuration and Deployment of JDBC Resources 6-24
How Data Sources Are Used 6-25
Creating a Data Source 6-26
Connection Pool Configuration 6-28
Targeting a Data Source 6-29
Viewing the Server JNDI Tree 6-30
x
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Demonstration 6-31
Connection Pool Checklist 6-32
JDBC URLs 6-33
JDBC URL Examples 6-34
Connection Properties 6-35
Multi Data Sources 6-37
Road Map 6-39
Oracle University and African Legend Indigo (PTY) LTD use only
Monitoring and Testing a Data Source 6-40
Quiz 6-41
Summary 6-44
xi
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
How a Durable Subscription Works 7-37
Configuring a Durable Subscription 7-38
Persistent Messaging 7-39
Creating a JMS Store 7-40
Creating a JMS JDBC Store 7-41
Assigning a Store to a JMS Server 7-43
Persistent Connection Factory 7-44
Oracle University and African Legend Indigo (PTY) LTD use only
Configuring a Persistent Destination 7-45
Road Map 7-46
Statistics for JMS Objects 7-47
Monitoring JMS Servers 7-48
Monitoring and Managing Destinations 7-49
Quiz 7-50
Summary 7-52
8 Managing Transactions
Objectives 8-2
Road Map 8-3
What Is a Transaction? 8-4
ACID Properties of a Transaction 8-5
Transaction Management 8-6
Transferring Without Transactions 8-7
Successful Transfer with Transactions 8-8
Unsuccessful Transfer with Transactions 8-9
Types of Transactions 8-10
The Two-Phase Commit Protocol 8-12
Extended Architecture Protocol 8-13
Transaction and Resource Managers 8-14
Successful Two-Phase Commit 8-16
Unsuccessful Two-Phase Commit 8-17
Java Transaction API (JTA) 8-18
Configuring Transactions 8-19
Configuring the Transaction Log 8-20
JTA Configuration Options 8-23
Creating XA Resources 8-27
Creating Non-XA Resources 8-28
Logging Last Resource 8-30
Transacted Messaging 8-31
Inter-Domain Transactions 8-32
Enabling Trust Among Different Domains 8-34
Monitoring Transactions 8-35
xii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Monitoring Transactions by Resource 8-37
Viewing Transaction Statistics for XA Resources 8-38
Summary 8-40
Oracle University and African Legend Indigo (PTY) LTD use only
Architecture Goals 9-4
Security Architecture 9-5
Process Architecture 9-6
Security Services 9-7
Authentication Providers 9-8
Authorization Providers 9-10
Confidentiality 9-12
Credential Mapping 9-13
Auditing 9-14
Road Map 9-15
Security Realms 9-16
What Is LDAP? 9-17
Embedded LDAP Server 9-18
Configuring Embedded LDAP 9-19
Connecting Using an External LDAP Browser 9-21
Users and Groups 9-22
Configuring New Users 9-23
Groups 9-24
Configuring New Groups 9-25
Adding Groups to Users 9-26
Roles 9-27
Configuring New Roles 9-29
Migrating Security Data 9-30
Exporting the WLS Default Authenticator Provider 9-31
Importing into a Different Domain 9-32
Demonstration 9-33
Road Map 9-34
J2EE Declarative Security 9-35
Using Deployment Descriptors 9-36
Protecting Web Applications 9-37
Defining Security Roles 9-38
Determining Protected Resources 9-39
Mapping Roles to Resources 9-40
Mapping Roles to Users in Realms 9-42
xiii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Setup Authentication 9-43
Authentication Examples 9-44
Policies and Roles 9-45
Defining Policies and Roles for Web Resources 9-47
Defining Policies and Roles for Other Resources 9-48
Road Map 9-50
What Is SSL? 9-51
Oracle University and African Legend Indigo (PTY) LTD use only
Trust and Identity 9-52
Using an SSL Connection 9-53
Enabling Secure Communication 9-55
Oracle WebLogic Server SSL Requirements 9-57
keytool Utility 9-58
Obtaining a Digital Certificate: keytool Examples 9-59
Configuring SSL for an Oracle WebLogic Server 9-61
Configuring Keystores 9-62
Road Map 9-63
Protecting Against Attacks 9-64
Man-in-the-Middle Attacks 9-65
Man-in-the-Middle Countermeasures 9-66
Configuring Hostname Verifier 9-68
Denial of Service Attacks 9-69
DoS Countermeasures 9-70
Filtering Network Connections 9-71
Connection Filter 9-72
Consuming WLS Resources 9-73
Large Buffer Attacks 9-74
Connection Starvation 9-76
User Lockout 9-78
Configuring User Lockout 9-79
Unlocking Users 9-80
Protecting the Administration Console 9-81
Summary 9-83
10 Advanced Deployment
Objectives 10-2
Road Map 10-3
What Is a Deployment Plan? 10-4
Deployment Plans 10-5
Deployment Plan: Advantages 10-6
Configuring an Application for Multiple Deployment Environments 10-7
Sample Deployment Plan 10-9
xiv
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Creating a Deployment Plan 10-10
Creating a New Deployment Plan 10-12
weblogic.PlanGenerator 10-13
Using the Administration Console to Generate a Deployment Plan 10-14
Using an Existing Deployment Plan to Configure an Application 10-15
Using an Existing Deployment Plan 10-17
Generic File Loading Overrides 10-18
Oracle University and African Legend Indigo (PTY) LTD use only
Directory Structure for Easier Production Deployment 10-19
Sanity Checking in Production Without Disruption to Clients 10-21
Road Map 10-22
Staged Deployment 10-23
Road Map 10-24
Production Redeployment 10-25
Application Availability 10-27
WebLogic Production Redeployment 10-28
Production Redeployment 10-29
Advantages of Production Redeployment 10-31
Requirements and Restrictions for Production Redeployment 10-32
Redeploying a New Application Version 10-34
Redeploying Versus Distributing 10-35
Distributing a New Version of the Production Application 10-36
Distributing a New Application Version 10-38
Production Redeployment 10-39
Quiz 10-41
Summary 10-44
11 Introduction to Clustering
Objectives 11-2
Road Map 11-3
Definition: Clustering 11-4
What Is a Cluster? 11-5
Benefits of Clustering 11-7
Key Capabilities 11-9
Cluster Architecture 11-11
Deciding on a Cluster Architecture 11-12
Basic Cluster Architecture 11-13
Multitier Cluster Architecture 11-15
Basic Cluster Architecture: Advantages and Disadvantages 11-16
Multitier Advantages and Disadvantages 11-18
Proxy Servers 11-20
Basic Cluster Proxy Architecture 11-21
xv
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Multitier Cluster Proxy Architecture 11-22
WLS HttpClusterServlet 11-23
WLS Plug-Ins 11-24
Proxy Plug-In Versus Load Balancer 11-27
Architecture Recommendations 11-28
Road Map 11-29
Cluster in Networks 11-30
Oracle University and African Legend Indigo (PTY) LTD use only
Local Area Networks 11-31
Metropolitan Area Networks 11-32
Wide Area Networks 11-33
Road Map 11-34
Server Communication in a Cluster 11-35
Cluster Communication 11-37
Detecting a Failure 11-39
One-to-Many Communications 11-40
Peer-to-Peer Communications 11-42
Multitier Communications 11-43
Communication in a WAN 11-44
Summary 11-45
12 Configuring a Cluster
Objectives 12-2
Road Map 12-3
Preparing Your Environment 12-4
Cluster Architecture 12-5
Network and Security Topology 12-6
Security Options for Cluster Architectures 12-8
Hardware 12-9
Clustering on One Piece of Hardware 12-10
Names and Addresses 12-11
Cluster Address 12-12
Road Map 12-13
Configuration Options 12-14
Creating a Cluster 12-15
Adding Cluster Members: Option 1 12-16
Adding Cluster Members: Option 2 12-17
Creating a Cluster by Using the Administration Console 12-18
Configuring Cluster Communication 12-21
Adding Servers 12-22
Creating a Cluster with the Configuration Wizard 12-24
Clusters and the Configuration Wizard 12-25
xvi
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Using the Cluster MBean 12-26
Clusters and WLST 12-27
Starting Servers in a Cluster 12-28
Road Map 12-30
High Availability for HTTP Clients 12-31
WebLogic Proxy Servers 12-33
Creating the WebLogic Proxy Server with the Configuration Wizard 12-34
Oracle University and African Legend Indigo (PTY) LTD use only
Creating the WebLogic Proxy Server Manually 12-35
Configuring HttpClusterServlet 12-36
Specifying Initial Parameters 12-37
Servlet Mapping 12-38
HttpClusterServlet Initialization Parameters 12-39
Web Server Plug-Ins 12-41
Installing the Apache Plug-In 12-42
Configuring the Apache Plug-In 12-43
General Plug-In Parameters 12-48
Apache Plug-In and SSL 12-49
Configuring Apache Plug-In SSL 12-50
Quiz 12-51
Summary 12-54
13 Managing Clusters
Objectives 13-2
Road Map 13-3
Packaging Applications 13-4
Two-Phase Deployment 13-5
Deploying Applications to a Cluster 13-6
Production Redeployment in a Cluster 13-7
Deploying Applications to a Cluster 13-8
Road Map 13-11
HTTP Session Failover 13-12
HTTP Session State Replication 13-13
Machines 13-14
Replication Groups 13-15
Configuring Replication Groups 13-17
Secondary Ranking 13-18
In-Memory Replication 13-19
In-Memory Replication and Proxy Servers 13-20
In-Memory Replication: Example 13-21
In-Memory Replication 13-22
Failover with Load balancer 13-24
xvii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Requirements for In-Memory Replication 13-25
Configuring In-Memory Replication 13-26
JDBC Replication 13-28
Persistent JDBC Replication 13-29
Configuring JDBC Replication 13-30
JDBC Persistent Table Configuration 13-31
File Replication 13-33
Oracle University and African Legend Indigo (PTY) LTD use only
File Persistence 13-34
Configuring File Replication 13-35
Cross-Cluster Replication 13-37
MAN and WAN Replication 13-38
Configuring Cross-Cluster Replication 13-39
State Management Best Practices 13-40
Road Map 13-41
Server Version 13-42
Multicast 13-43
Test Multicast: Example 13-44
CLASSPATH 13-46
Garbage Collection 13-47
Quiz 13-48
Summary 13-51
xviii
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
15 Clustering Services
Objectives 15-2
Road Map 15-3
Services That Can Be Clustered 15-4
Service Failover 15-6
Service-Level Migration 15-7
Oracle University and African Legend Indigo (PTY) LTD use only
Server-Level Migration 15-9
Road Map 15-10
JNDI Clustering Support 15-11
Clusterwide JNDI Service 15-13
JNDI Naming Conflicts 15-14
Road Map 15-15
JDBC Clustering 15-16
Clustering Versus Multi Data Sources 15-17
Targeting a DataSource to a Cluster 15-18
Road Map 15-20
Transaction Recovery After Failure 15-21
Transaction Recovery Service 15-22
Recovering JTA Without a Cluster 15-24
Recovering Transactions in a Cluster 15-25
Recovering Transactions for a Failed Clustered Server (Manually) 15-26
Migrating JTA 15-28
Configuring JTA Service Migration 15-29
Manually Migrating the JTA to Another Server in a Cluster 15-30
Configuring Automatic Migration of the JTA Transaction 15-31
Configuring Automatic Migration of the JTA Transaction 15-33
Automatic Failback of the Transaction Recovery Service Back
to the Original Server 15-34
JTA Migration Limitations 15-35
Road Map 15-37
JMS Clustering Support 15-38
JMS Connection Factory Clustering 15-39
Distributed Destination 15-41
Distributed Queues 15-42
Distributed Topics 15-43
Creating a Distributed Topic 15-44
Distributed Destination Threshold and Quota 15-47
Server Affinity 15-48
Zero Consumers 15-49
Load Balancing 15-51
xix
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Location Transparency 15-52
Failover 15-53
JMS Server Migration 15-54
Performing Migration 15-55
JMS Migratable Targets 15-56
Migrating JMS Data 15-58
Migration Configuration 15-59
Oracle University and African Legend Indigo (PTY) LTD use only
Configuring a Migratable Target 15-60
Targeting JMS Server to a Migratable Target 15-61
Migrating Services 15-62
Summary 15-63
xx
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Using a Proxy Server C-23
Guardian from the Command Line C-24
Summary C-25
Index
Oracle University and African Legend Indigo (PTY) LTD use only
xxi
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle University and African Legend Indigo (PTY) LTD use only
Managing Clusters
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Objectives
Oracle University and African Legend Indigo (PTY) LTD use only
Manage session state in a cluster
Troubleshoot a cluster
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 2
Road Map
Oracle University and African Legend Indigo (PTY) LTD use only
Session Management
Troubleshooting a Cluster
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 3
Packaging Applications
Oracle University and African Legend Indigo (PTY) LTD use only
cluster of Managed Servers as .war, .ear, or .jar file
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 4
Two-Phase Deployment
Oracle University and African Legend Indigo (PTY) LTD use only
phases:
Phase 1: Application components and modules are
distributed to the server.
Phase 2: The application is deployed if phase 1 is successful
and client access is permitted.
This ensures that an application is available and active on
each node before clients can access it.
Two-Phase Deployment
WebLogic clusters use the concept of two-phase deployment. Applications are deployed in two
phases:
Phase 1: During the first phase of deployment, application components are distributed to
the target server instances and the planned deployment is validated to ensure that the
application components are successfully deployed. During this phase, user requests to the
application being deployed are not allowed.
Phase 2: After the application components are distributed to targets and validated, they are
fully deployed on the target server instances, and the deployed application is made
available to the clients.
If a failure occurs during this process, deployment to that server instance is canceled. However,
a failure on one Managed Server does not prevent successful deployment on other clustered
server instances.
If a cluster member fails to deploy an application, it fails at startup in order to ensure cluster
consistency, because any failure of a cluster-deployed application on a Managed Server causes
the Managed Server to abort its startup.
You would want to avoid situations in which an application is successfully deployed on one
node and not on the other; otherwise the clients would access partially deployed applications.
Two-phase deployment prevents this.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 5
Deploying Applications to a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
application is still deployed to other nodes in the cluster.
WebLogic allows partial deployment of applications to a
partitioned server.
Session replication for deployed applications may fail if a
node is partitioned at the time of deployment.
Avoid this by using the enforceClusterConstraints tag
with weblogic.Deployer.
Or select the Enable Cluster Constraints check box in the
console.
Do not change cluster membership while deploying
applications to the cluster.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 6
Production Redeployment in a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
Therefore, different servers may be running different
versions for a period of time.
Application (Version 1)
Application (Version 2)
Deployed Server A
Application
(Version 2)
Application (Version 1)
Application (Version 2)
Server B
Cluster
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 7
Deploying Applications to a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
Targeting a cluster
instead of a single server
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 9
Deploying Applications to a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 10
Road Map
Oracle University and African Legend Indigo (PTY) LTD use only
Replication Groups
In-Memory Replication
Persistent Replication
Replication Within a MAN or WAN
Troubleshooting a Cluster
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 11
HTTP Session Failover
Oracle University and African Legend Indigo (PTY) LTD use only
cluster, its session information is lost.
Oracle WebLogic Server supports several Session
Replication strategies to recover sessions from failed
servers:
In-memory replication
JDBC replication
File replication
Replication is configured for each Web application within
its weblogic.xml file.
Similar options are available for stateful EJB applications.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 12
HTTP Session State Replication
Oracle University and African Legend Indigo (PTY) LTD use only
ensure that the session state is persistent, by configuring:
In-memory replication
JDBC replication
File system replication
You must also access the cluster via a collection of Web
servers with identically configured proxy plug-ins or load-
balancing hardware.
Session persistence is configured using the <session-
descriptor> element in the weblogic.xml deployment
descriptor file.
Each persistence method has its own set of configurable
parameters.
Oracle University and African Legend Indigo (PTY) LTD use only
Machine definition is one of the factors that WebLogic
takes into account when it chooses another server as its
backup for session information.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 14
Replication Groups
Oracle University and African Legend Indigo (PTY) LTD use only
objects using replication groups.
WLS attempts to:
Send backup objects to a preferred secondary replication
group, if it is configured
Send backup objects to a different machine
Avoid sending backup objects to servers in the same
replication group
Replication Groups
By default, Oracle WebLogic Server attempts to create replicas of certain services on a machine
other than the one that hosts the primary service.
Oracle WebLogic Server enables you to further control where the secondary states are placed by
using replication groups. A replication group is a preferred list of clustered instances to use for
storing session state replicas. When you configure a server instance that participates in a cluster,
you can assign the server instance membership in a replication group. You can also assign a
preferred secondary replication group to be considered for replicas of the primary HTTP session
states that reside on the server.
When a client attaches to a cluster and creates an instance of a service that is automatically
replicated in Oracle WebLogic Server (such as an HttpSession or a stateful session EJB),
the Oracle WebLogic Server instance that hosts the primary object ranks other servers in the
cluster to determine which server hosts the secondary. Server ranks are assigned using the
servers locality (whether it resides on the same machine as the primary) and participation in a
replication group.
An administrator can configure replication groups to operate such that secondary objects for
replicated services always reside on different hardware. In earlier versions of Oracle WebLogic
Server, the cluster would ensure that a replicated service exists on a different machine. However,
because one computer can host multiple IP addresses and thus multiple machines, a replicated
instance might not be protected from a general hardware failure. The creation of replication
THESE groups solves this
eKIT MATERIALS issue.
ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 15
Replication Groups
Replication groups:
Represent a subset of servers within a cluster
Help to determine the placement of secondary sessions
Oracle University and African Legend Indigo (PTY) LTD use only
(avoid replicating within the same room, for example)
Are not explicitly defined in the console-like machines and
clusters
WLS attempts to:
Send secondary sessions to servers that are assigned to the
preferred secondary replication group of the primary server
Avoid sending secondary sessions to servers that are
assigned to the same replication group as the primary server
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 16
Configuring Replication Groups
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 17
Secondary Ranking
Oracle University and African Legend Indigo (PTY) LTD use only
Replication group assignments
Secondary Ranking
When a client attaches to a server in the cluster and creates a primary session state, the server
that hosts the primary state ranks other servers in the cluster to determine which server should
host the secondary. Server ranks are assigned using a combination of the servers location
(whether or not it resides on the same machine as the primary server) and its participation in the
primary servers preferred replication group. Using these rules, the primary Oracle WebLogic
Server ranks other members of the cluster and chooses the highest-ranked server to host the
secondary session state.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 18
In-Memory Replication
Oracle University and African Legend Indigo (PTY) LTD use only
Every update to the primary session is automatically
replicated on the secondary server, either:
Synchronously (default)
Asynchronously (batch)
Cluster
Primary Secondary
In-Memory Replication
Using in-memory replication, Oracle WebLogic Server copies a session state from one server
instance to another. The primary server creates a primary session state on the server to which the
client first connects and a secondary replica on another Oracle WebLogic Server instance in the
cluster. The replica is kept up-to-date so that it can be used if the server that hosts the Web
application fails.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 19
In-Memory Replication and Proxy Servers
Oracle University and African Legend Indigo (PTY) LTD use only
directed to the same primary server by the proxy.
WLS Web server plug-ins support both cookie values
There is one cookie with a value that contains the JVMID of
the primary and secondary servers
Network hardware that does not support the secondary
cookie still functions effectively:
The server that is being failed over to automatically assumes
the role of the primary server.
Primary = A Primary = B
3 Secondary 4 Secondary = C
Oracle University and African Legend Indigo (PTY) LTD use only
=B
Client Client
Proxy Proxy
1 3
2 2
1
Primary Secondary Primary Secondary
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 21
In-Memory Replication
Oracle University and African Legend Indigo (PTY) LTD use only
Session objects exist on only two
Server 2
servers.
Secondary
Secondary:
The server is determined by the
replication group and machine Primary
definition.
The object is created immediately Server 3
after the primary object is created.
Secondary
Primary failure makes the backup
object the primary object. Cluster
In-Memory Replication
Web application components, such as servlets and JSPs, maintain data on behalf of clients using
an HttpSession instance that is available on a per-client basis.
To provide high availability of Web applications, shared access to one HttpSession object
must be provided. HttpSession objects can be replicated within Oracle WebLogic Server by
storing their data with in-memory replication, file system persistence, or in a database.
With in-memory replication, replicated objects are not accessible on all server instances in the
cluster. Rather, when an object is created, it is called the primary object. On another server
instance, a backup object is created. In the event of a failure of the primary object, the backup
object is promoted as the primary object. If a failover occurs, another backup object is created.
This is optimal because replication of object data must occur only between the primary and
backup objects (rather than the entire cluster).
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 22
In-Memory Replication
Server 1 Server 1
Primary Primary
Oracle University and African Legend Indigo (PTY) LTD use only
Server 2 Server 2
Secondary Primary
Server 3 Server 3
Secondary
Cluster Cluster
Before After
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 23
Failover with Load balancer
domain
machine 1
server A
Oracle University and African Legend Indigo (PTY) LTD use only
servlet
primary
state
Load
Balancer
machine 2
server B server C
servlet servlet
client primary secondary
state state
Firewall
Cluster
Cookie
Primary: server A
Secondary: server B
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 24
Requirements for In-Memory Replication
Oracle University and African Legend Indigo (PTY) LTD use only
clients must access the cluster using either:
The load-balancing hardware (WLS aware)
A collection of Web servers, or a single Web server, with
WebLogic proxy plug-ins (configured identically)
Oracle WebLogic Server configured with
HTTPClusterServlet
Oracle University and African Legend Indigo (PTY) LTD use only
deployment descriptor; the options include:
replicated
replicated_if_clustered
async-replication-across-cluster
...
<session-descriptor>
<persistent-store-type>replicated</persistent-store-type>
</session-descriptor>
...
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 26
Configuring In-Memory Replication (continued)
Cookie-based session persistence provides a stateless solution for session persistence by storing
all session data in a cookie in the users browser. Cookie-based session persistence is most
useful when you do not need to store large amounts of data in the session. Cookie-based session
persistence can simplify management of your Oracle WebLogic Server installation because
clustering failover logic is not required. Because the session is stored in the browser, and not on
the server, you can start and stop Oracle WebLogic Servers without losing sessions.
Note that cookies can persist only string data and that there is no security on data because
Oracle University and African Legend Indigo (PTY) LTD use only
cookies are passed to and from the browser in clear text.
In the <session-param> element of weblogic.xml, set the PersistentStoreType
attribute to cookie. Optionally, set a name for the cookie using the
PersistentStoreCookieName attribute. The default is WLCOOKIE.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 27
JDBC Replication
Oracle University and African Legend Indigo (PTY) LTD use only
available in the documentation.
All members of the cluster have access to any clients
session for failover purposes (no primary or secondary).
Cluster
Server
Database
Proxy Server
Server
JDBC Replication
With persistent Java Database Connectivity (JDBC) replication, a database is configured for
storing HttpSession objects. After the database is configured, each server instance in a
cluster uses an identical connection pool to share access to the database.
Whenever a Web application creates or uses a session object, the WebLogic Web container
stores the session data persistently in the database. When a subsequent client request enters the
cluster, any server in the cluster can handle the request. Each server in the cluster has identical
access to the persistent store where it can look up the information needed to satisfy the clients
request. This technique provides good failover capability because any server in the cluster can
resolve a clients request, but there is a significant performance reduction due to the many
database synchronizations required in a large Web-based system.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 28
Persistent JDBC Replication
Cluster
All server instances Common access
obtained via
have access to all Server 1 identical
Servlet1
sessions. connection pools
Oracle University and African Legend Indigo (PTY) LTD use only
Subsequent requests Servlet2
from the same client
can be handled by any Server 2
server. Servlet1
Great failover capability
Servlet2
Significant performance
reduction Database
Server 3
Changing session
Servlet1
objects causes (slow) HttpSession objects
database Servlet2 stored in database
synchronization.
Oracle University and African Legend Indigo (PTY) LTD use only
3. Configure JDBC session persistence in the
weblogic.xml deployment descriptor.
...
<session-descriptor>
<persistent-store-type>jdbc</persistent-store-type>
<persistent-store-pool>MyDataSource</persistent-store-pool>
</session-descriptor>
...
Oracle University and African Legend Indigo (PTY) LTD use only
Column Head Column Data Type
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 32
File Replication
Oracle University and African Legend Indigo (PTY) LTD use only
Cluster
Server
File System
Proxy Server
Server
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 33
File Persistence
Oracle University and African Legend Indigo (PTY) LTD use only
The file must have the appropriate access privileges
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 34
Configuring File Replication
Oracle University and African Legend Indigo (PTY) LTD use only
3. Configure file session persistence in the weblogic.xml
deployment descriptor.
...
<session-descriptor>
<persistent-store-type>file</persistent-store-type>
<persistent-store-dir>/mnt/wls_share</persistent-store-dir>
</session-descriptor>
...
Oracle University and African Legend Indigo (PTY) LTD use only
the data as cookies are passed to and from the browser in clear text.
To set up cookie-based session persistence, perform the following:
In the <session-param> element of weblogic.xml, set the
PersistentStoreType attribute to cookie.
Optionally, set a name for the cookie using the PersistentStoreCookieName
attribute. The default is WLCOOKIE.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 36
Cross-Cluster Replication
Oracle University and African Legend Indigo (PTY) LTD use only
geographically.
Configure a global proxy to direct clients back to the same
cluster (cluster affinity).
Configure a specific network channel for cross-cluster
communication.
Local
ClusterA
Proxy
Global Replication
Client Channel
Proxy
Local
ClusterB
Proxy
Cross-Cluster Replication
In addition to providing HTTP session state replication across servers within a cluster, Oracle
WebLogic Server provides the ability to replicate HTTP session state across multiple clusters.
This improves high availability and fault tolerance by allowing clusters to be spread across
multiple geographic regions, power grids, and Internet service providers.
In a network configuration that supports cross-cluster replication, the global load balancer is
responsible for balancing HTTP requests across clusters. When a request comes in, the global
load balancer determines which cluster to send it to based on the current number of requests
being handled by each cluster. Then the request is passed to the local load balancer for the
chosen cluster. The local load balancer is responsible for balancing HTTP requests across
servers within the cluster.
When a server within a cluster fails, the local load balancer is responsible for transferring the
request to other servers within the cluster. When the entire cluster fails, the local load balancer
returns the HTTP requests to the global load balancer. The global load balancer then redirects
this request to the other local load balancer.
To replicate session data from one cluster to another, a replication channel must be configured to
communicate session state information from the primary to the secondary cluster. The specific
method used to replicate session information depends on the type of cross-cluster replication that
you have configured: MAN or WAN. You must ensure that the replication channel is created on
all cluster members and has the same name. The channel should be used only for replication.
THESE Other types of network
eKIT MATERIALS ARE FORtraffic
YOURshould
USE INbe directed
THIS to otherONLY.
CLASSROOM network channels.
COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 37
MAN and WAN Replication
Oracle University and African Legend Indigo (PTY) LTD use only
Synchronous in-memory replication to secondary server
within another cluster
Wide Area Network (WAN)
High latency network
Synchronous in-memory replication to secondary server
within the same cluster
Asynchronous JDBC replication for availability in remote
clusters
Oracle University and African Legend Indigo (PTY) LTD use only
1
Location of servers
in remote cluster
Oracle University and African Legend Indigo (PTY) LTD use only
Choose the most appropriate replication strategy
depending on the application needs and architecture.
Use the ServerDebugConfig MBean to track session
replication problems.
Ensure that objects placed in replicated sessions are
serializable.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 40
Road Map
Oracle University and African Legend Indigo (PTY) LTD use only
Server Version
Multicast
CLASSPATH
Thread Count
Garbage Collection
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 41
Server Version
Oracle University and African Legend Indigo (PTY) LTD use only
service packs.
The Administration Server should also have the same
major version number.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 42
Multicast
Oracle University and African Legend Indigo (PTY) LTD use only
utils.MulticastTest utility.
Multicast
Several problems can occur with IP multicast: Oracle WebLogic Server might be unable to
create a socket, read from a socket, or send to a socket. These communication errors are
typically caused by an incorrect or bad multicast address.
Serialization errors can also indicate an incorrectly configured multicast. Each operating system
has specific configuration requirements for configuring multicast; to correct these problems,
check your operating system documentation.
The MulticastTest helps you to debug multicast problems when configuring an Oracle
WebLogic Server cluster. The utility sends out multicast packets and returns information about
how the multicast is working on your network.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 43
Test Multicast: Example
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
Oracle University and African Legend Indigo (PTY) LTD use only
default is 237.0.0.1.)
-p portnumber (optional): The multicast port on which all the servers in the cluster are
communicating. (The multicast port is the same as the listen port that is set for Oracle
WebLogic Server, which defaults to 7001 if unset.)
-t timeout (optional): Idle timeout, in seconds, if no multicast messages are received.
If unset, the default is 600 seconds (10 minutes). If a timeout is exceeded, a positive
confirmation of the timeout is sent to stdout.
-s send (optional): Interval, in seconds, between sends. If unset, the default is 2
seconds. A positive confirmation of each message that is sent out is sent to stdout.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 45
CLASSPATH
Oracle University and African Legend Indigo (PTY) LTD use only
and commEnv scripts when the
startManagedWebLogic file is run.
CLASSPATH
Make sure that the value of CLASSPATH is the same on all Managed Servers in the cluster.
CLASSPATH is set by the setDomainEnv, setWLSEnv, and commEnv scripts, which run
when you run startManagedWebLogic to start the Managed Servers.
By default, the value for CLASSPATH (as represented on Windows systems) is set as shown
below:
set WL_HOME=C:\oracle\wlserver_10.3
set JAVA_HOME=C:\oracle\jdk160
.
.
set CLASSPATH=%JAVA_HOME%\lib\tools.jar;
%WL_HOME%\server\lib\weblogic_sp.jar;
%WL_HOME%\server\lib\weblogic.jar;
%CLASSPATH%
If you change the value of CLASSPATH on one Managed Server, or change how the three
scripts sets the CLASSPATH, you must change it on all Managed Servers in the cluster.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 46
Garbage Collection
Oracle University and African Legend Indigo (PTY) LTD use only
able to make the heartbeat signals.
Heap allocation can be tuned to adjust the length of the
garbage collection.
This can be changed using the Xms and Xmx parameters
in the server startup script.
Garbage Collection
If you experience problems in the cluster, you should also check the garbage collection on the
Managed Servers. If garbage collection takes too long, the servers will not be able to make the
frequent heartbeat signals that tell other cluster members that they are running and available.
If garbage collection (either first or second generation) takes 10 or more seconds, you need to
tune heap allocation (the msmx parameter) on your system.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 47
Quiz
Select all valid values for the persistent store type element in
weblogic.xml?
1. file
Oracle University and African Legend Indigo (PTY) LTD use only
2. replicated
3. unicast
4. async-replication-across-cluster
5. jdbc
6. async-wan
Answer: 1, 2, 4, 5
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 48
Quiz
Oracle University and African Legend Indigo (PTY) LTD use only
1. Web Service
2. Replication Group
3. Data Source
4. Node Manager
5. Machine
Answer: 2, 5
Remember that clustered servers use machine and replication group boundaries to select
destinations for replicated sessions.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 49
Quiz
Oracle University and African Legend Indigo (PTY) LTD use only
2. Secondary
3. Session
4. Schema
5. Primary
6. Synchronous
Answer: 4
By default, in-memory replication involves both the synchronous creation of secondary copies of
primary sessions, and the tracking of these primary and secondary copies with cookies.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 50
Summary
Oracle University and African Legend Indigo (PTY) LTD use only
Troubleshoot common issues in a cluster
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 13 - 51
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle University and African Legend Indigo (PTY) LTD use only
Clustering EJB Objects
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Objectives
Oracle University and African Legend Indigo (PTY) LTD use only
Configure clusterable EJBs
Describe EJB clustering best practices
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 2
Road Map
Oracle University and African Legend Indigo (PTY) LTD use only
Clustering Session EJBs
Clustering Entity EJBs
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 3
Oracle WebLogic Server EJB
Clustering Capabilities
Oracle WebLogic Server allows load balancing and failover
of EJBs.
EJB clustering is transparent to:
Oracle University and African Legend Indigo (PTY) LTD use only
The Bean developer
The client application developer
WLS EJBs can be clustered by configuring them in the
weblogic-ejb-jar.xml file.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 4
High Availability for EJBs
Oracle University and African Legend Indigo (PTY) LTD use only
You can enable and configure clustering for each EJB
using the application deployment descriptor weblogic-
ejb-jar.xml. Cluster
Server
EJB
Client Server
Stub EJB
Server
EJB
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 6
Levels of Clustering for EJB
Oracle University and African Legend Indigo (PTY) LTD use only
Is used for calling the business methods
Failover:
For a home skeleton, it determines how method calls are
routed in a cluster.
For a remote skeleton, it determines whether to re-execute a
business operation on a different server.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 7
Load-Balancing Clustered EJB Objects
Oracle University and African Legend Indigo (PTY) LTD use only
Weight-based
Random
Parameter-based routing (programmatic)
Server affinity minimizes the number of IP sockets that are
opened between the clients and servers in a cluster.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 8
Load Balancing Clustered EJB Objects (continued)
Random: This algorithm chooses the next replica at random. This tends to distribute calls
evenly among the replicas. It is recommended only in a cluster in which each server has
the same power and hosts the same services. The advantages are that it is simple and
relatively cheap. The primary disadvantage is that there is a small cost to generating a
random number on every request, and there is a probability that the load will not be evenly
balanced over a small number of runs.
Parameter-Based Routing: It is also possible to have a finer grain of control over load
balancing. Any clustered object can be assigned a CallRouter. This is a class that is called
Oracle University and African Legend Indigo (PTY) LTD use only
before each invocation with the parameters of the call. The CallRouter is free to examine
the parameters and return the name of the server to which the call should be routed. This is
usually handled by the developer, so we will not cover it here.
Server affinity minimizes the number of IP sockets opened between the external Java clients and
the server instances in a cluster. This is accomplished by causing method calls on objects to
stick to an existing connection, instead of being load balanced among the available server
instances. With server affinity algorithms, the less costly server-to-server connections are still
load balanced according to the configured load balancing algorithm; load balancing is disabled
only for external client connections.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 9
Road Map
Oracle University and African Legend Indigo (PTY) LTD use only
Stateful Session EJBs
Clustering Entity EJBs
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 10
Stateless Session Bean: Load
Balancing and Failover
Stateless session beans of the same type are identical and
they hold no state:
Beans in different servers are still the same.
Oracle University and African Legend Indigo (PTY) LTD use only
Separate method invocations can be sent to different
servers.
This does not apply to the stateless session bean methods
that fail during execution.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 11
Configuring EJB Clustering
2
1
Oracle University and African Legend Indigo (PTY) LTD use only
Default for all EJBs, if
not overridden
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 12
Configuring EJB Clustering
weblogic-ejb-jar.xml:
...
Oracle University and African Legend Indigo (PTY) LTD use only
<stateless-clustering>
<stateless-bean-is-clusterable>True
</stateless-bean-is-clusterable>
<stateless-bean-load-algorithm>random
</stateless-bean-load-algorithm>
...
</stateless-clustering>
...
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 13
Configuring Clusterable Stateless Session EJBs
Oracle University and African Legend Indigo (PTY) LTD use only
<!- Other Tags As Appropriate Here -->
<stateless-session-descriptor>
<!- Other Tags As Appropriate Here -->
<stateless-clustering>
<stateless-bean-is-clusterable>True</stateless-bean-is-
clusterable>
<stateless-bean-load-algorithm>random</stateless-bean-load-
algorithm>
<stateless-bean-call-router-class-
name>beanRouter</stateless-bean-call-router-class-name>
<stateless-bean-methods-are-idempotent>True</stateless-
bean-methods-are-idempotent>
</stateless-clustering>
Oracle University and African Legend Indigo (PTY) LTD use only
<!- LAST TAG inside <weblogic-ejb-jar> -->
<idempotent-methods>
<method> <!- can be repeated -->
<ejb-name>exampleSession</ejb-name>
<method-intf>Remote</method-intf>
<method-name>processUser</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</method>
</idempotent-methods>
</weblogic-ejb-jar>
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 15
Stateful Session Beans
Oracle University and African Legend Indigo (PTY) LTD use only
A stateful session EJB is pinned to
the server that it is created on. Its
remote stub must also be pinned to the
same server.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 16
Configuring Clusterable Stateful Session EJBs
Oracle University and African Legend Indigo (PTY) LTD use only
<!- Other Tags As Appropriate Here -->
<stateful-session-descriptor>
<!- Other Tags As Appropriate Here -->
<stateful-session-clustering>
<home-is-clusterable> true
</home-is-clusterable>
<home-load-algorithm> random
</home-load-algorithm>
<home-call-router-class-name> common.QARouter
</home-call-router-class-name>
<replication-type> InMemory
</replication-type>
</stateful-session-clustering>
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 17
Road Map
Oracle University and African Legend Indigo (PTY) LTD use only
Cluster Aware Home Stubs
Load Balancing
Best Practices
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 18
Read-Write Versus Read-Only
Oracle University and African Legend Indigo (PTY) LTD use only
For read-write entity beans, load balancing and failover
occur only at the home level.
For read-only entity beans, the replica-aware stub:
Load balances on every call
Does not automatically fail over in the event of a recoverable
call failure
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 19
Entity Bean Cluster-Aware Home Stubs
Oracle University and African Legend Indigo (PTY) LTD use only
The home-is-clusterable deployment element in the
weblogic-ejb-jar.xml file determines whether a
home stub is cluster-aware.
An example of setting an entity EJB home stub as cluster-
aware:
<entity-clustering>
<home-is-clusterable>True</home-is-clusterable>
<home-load-algorithm>random</home-load-algorithm>
<home-call-router-class-name>beanRouter
</home-call-router-class-name>
</entity-clustering>
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 20
EJB Best Practices
Oracle University and African Legend Indigo (PTY) LTD use only
cluster.
Mark bean methods that can be called multiple times with
impunity, as idempotent in their deployment descriptors.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 21
Summary
Oracle University and African Legend Indigo (PTY) LTD use only
Configure clusterable entity EJBs
Describe EJB clustering best practices
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 14 - 22
Oracle University and African Legend Indigo (PTY) LTD use only
Clustering Services
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Objectives
Oracle University and African Legend Indigo (PTY) LTD use only
Describe JNDI clustering
Describe JDBC clustering
Migrate a JMS server
Migrate transactions
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 2
Road Map
Clustering Services
Clusterable Services
Service Level Migration
Oracle University and African Legend Indigo (PTY) LTD use only
Server Level Migration
JNDI
JDBC
Transactions
JMS
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 3
Services That Can Be Clustered
Oracle University and African Legend Indigo (PTY) LTD use only
Web applications
EJB and RMI objects
JNDI tree
Oracle WebLogic Server provides limited clustering
services for:
JDBC connections
JMS destinations
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 5
Service Failover
Oracle University and African Legend Indigo (PTY) LTD use only
cluster.
They are pinned services.
There are two ways to handle JMS and JTA failover:
Service-level migration
Server-level migration
Service Failover
In an Oracle WebLogic Server cluster, most services are deployed homogeneously on all the
server instances in the cluster, thus enabling transparent failover from one server to another. In
contrast, pinned services such as Java Message Service (JMS) and the Java Transaction API
(JTA) transaction recovery system are targeted at individual server instances within a cluster
for these services, Oracle WebLogic Server supports failure recovery through migration, as
opposed to failover.
Migration in Oracle WebLogic Server is the process of moving a clustered Oracle WebLogic
Server instance or a component, which is running on a clustered instance, elsewhere in the event
of failure. In the case of whole server migration, the server instance is migrated to a different
physical machine upon failure. In the case of service-level migration, the services are moved to a
different server instance within the cluster.
Oracle WebLogic Server provides a feature for making JMS and the JTA transaction system
highly available: migratable servers. Migratable servers provide for both automatic and manual
migration at the server level, rather than at the service level.
When a migratable server becomes unavailable for any reasonfor example, if it hangs, loses
network connectivity, or its host machine failsmigration is automatic. Upon failure, a
migratable server is automatically restarted on the same machine if possible. If the migratable
server cannot be restarted on the machine where it failed, it is migrated to another machine. In
THESE addition, an administrator
eKIT MATERIALS can manually
ARE FOR YOUR initiate
USE IN THIS the migration
CLASSROOM ONLY. of a servereKIT
COPYING instance.
MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 6
Service-Level Migration
Oracle University and African Legend Indigo (PTY) LTD use only
The new server takes over and processes any data that is
left over when the server failed, and then takes over any
future processing.
A migratable service is accessed by clients by using a
migration-aware RMI stub.
Oracle WebLogic Server supports the automatic migration
of user-defined singleton services.
Service-Level Migration
The RMI stub keeps track of which server currently hosts the pinned service and it accordingly
directs the client requests.
In an Oracle WebLogic Server cluster, most subsystem services are hosted homogeneously on
all the server instances in the cluster, thus enabling transparent failover from one server to
another. In contrast, pinned services such as JMS-related services, the JTA Transaction
Recovery Service, and user-defined singleton services are hosted on individual server instances
within a clusterfor these services, the Oracle WebLogic Server migration framework supports
failure recovery with service migration as opposed to failover.
Service-level migration in Oracle WebLogic Server is the process of moving the pinned services
from one server instance to a different available server instance within the cluster. Service
migration is controlled by a logical migratable target, which serves as a grouping of services
that is hosted only on one physical server in a cluster. You can select a migratable target in place
of a server or cluster when targeting certain pinned services. High availability is achieved by
migrating a migratable target from one clustered server to another when a problem occurs on the
original server. You can also manually migrate a migratable target for scheduled maintenance or
you can configure the migratable target for automatic migration.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 7
Service-Level Migration (continued)
The migration framework provides tools and infrastructure for configuring and migrating
targets, and in the case of automatic service migration, it leverages the Oracle WebLogic
Servers health monitoring subsystem to monitor the health of the services that are hosted by a
migratable target.
Migratable Services
Oracle WebLogic Server supports service-level migration for JMS-related services, the JTA
Transaction Recovery Service, and user-defined singleton services. These are referred to as
Oracle University and African Legend Indigo (PTY) LTD use only
migratable services, because you can move them from one server to another within a cluster.
The following migratable services can be configured for automatic or manual migration: JMS-
related Services, JTA Transaction Recovery Service, user-defined singleton services.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 8
Server-Level Migration
Oracle University and African Legend Indigo (PTY) LTD use only
Service-level migration and server-level migration should not
be used together.
Server-level migration is:
Supported using the Java-based Node Manager. This is
supported from 9.2 MP2 and 10.x.
Supported on Windows (with the wlsifconfig.cmd script)
You can perform server-level migration both manually and
automatically.
When a migratable server fails:
The server is restarted on the same machine
If it cannot be started on the same machine, it moves to
another machine
Server-Level Migration
For UNIX and Linux systems, Oracle WebLogic Server provides a script-based version of Node
Manager. This script is based on UNIX shell scripts, but uses Secure Shell (SSH) for increased
security. SSH uses user IDbased security.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 9
Road Map
Clustering Services
JNDI
Clusterwide JNDI Server
Oracle University and African Legend Indigo (PTY) LTD use only
JNDI Naming Conflicts
JDBC
Transactions
JMS
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 10
JNDI Clustering Support
Oracle University and African Legend Indigo (PTY) LTD use only
EJBs, RMI objects
JMS connection factories
Oracle WebLogic Server replicates clusterable objects to
all the servers on a cluster, transparently.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 11
JNDI Clustering Support (continued)
Server instances in a cluster use a cluster-wide JNDI tree. A cluster-wide JNDI tree is similar to
a single server instance JNDI tree, insofar as the tree contains a list of available services. In
addition to storing the names of local services, however, the cluster-wide JNDI tree stores the
services offered by clustered objects (EJBs and RMI classes) from other server instances in the
cluster. Each Oracle WebLogic Server instance in a cluster creates and maintains a local copy of
the logical cluster-wide JNDI tree. The following sections describe how the cluster-wide JNDI
tree is maintained and how to avoid naming conflicts that can occur in a clustered environment.
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 12
Clusterwide JNDI Service
Oracle University and African Legend Indigo (PTY) LTD use only
naming tree JNDI
JNDI
server B
Cluster
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 13
JNDI Naming Conflicts
Oracle University and African Legend Indigo (PTY) LTD use only
The services are nonclustered.
In a cluster, a naming conflict can occur when the server
tries to bind a clustered object with the same name as a
nonclustered object.
The object will be bound to the JNDI locally.
Other servers will not bind the replica-aware stub.
To avoid naming conflicts:
Deploy all clusterable objects to all the servers in the cluster.
Deploy to the cluster itself, not the individual servers.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 14
Road Map
Clustering Services
JNDI
JDBC
Oracle University and African Legend Indigo (PTY) LTD use only
JDBC Clustering
Clustering Versus Multi Data Sources
Targeting a Data Source to a Cluster
Transactions
JMS
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 15
JDBC Clustering
Oracle University and African Legend Indigo (PTY) LTD use only
When you target a JDBC data source, a new instance of
the data source is created on the target.
Single server target A data source instance is created on
the server.
Cluster target A data source instance is created on all
member servers in the cluster.
Clustering your JDBC objects does not enable failover of
connections but it can ease the process of reconnection
when a connection fails.
JDBC Clustering
Multi data sources provide failover and load balancing for connection requests between two or
more data sources. Before you create a multi data source, you should create the data sources that
the multi data source will manage, and deploy them to the same targets that you want to deploy
the multi data source to. Note that the underlying databases must have some kind of data
synchronization or replication. Oracle WebLogic Server does not handle that replication.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 16
Clustering Versus Multi Data Sources
Oracle University and African Legend Indigo (PTY) LTD use only
Availability Algorithm only)
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 17
Targeting a DataSource to a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
2
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 18
Targeting a DataSource to a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 19
Road Map
Clustering Services
JNDI
JDBC
Oracle University and African Legend Indigo (PTY) LTD use only
Transactions
Transaction Recovery Service
Migrating JTA
JMS
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 20
Transaction Recovery After Failure
Oracle University and African Legend Indigo (PTY) LTD use only
Automatically attempts to recover transactions on system
startup
Owns the transaction log for a server
Parses all log files on startup for incomplete transactions and
completes them
Oracle University and African Legend Indigo (PTY) LTD use only
Maintain consistency across resources
Persist in achieving transaction resolution
Report heuristic completions
Domain
Server A App Shared Disk
TRSa TMa
Admin
Server TRS
App Persistent
Store
TRSa TMa
Server B TMb
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 22
Transaction Recovery Service (continued)
Persist in achieving transaction resolution: If a Resource Manager crashes, the
Transaction Recovery Service must eventually call commit() or rollback() for each
prepared transaction until it gets a successful return from commit() or rollback(). The
attempts to resolve a transaction can be limited by setting the AbandonTimeoutSeconds
configuration attribute.
Report heuristic completions: If a Resource Manager reports a heuristic commit or
heuristic rollback, the Transaction Recovery Service records the heuristic commit or
rollback in the server log and calls forget() if the Forget Heuristics configuration
Oracle University and African Legend Indigo (PTY) LTD use only
attribute is enabled. If the Forget Heuristics configuration attribute is not enabled, refer to
your database vendors documentation for information about resolving heuristic
completions.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 23
Recovering JTA Without a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
new server.
Set the path for the default persistent store to the path to the
data file.
Start the new server.
The TRS searches all transaction log files for incomplete
transactions.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 24
Recovering Transactions in a Cluster
Oracle University and African Legend Indigo (PTY) LTD use only
The TRS on the backup server takes ownership of the
transaction log from the crashed server.
The TRS searches all the transaction log files from the failed
server and attempts to complete in-flight transactions.
If the TRS on the backup server successfully completes all
the incomplete transactions, the server releases ownership
of the TRS.
Whole Server migration
The server is migrated in its entirety, along with the services
that it hosts.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 25
Recovering Transactions for a Failed Clustered
Server (Manually)
Manually migrate the TRS from the crashed server to another
server in the cluster by using the Administration Console or the
command-line interface:
Oracle University and African Legend Indigo (PTY) LTD use only
The TRS on the backup server takes ownership of the
transaction log from the failed server.
The TRS searches the transaction log files from the failed
server for incomplete transactions and completes them.
If the TRS on the backup server successfully completes all
the incomplete transactions from the failed server, it
releases ownership of the TRS (including the transaction
log files) for the failed server, so that the failed server can
reclaim it upon restart.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 26
Recovering Transactions for a Failed Clustered Server (Manually) (continued)
When a backup server completes transaction recovery for a server, it releases ownership of the
Transaction Recovery Service for the failed server. When you restart a failed server, it attempts
to reclaim ownership of its Transaction Recovery Service. If a backup server is in the process of
recovering transactions when you restart the failed server, the backup server stops recovering
transactions, performs some internal cleanup, and releases ownership of the Transaction
Recovery service so that the failed server can reclaim it and start properly. The failed server then
completes its own transaction recovery.
Oracle University and African Legend Indigo (PTY) LTD use only
If a backup server still owns the Transaction Recovery Service for a failed server and the backup
server is inactive when you attempt to restart the failed server, the failed server will not start
because the backup server cannot release ownership of the Transaction Recovery Service. This
is also true if the failback mechanism fails or if the backup server cannot communicate with the
Administration Server. You can manually migrate the Transaction Recovery by using the
Administration Console or the command-line interface.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 27
Migrating JTA
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 28
Configuring JTA Service Migration
Oracle University and African Legend Indigo (PTY) LTD use only
Environment > Servers > Configuration > Migration
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 29
Manually Migrating the JTA to Another
Server in a Cluster
When you need to migrate transactions from a failed server to a
working server, use:
Environment > Servers > Control > Migration
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 30
Configuring Automatic Migration of
the JTA Transaction
To configure automatic migration of the Transaction Recovery
Service for a migratable target within a cluster:
Configure the Managed Servers and Node Manager:
Oracle University and African Legend Indigo (PTY) LTD use only
Create the Managed Servers.
Create and configure the machines.
Configure Node Manager.
Configure the Migration Basis.
On the Cluster > Configuration > Migration page, configure
the clusters Migration Basis" according to your data
persistence environment configuration (use either Database
leasing or Consensus leasing).
Enable Automatic JTA Migration.
Oracle University and African Legend Indigo (PTY) LTD use only
Post-Migration Script Path: The path to the post-migration script to run after a
migratable target is fully deactivated
Post-Migration Script Failure Cancels Automatic Migration: Specifies whether or not
a failure during execution of the post-deactivation script is fatal to the migration
Allow Post-Migration Script To Run On a Different Machine: Specifies whether or not
the post-deactivation script is allowed to run on a different machine
The pre- or post-migration scripts must be located in the
BEA_HOME/user_projects/domains/mydomain/bin/service_migration
directory, where mydomain is a domain-specific directory with the same name as the domain.
For your convenience, sample pre-migration and post-migrations scripts are provided in this
directory.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 32
Configuring Automatic Migration
of the JTA Transaction
Configure the default persistent store for the migration of
the Transaction Recovery Service.
Restart the Administration Server and Managed Servers
Oracle University and African Legend Indigo (PTY) LTD use only
with modified migration policies.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 33
Automatic Failback of the Transaction Recovery
Service Back to the Original Server
There are two scenarios for automatic failback of the
Transaction Recovery Service to the primary server:
Automatic failback after recovery is complete:
Oracle University and African Legend Indigo (PTY) LTD use only
If the backup server finishes recovering the TLOG
transactions before the primary server is restarted, it initiates
an implicit migration of the Transaction Recovery Service
back to the primary server.
For both manual and automatic migration, the post-
deactivation script would be executed automatically.
Automatic failback before recovery is complete:
If the backup server is still recovering the TLOG transactions
when the primary server is started, during the Transaction
Recovery Service initialization of the primary server startup,
it initiates an implicit migration of the Transaction Recovery
Service from the backup server.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 34
JTA Migration Limitations
Oracle University and African Legend Indigo (PTY) LTD use only
The server must be stopped before migrating the JTA.
The backup server processes only incomplete
transactions.
The backup server does not accept new transaction work for
the failed server.
The backup server does not process heuristic log files.
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 36
Road Map
Clustering Services
JNDI
JDBC
Oracle University and African Legend Indigo (PTY) LTD use only
Transactions
JMS
Clustering JMS
Distributed Destinations
JMS Failover
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 37
JMS Clustering Support
Oracle University and African Legend Indigo (PTY) LTD use only
destinations throughout a cluster (distributed destinations).
JMS queues and topics are still managed by a single server
instance in the cluster.
Oracle WebLogic Server provides failover for JMS
messages through:
Distributed destinations
Server-level automatic migration
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 38
JMS Connection Factory Clustering
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 39
JMS Connection Factory Clustering
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 40
Distributed Destination
Oracle University and African Legend Indigo (PTY) LTD use only
It is looked up as a regular destination via JNDI.
Its member availability is dynamically updated.
Producers and consumers can send and receive
messages through a distributed destination.
WebLogic JMS distributes the load across the available
physical destinations within the distributed destination.
Distributed Destination
WebLogic JMS offers a level of redundancy, and therefore service continuity, in the event of the
failure of one Oracle WebLogic Server by enabling you to configure multiple physical
destinations (queues and topics) as part of one distributed destination set. Producers and
consumers can send messages to and receive messages from the distributed destination.
WebLogic JMS distributes the load across all available physical destinations within the
distributed destination.
The Load Balancing Enabled attribute on JMS Connection Factory defines whether the
nonanonymous producers created through a connection factory are load-balanced on a per-call
basis.
For applications that use distributed destinations to distribute or balance their producers and
consumers across multiple physical destinations, but do not make a load-balancing decision each
time a message is produced, turn off the Load Balancing Enabled attribute.
The Server Affinity Enabled attribute on JMS Connection Factory defines whether an Oracle
WebLogic Server that load balances consumers or producers across multiple physical
destinations in a distributed destination set will first attempt to load balance across any other
physical destinations that are also running on the same Oracle WebLogic Server.
For more information, see Configuring Distributed Destinations at
THESE http://e-docs.bea.com/wls/docs103/jms_admin/advance_config.html#wp1079177.
eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 41
Distributed Queues
Oracle WebLogic Server 1
Senders
JMS ServerA
s1 s3
...
Oracle University and African Legend Indigo (PTY) LTD use only
m9 m8 m3 queue
Q
s2 Receivers
JMS ServerB r1
Dest3 ... r2
m7 m5 m4 queue
Q
r3
Oracle WebLogic Server 2
JNDI Tree r4
Dest1 JMS ServerC
Dest2
Dest3 ...
Dest4 m6 m2 m1 queue
Q
Distributed Queues
A distributed destination is a set of physical destinations, queues, or topics that are called under
one JNDI name so that they appear to be one logical destination to a client. The members of the
set are actually distributed across multiple servers within a cluster. Each destination member
belongs to a separate JMS server.
By enabling you to configure multiple physical queues and topics as members of a distributed
destination, WebLogic JMS supports high availability and load balancing of the physical
destinations within a cluster.
After it is configured, producers and consumers can send and receive messages through the
distributed destination. WebLogic JMS balances the messaging load across all available
members of the distributed destination. If one member becomes unavailable due a server failure,
traffic is redirected toward other available destination members in the set.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 42
Distributed Topics
Oracle WebLogic Server 1
Publishers Persistent
JMS ServerA Storage
p1 p3
...
Oracle University and African Legend Indigo (PTY) LTD use only
m3 m2 m1 topicT
p2 Subscribers
JMS ServerB s1
Dest3 ... s2
m3 m2 m1 topicT
s3
Oracle WebLogic Server 2
JNDI Tree s4
Dest1 JMS ServerC
Dest2
Dest3 ...
Dest4 m32 m2 m1 topicT
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 43
Creating a Distributed Topic
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 44
Creating a Distributed Topic
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 45
Creating a Distributed Topic
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 46
Distributed Destination Threshold and Quota
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 47
Server Affinity
Oracle University and African Legend Indigo (PTY) LTD use only
For a new JMS connection, a distributed destination:
Attempts to create a connection on the same server as the
JNDI initial context, which is the original client connection
server instance
Attempts to create a connection to a server with which the
client already has a connection, JMS or non-JMS. This may
be dependent on the JTA or JMS transaction.
Creates the connection on any server
Server Affinity
Scenario 1 happens if there is a member of this distributed JMS destination on the same server
where the client is using a JNDI connection to discover the distributed destination.
When the client already interacts with Transaction Manager on one of the servers for JTA or
other JMS purposes and tries to connect to the distributed destination, the client connection
would be created on the same server instance where other transaction work is being managed.
This is done to simplify transaction coordination by Transaction Manager.
Scenario 3 takes place when the client cannot access a member of the distributed destination on
the current server because it is not available on this particular server and the client has not yet
done any work with the other servers that host members of the desired distributed destination.
Queue senders are preferably routed to the member destinations with the existing queue
receivers.
Topic Publishers will have their messages fan out to all active member Topics whether the
member Topic has any Subscriber connected or not.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 48
Zero Consumers
Oracle University and African Legend Indigo (PTY) LTD use only
involved in a transaction.
A zero consumer is a member that has no consumers; it is
used as follows:
A producer avoids a zero consumer.
A consumer searches for a zero consumer.
Persistent messages are put in a backing store.
Zero Consumers
Server Affinity
When the Server Affinity option is enabled for distributed destinations before an Oracle
WebLogic Server instance attempts to load balance consumers or producers across all the
members of a distributed destination in a domain, it attempts to load balance across the local
members that are running on the same Oracle WebLogic Server instance.
Transaction Affinity
When producing multiple messages within a transacted session, the system attempts to send all
the messages that are produced to the same Oracle WebLogic Server. If a session sends multiple
messages to one distributed destination, all the messages are routed to the same physical
destination. If a session sends multiple messages to multiple distributed destinations, the system
attempts to select a set of physical destinations that are served by the same Oracle WebLogic
Server.
Queues with Zero Consumers
When you are load-balancing consumers across multiple remote physical queues, if one or more
queues have zero consumers, those queues alone are considered for balancing the load. When all
the physical queues in the set have at least one consumer, the standard algorithms apply. When
producers send messages, queues with zero consumers are not considered for message
production, unless all the instances of the queue have zero consumers.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 49
Zero Consumers
Oracle WebLogic Server 1
JMS ServerA
...
s1 s3
Oracle University and African Legend Indigo (PTY) LTD use only
m6 m3 m2 queue
Q
s2
JMS ServerB
r1
Dest3
queueQ
r3
Oracle WebLogic Server 2
JNDI Tree
Dest1 JMS ServerC r4
Dest2
Dest3 ...
Dest4 m5 m4 m1 queue
Q
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 50
Load Balancing
Oracle University and African Legend Indigo (PTY) LTD use only
Load balancing does not occur
If the destination is distributed:
Production is replicated across member topics and queues
Load balancing is either round-robin or random
The consumer is pinned to one member destination, which is
selected at creation time
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 51
Location Transparency
Oracle University and African Legend Indigo (PTY) LTD use only
Administration Console.
Use the isJNDINameReplicated() method in
JMSQueueMBean or JMSTopicMBean.
Clients look up a destination on any server and receive a
connection on the actual server.
Location Transparency
The isJNDINameReplicated() method is inherited from the JMSDestinationMBean
interface that both JMSQueueMBean and JMSTopicMBean extend.
The distributed JMS destination tries to minimize inter-server communications and uses server
affinity (discussed later) if it is allowed.
Server affinity is enabled by appropriately selecting the respective check box on the JMS
connection factory level.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 52
Failover
Oracle University and African Legend Indigo (PTY) LTD use only
A persistent store
A transaction log
WLS provides a migratable JMS service that attempts to
deliver outstanding JMS messages.
Failover
JMS offers level service continuity in the event of the failure of one Oracle WebLogic Server by
enabling you to configure multiple physical destinations (queues and topics) in one distributed
destination set. Implementing the Migratable Service feature ensures that pinned exactly-once
services, such as JMS, do not introduce one point of failure for dependent applications in the
cluster.
If a failure occurs, you can invoke the migration process manually. You must migrate a JDBC
store or file store only if it physically exists on the failed server.
Any transaction logs must also be available to the new server.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 53
JMS Server Migration
Oracle University and African Legend Indigo (PTY) LTD use only
can be migrated. However, migration must be configured
ahead of time.
For persistent messaging, migratable targets must have
access to the same JMS store as the original server.
A JMS server can migrate to an Oracle WebLogic Server
that already hosts distributed destination members.
Migration may be a part of scheduled maintenance.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 54
Performing Migration
Oracle University and African Legend Indigo (PTY) LTD use only
Automatic migration happens only through whole server
migration.
It is possible to use third-party products to perform
migration:
JMX
Veritas HA
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 55
JMS Migratable Targets
Oracle University and African Legend Indigo (PTY) LTD use only
A migratable target is a special target that can migrate
from one server in a cluster to another.
A migratable target provides a way to group migratable
services that should move together.
When the migratable target is migrated, all services hosted
by that target are migrated.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 56
JMS Migratable Targets (continued)
In order to configure a migratable JMS service for migration, it must be deployed to a
migratable target. A migratable target specifies a set of servers that can host a target, and can
optionally specify a user-preferred host for the services and an ordered list of candidate backup
servers should the preferred server fail. Only one of these servers can host the migratable target
at any one time.
After a service is configured to use a migratable target, the service is independent from the
server member that is currently hosting it. For example, if a JMS server with a deployed JMS
Oracle University and African Legend Indigo (PTY) LTD use only
queue is configured to use a migratable target, the queue is independent of when a specific
server member is available. In other words, the queue is always available when the migratable
target is hosted by any server in the cluster.
An administrator can manually migrate pinned migratable services from one server instance to
another in the cluster, either in response to a server failure or as part of regularly scheduled
maintenance. If you do not configure a migratable target in the cluster, migratable services can
be migrated to any WebLogic Server instance in the cluster.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 57
Migrating JMS Data
Oracle University and African Legend Indigo (PTY) LTD use only
stores DataSource.
If the database is not on the failed server, no changes are
required.
For the file store:
Migrate to a new server.
Ensure that the path name is the same on the new server as
the original one.
For transactions, also migrate the transaction logs.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 58
Migration Configuration
Oracle University and African Legend Indigo (PTY) LTD use only
Create physical member destinations (use the autodeploy
option for distributed destinations).
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 59
Configuring a Migratable Target
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 60
Targeting JMS Server to a Migratable Target
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 61
Migrating Services
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 62
Summary
Oracle University and African Legend Indigo (PTY) LTD use only
Cluster JDBC data sources
Cluster transactions
Cluster JMS connection factories
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration 15 - 63
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Appendix A
Practices and Solutions
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Table of Contents
Practices for Lesson 1 ......................................................................................................... 4
Installing the Oracle WebLogic Server Software ............................................................... 4
Practice 1-1: Installing Oracle WebLogic Server 10.3 ................................................... 6
Practices for Lesson 2 ......................................................................................................... 7
Configuring a Domain Template ........................................................................................ 7
Using the Administration Console.................................................................................... 10
Oracle University and African Legend Indigo (PTY) LTD use only
Using the Command Lines ............................................................................................... 11
Practice 2-1: Configuring a Domain Template............................................................. 12
Practice 2-2: Using the Administration Console .......................................................... 15
Practice 2-3: Using the Command Line........................................................................ 17
Practices for Lesson 3 ....................................................................................................... 19
Configuring Servers and Machines................................................................................... 19
Starting the Servers Using Node Manager........................................................................ 21
Configuring Network Channels and Network Access Points (Optional) ......................... 24
Practice 3-1: Configuring Servers and Machines ......................................................... 27
Practice 3-2: Starting Servers Using Node Manager .................................................... 30
Practice 3-3: Configuring Network Channels and Network Access Points (Optional) 33
Practices for Lesson 4 ....................................................................................................... 35
Deploying and Undeploying Web Applications ............................................................... 35
Practice 4-1: Deploying/Undeploying Web Applications ............................................ 37
Practices for Lesson 5 ....................................................................................................... 40
Practices for Lesson 6 ....................................................................................................... 41
Configuring Data Sources................................................................................................. 41
Practice 6-1: Configuring Data Sources ....................................................................... 44
Practices for Lesson 7 ....................................................................................................... 47
Configuring the JMS Servers and Destinations ................................................................ 47
Practice 7-1: Configuring the JMS Servers and Destinations....................................... 50
Practices for Lesson 8 ....................................................................................................... 53
Data Sources and Transactions ......................................................................................... 53
Practice 8-1: Data Sources and Transactions................................................................ 56
Practices for Lesson 9 ....................................................................................................... 58
Managing Users and Groups............................................................................................. 58
Securing Web Applications .............................................................................................. 61
Configuring Additional Conditions .................................................................................. 63
Configuring SSL ............................................................................................................... 65
Protecting Against Attacks ............................................................................................... 69
Practice 9-1: Managing Users and Groups ................................................................... 70
Practice 9-2: Securing Web Applications ..................................................................... 71
Practice 9-3: Configuring Additional Conditions ......................................................... 73
Practice 9-4: Configuring SSL...................................................................................... 75
Practice 9-5: Protecting Against Attacks ...................................................................... 78
Practices for Lesson 10 ..................................................................................................... 80
Using a Deployment Plan ................................................................................................. 80
Production Redeployment................................................................................................. 82
Oracle University and African Legend Indigo (PTY) LTD use only
Managing HTTP Session States...................................................................................... 105
Practice 13-1: Managing HTTP Session States .......................................................... 111
Practices for Lesson 14 ................................................................................................... 116
EJB Load Balancing and Failover .................................................................................. 116
Practice 14-1: EJB Load Balancing and Failover ....................................................... 120
Practices for Lesson 15 ................................................................................................... 126
Clustering JDBC Data Sources....................................................................................... 126
Load-Balance JMS Messages ......................................................................................... 131
Practice 15-1: Clustering JDBC Data Sources............................................................ 135
Practice 15-2: Load-Balancing JMS Messages........................................................... 138
After completing this exercise, you should be able to install the Oracle WebLogic Server 10.3
software.
Oracle University and African Legend Indigo (PTY) LTD use only
To address the issues in the current Dizzyworld architecture, Oracle WebLogic Server enables
you to deploy, execute, and maintain highly integrated, high-performance, and reliable enterprise
applications.
Oracle WebLogic Server 10.3 increases productivity and lowers the cost structure for enterprise
IT organizations by providing a unified, simplified, and extensible platform for system
administrators and management.
You install the Oracle WebLogic Server software for use with the lab exercises. Oracle
WebLogic Server 10.3 offers a common application architecture that includes the following:
A set of integrated technology frameworks that provide a solutions-oriented starting point
for addressing your project needs
A unified, simplified management architecture that empowers developers and
administrators to realize business objectives in an environment that is populated with
distributed, heterogeneous technologies and platforms
A highly-reliable, available, scalable, extensible, standards-based, and high-performing
foundation that allows you to incorporate flexibility and choice in your IT solutions
Specifications
Table 1 displays the environment variables that are used throughout the lab exercises. These
environment variables are set by script files that are used at various points during the exercises.
Table 1
Oracle University and African Legend Indigo (PTY) LTD use only
setup_exercise command, if you are prompted with the question, Do you want to
overwrite existing domain backup select Yes to continue. This script may also be used
in some lessons to perform operations that are required as a prerequisite for the lab (for
example, deploying an application implicitly).
setup_solution Starts databases and the administration server if they are not
running. It performs all the steps for the lab. Most of the setup_solution scripts
provide solution only for one particular lab. However, setup_solution for four
Cluster labs are cumulative lab solutions, that is, they provide solution for all prior cluster
labs when you run setup_solution.
continue_exercise Creates a backup of the last lab that you worked on and
replaces the domain with any backup copy for the current lab from the directory where
you run the script. It also starts databases and the administration server if they are not
running. Use continue_exercise to redo a previous lab starting from the backup
copy of the domain that was taken at the beginning of the lab using setup_exercise.
continue_work Starts databases and the administration server if they are not
running
Note: The solution script files are provided to you in the <LAB_HOME>/solution directory.
The exercise script files are provided to you in the <LAB_HOME>/exercise directory.
Basic Instructions
1. Install Oracle WebLogic Server 10.3. The installation program
(server103_linux32.bin) is located in /stage.
Oracle University and African Legend Indigo (PTY) LTD use only
1.2 Use the following configuration information:
Screen Value
Choose BEA Home Directory /u01/app/oracle/product/Middle
ware
Note: Select Yes when a warning
message appears stating that The
directory is not empty, do you want to
proceed?
Choose Install Type Custom
Choose Products and Components Deselect the Workshop option.
Oracle University and African Legend Indigo (PTY) LTD use only
After completing this practice, you should be able to create:
A new custom domain template
A new domain using the custom domain template
The Dizzyworld system architects have decided to create a customized domain template by using
Domain Template Builder so as to have the flexibility to create domains for multiple
development, test, and production environments.
In this lab, you create your own customized template called dizzyworld.jar using Domain
Template Builder. You then use the Configuration Wizard to create the dizzyworld domain
with the customized domain template dizzyworld.jar that you created.
Oracle University and African Legend Indigo (PTY) LTD use only
Oracle University and African Legend Indigo (PTY) LTD use only
Configure the Administrator username and password with the following specifications:
Username: system
Password: weblogic
Confirm user password: weblogic
Currently, there is no need to configure additional users, groups, and global resources
roles.
Add a Managed Server with the following specifications to the dizzyworld domain:
Name: dizzy1
Listen address: All Local Addresses
Listen Port: 7003
./startWebLogic.sh
Oracle University and African Legend Indigo (PTY) LTD use only
Configure and view log file entries for an Oracle WebLogic Server using the
Administration Console
Basic Instructions
1. Start Oracle WebLogic Server for the examples domain wl_server.
2. Use the Administration Console to modify the standard output severity threshold for the
wl_server to Info.
3. Shut down the examplesServer(admin) server by using the Administration Console.
4. Restart the Administration Server, and then view the server logging for examplesServer
using the Administration Console.
After completing this exercise, you should be familiar with the WebLogic Scripting Tool
(WLST), which is a command-line administration utility.
The WLST utility allows you to monitor servers from the command line. Also, from the
Oracle University and African Legend Indigo (PTY) LTD use only
command line, you can shut down the server, change server attributes, and configure a
domain.
Basic Instructions
1. Set up the exercise by running examplesServer and opening a command prompt using
./prompt.sh that is found in <STUDENT>/bin.
2. Update a running server using WLST in Online mode to set the log FileCount for the
examplesServer to 8.
3. Disable the SSL listen port for examplesServer by using WLST.
Configure a new domain template using the Domain Template Builder tool.
1.1 You can create a domain template by using the Domain Template Builder tool. Start the
Domain Template Builder.
Open a prompt using ./prompt.sh in the <STUDENT>/bin directory and navigate to
Oracle University and African Legend Indigo (PTY) LTD use only
<WEBLOGIC_HOME>/common/bin. Execute the config_builder.sh script.
1.2 In the Create a New Template window, select Create a Domain Template, and then
click Next.
1.3 In the Select a Template Domain Source window, click the Select a Template tab.
Select Basic WebLogic Server Domain and click Next.
1.4 In the Describe the Template window, specify the following:
Retain the default values for all the other fields. Click Next.
1.5 You do not need to add files currently. Click Next in the Add Files window.
1.6 You do not need to add SQL scripts currently, so click Next on the Add SQL Scripts
window.
1.7 In the Configure the Administration Server window, specify the following:
Name: AdminServer
Listen address: All Local Addresses
Listen Port: 7001
Currently, there is no need to configure additional users, groups, and global roles;
therefore, select the No option and click Next.
If prompted, click Yes to confirm the creation of the templates directory, and then click
Create. Click Done.
1.13 Inspect the dizzyworld.jar file that is created under the <WORK_HOME>/templates
Oracle University and African Legend Indigo (PTY) LTD use only
directory to familiarize yourself with the file created by the Domain Template Builder.
Build a dizzyworld domain using the newly created domain template dizzyworld.jar.
2.1 Using the domain template that was created in the previous step, you can create a
domain using the Configuration Wizard tool.
Name: dizzy1
Listen address: All Local Addresses
Listen Port: 7003
Click Next.
Oracle University and African Legend Indigo (PTY) LTD use only
Domain name: dizzyworld
Domain location: <WORK_HOME>/domains
./startWebLogic.sh
3.4 Specify the username and password:
Username: system
Password: weblogic
After you have verified that the server starts up properly, shut down the server by entering
CTRL C in the command-line window.
In this practice, you start and stop Oracle WebLogic Server by using the Administration
Console and view the server logs.
Oracle University and African Legend Indigo (PTY) LTD use only
1.2 Change to the <WEBLOGIC_HOME>/samples/domains/wl_server directory.
1.3 Make sure that all the previously running servers are shut down and execute the following
script to start the examples server:
./startWebLogicEx.sh
Note: Be patient; it takes a while to start the server because a few applications are
already deployed on the server. You may see the following error in stdout, this is benign:
Username: weblogic
Password: weblogic
2.2 Navigate to wl_server > Environment > Servers > examplesServer(admin) >
Logging > General.
2.3 Scroll to the bottom of the page and click Advanced.
2.4 Set the following properties:
Oracle University and African Legend Indigo (PTY) LTD use only
Log in as:
Username: weblogic
Password: weblogic
4.2 Navigate to wl_server > Diagnostics > Log Files.
4.3 In the Log Files table, select ServerLog and click View. This allows you to view log file
entries via the console.
Oracle University and African Legend Indigo (PTY) LTD use only
1.2 Open a prompt using ./prompt.sh in <STUDENT>/bin.
Update a running server using WLST in online mode to set the log FileCount for
examplesServer to 8.
2.1 Start the WLST by enter the following command at the prompt:
java weblogic.WLST
edit()
cd(Servers)
cd(examplesServer)
cd(Log)
cd(examplesServer)
startEdit()
set(FileCount,8)
save()
activate()
disconnect()
exit()
Note: If you do not want to enter the entire command, write scripts that contain the
command invocations.
Note: The solution script files are provided to you in the <LAB_HOME>/solution
directory. You can execute the solution scripts from the prompt window by entering
the following command: java weblogic.WLST fileCount.py.
2.4 You can see the effect of this series of commands by navigating to wl_server >
Environment > Servers > examplesServer(admin) > Logging > General. Check that
the value of the Files To Retain attribute is set to 8.
Hint:
To move back a directory, use the command, cd(..).
Oracle University and African Legend Indigo (PTY) LTD use only
To see the attributes under a directory, use the command, ls().
Note: The solution script files are provided to you in the <LAB_HOME>/solution
directory. You can execute the solution scripts from the prompt window by entering the
following command:
You can verify the results by checking whether the SSL Listen Port Enabled check box is
selected in the Administration Console as stated above.
3.2 Shut down examplesServer when you have finished with the lab. You do not need
examplesServer for the rest of this course.
Oracle University and African Legend Indigo (PTY) LTD use only
After completing this practice, you should be able to:
Create WebLogic machines
Create Managed Servers
Assign Managed Servers to machines
Start Managed Servers
The Dizzyworld system architects have decided to simulate the production environment by
configuring Managed Servers and machines for the dizzyworld domain to host business
applications and use the Administration Server to configure and monitor the Managed Servers.
In this lab, you create and configure the Managed Servers dizzy1, dizzy2, and dizzy3
and machines dizzyMachine1 and dizzyMachine2 for the dizzyworld domain that you
created to simulate the production environment.
Specifications
Table 2 Managed Server Specifications
ant setup_exercise
2. Because the dizzy1 Managed Server was configured while configuring the domain in the
previous labs, in this lab, you create the remaining Managed Servers dizzy2 and
Oracle University and African Legend Indigo (PTY) LTD use only
dizzy3 by referring to the server specifications in Table 2.
3. Create and configure the machines dizzyMachine1 and dizzyMachine2 by referring
to the machines specifications in
Table 3.
4. Test the configuration by starting the created Managed Servers using the command line,
by executing the following command that replaces <server_name> with the name of the
Managed Server:
Tip: If you are using the local address for the Administration Server, you can simply
supply the <server_name> as the argument.
5. (Optional): To set up the solution for this lab, open a command prompt using
./prompt.sh found in the <STUDENT>/bin directory. Change to the <LAB_HOME>
directory and enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
Start and stop servers remotely
The Dizzyworld system architects have determined that it would be beneficial to have the option
to remotely start any Managed Server instances. They decided to configure Node Manager for
dizzyMachine2, which will allow the Administration Server to remotely start the Managed
Servers instances dizzy2 and dizzy3 that are running on dizzyMachine2.
Node Manager is a Java program running in a remote machine that allows the Administration
Server to remotely start any Managed Server instances on that machine. It can also be used to
monitor the health status of the Managed Servers on that machine. In this lab, you configure Node
Manager properties for dizzyMachine2 and remotely start the Managed Server instances
running on dizzyMachine2 using the Administration Console.
Specifications
Figure 1 presents the infrastructure that consists of three Managed Server instances running on
two physical machines.
Oracle University and African Legend Indigo (PTY) LTD use only
Figure 2: Node Manager
The Node Manager service runs on Port 5556. You must declare the AdminServers IP address
as a trusted host so that it can access the Node Manager process on dizzyMachine2.
Design Specifications
Element Value
Node Manager service port for dizzyMachine2 5556
IP Address of AdminServer 127.0.0.1
Node Manager service port for dizzyMachine1 5555
ant setup_exercise
Note: There is no automated solution that is set up for this lab, so you will have to walk
through all the steps to complete it.
Oracle University and African Legend Indigo (PTY) LTD use only
2. Connect to the domain using WLST. Apply the nmEnroll WLST command to enroll the
machine. Navigate to Domain and set the classpath of servers.
3. Open a prompt and change to the <WEBLOGIC_HOME>/server/bin directory.
Start Node Manager to listen on port 5555 on dizzyMachine1 by executing the following
command:
./startNodeManager.sh 127.0.0.1 5555
Start Node Manager to listen on port 5556 on dizzyMachine2 by executing the following
command:
After completing this exercise, you should be familiar with setting up network channels.
Oracle University and African Legend Indigo (PTY) LTD use only
The Dizzyworld system architects have decided to configure network channels for
AdminServer and the dizzy1 Managed Server that will define the attributes of a
network connection to Oracle WebLogic Server.
In WebLogic 10.3, a server instance need not be bound to a single network address, or a
single port number/secure port. A network channel provides this functionality. A network
channel is a configurable resource that defines the attributes of a network connection to
Oracle WebLogic Server. For instance, a network channel can define:
The protocol that the connection supports
The listen address
The listen ports for secure and nonsecure communication
Connection properties such as the login timeout value and maximum message
sizes
Whether or not the connection supports tunneling
Whether the connection can be used to communicate with other Oracle
WebLogic Server instances in the domain, or used only for communication
with clients
In this lab, you configure a new NetworkChannel called DizzyworldNetworkChannel1 on
the dizzy1 Managed Server that supports the http protocol, localhost for the listen
address, and 9001 for the listen port. You also configure a NetworkChannel called
DizzyworldNetworkChannel2 on the AdminServer that supports the http protocol,
localhost for the listen address, and 9003 for the listen port.
ant setup_exercise
Name: DizzyworldNetworkChannel1
Protocol: http
Listen Address: localhost
Listen Port: 9001
External Listen Address: localhost
External Listen Port: 9001
3. Test the newly created channel using the benefits.war application deployed to the
dizzy1 Managed Server by browsing to http://localhost:9001/benefits.
Name: DizzyworldNetworkChannel2
Protocol: http
Listen Address: localhost
Listen Port: 9003
External Listen Address: localhost
Oracle University and African Legend Indigo (PTY) LTD use only
External Listen Port: 9003
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Copy the boot.properties file from the <LAB_HOME>/exercise folder to the
<WORK_HOME>/domains/dizzyworld folder so that when the server starts, you do not
have to specify the Administrative credentials explicitly.
1.4 Enter the following command:
ant setup_exercise
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Environment > Servers > dizzy1 > Configuration >
General. Lock the console. Update the Managed Server dizzy1 to match the
specifications in Table 2.
2.3 Because you already have the dizzy1 server configured, you now configure the dizzy2
and dizzy3 servers.
2.4 Navigate to dizzyworld > Environment > Servers. Under the Servers table, click New.
Specify the following properties on the Create a New Server page:
Under Should this server belong to a cluster? select No, this is a standalone
server.
2.5 Click Next, review the selections and if they are correct, click Finish to create the server.
Oracle University and African Legend Indigo (PTY) LTD use only
2.7 Similar to how you created and configured the Managed Server dizzy2, create the
Managed Server dizzy3 using the Managed Server specifications from Table 2.
Create and configure the machines.
3.1 Navigate to dizzyworld > Environment > Machines. Lock the console. Under the
Machines table, click New. Specify the following properties on the Create a New
Machine page:
Name: dizzyMachine1
Machine OS: Unix (Linux)
Click OK.
Activate your changes.
3.2 Assign the machine dizzyMachine1 to the dizzy1 server by clicking the machine
name. Lock the console and click the Servers tab.
3.3 Click Add under the Servers table. Select dizzy1 from the existing server drop-down list
and click Finish.
3.4 Click the Node Manager tab to enter the properties of Node Manager for this machine
according to the machine specifications (Table 3).
Note: In this training environment, you use a PLAIN text connection between Node
Manager and the servers. In production, using SSL secures the communication when
using the Java-based Node Manager.
3.5 Save and activate your changes.
3.6 Repeat this process to create the machine, dizzyMachine2, by referring to the machine
specifications in
Table 3, and assign the Managed Servers dizzy2 and dizzy3 to dizzyMachine2.
Also configure the Node Manager properties for the machine.
Test the configuration by starting the created Managed Servers.
4.1 Open a prompt using ./prompt.sh in <STUDENT>/bin.
4.2 Change to the <WORK_HOME>/domains/dizzyworld/bin directory.
Tip: If you use the local address for the Administration Server, you can simply supply the
<server_name> argument.
Oracle University and African Legend Indigo (PTY) LTD use only
4.4 If prompted, enter the Administrator credentials at server prompt.
Note: Check to make sure that all Managed Servers are up and running. Before
you start the next lab, make sure that all Managed Servers are stopped (CTRL+
C to stop dizzy1, 2, and 3 on terminal windows).
(Optional) Set up the solution, if unable to complete the lab.
5.1 To set up the solution for this lab, open a command prompt ./prompt.sh found in the
<STUDENT>/bin directory. Change to the <LAB_HOME> directory and enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
connect (system,weblogic,t3://localhost:7001)
Oracle University and African Legend Indigo (PTY) LTD use only
2.4 After you are connected at the wls:/dizzyworld/serverConfig> prompt, enter the
following command:
nmEnroll ([domainDir], [nmHome])
wls:/dizzyworld/serverConfig>
nmEnroll(/home/oracle/wls_sysadm/work/domains/dizzyworld,/u01/
app/oracle/product/Middleware/wlserver_10.3/common/nodemanager)
2.5 Go to the Administration Console and navigate to dizzyworld > Environment >
Servers > dizzy1 > Configuration > Server Start. Lock the console.
2.6 Set the classpath.
3.2 Start Node Manager to listen on port 5555 on dizzyMachine1 by executing the
following command:
./startNodeManager.sh 127.0.0.1 5555
Oracle University and African Legend Indigo (PTY) LTD use only
the dizzy1 Managed Server, click Yes.
Note: If you get an error, shut down the Node Manager associated with 5555, edit the
nodemanager.properties file under
/u01/app/oracle/product/Middleware/wlserver_10.3/common/nodemanag
er, and make sure that the SecureListener property is set to false. Start Node Manager
and try step 4.1 again.
4.2 Repeat the preceding step to start the Managed Servers dizzy2 and dizzy3.
4.3 Navigate to dizzyworld > Environment > Servers. Verify the running state for both the
Managed Servers dizzy2 and dizzy3.
Alternatively, use the command prompt window and run netstat an to verify that the
servers dizzy1, dizzy2, and dizzy3 are listening.
4.4 Stop dizzy1, dizzy2, and dizzy3 and both Node Managers.
Note: From here on, you should try to start or stop the Administration Server and the
Managed Servers using the command line rather than the Administration Console just to
be consistent. This will also allow you to see the error/debug/info messages easily on the
terminal window (especially in the case of Clustering labs).
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Enter the following command:
ant setup_exercise
Name: DizzyworldNetworkChannel1
Protocol: http
2.3 Click Next.
2.4 On the Create a new Network Channel page, specify the following properties:
Name: DizzyworldNetworkChannel2
Protocol: http
4.3 Click Next.
Oracle University and African Legend Indigo (PTY) LTD use only
4.4 On the Create a new Network Channel page, specify the following properties:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
At the end of this exercise, you should be able to deploy a prepackaged .war file.
The Dizzyworld system architects want to deploy a company benefits Web application that
allows employees to view the company benefits. For this exercise, you need to deploy a
prepackaged application to the dizzy1 Managed Server in the dizzyworld domain.
Interactive, Web applications are groupings of static pages and dynamic pages for the
overall application. They can be packaged in a Web Archive file with a .war extension.
They are packaged using the JAR utility. In this lab, you deploy the Web application
benefits.war, and also deploy and undeploy the benefits_as_default.war
Web application.
Specifications
Figure 3 presents the dizzyworld domain.
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
3. Deploy the benefits_as_default.war Web application.
4. Undeploy the benefits_as_default.war Web application using the Administration
Console.
5. (Optional): Set up the solution for this lab, if you are unable to complete it. Make sure that
AdminServer and dizzy1 are running. Open a command prompt using ./prompt.sh
that is located in the <STUDENT>/bin directory. Change to the <LAB_HOME> directory
and enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Username: system
Password: weblogic
2.5 Navigate to dizzyworld > Deployments. Lock the console.
2.6 If benefits.war exists, select the benefits application, and then click Stop > Force
Stop Now. (The state changes to Prepared. If you click Prepared, you can see that the
application is successfully stopped.) Select the benefits application, and then click
Delete. Activate your changes, and then re-lock the console.
2.7 Lock the console. In the Deployments table, click Install. Navigate to the location
<WORK_HOME>/applications, select benefits.war and click Next.
2.8 On the Choose Targeting Style page, select Install this deployment as an
application, which is the default option, and click Next.
2.9 On the Select Deployment Targets page, select the dizzy1 Managed Server in the
Servers table and click Next.
2.10 On the Optional Settings page, under the Source Accessibility header, select Copy
this application onto every target for me and click Next.
2.11 On the Review page, select No, I will review the configuration later under the
Additional Configuration header and click Finish.
2.12 Activate your changes.
2.13 Navigate to dizzyworld > Deployments. In the Deployments table, select the benefits
application check box and click Start > Servicing All Requests.
Oracle University and African Legend Indigo (PTY) LTD use only
Deploy the Web application benefits_as_default.war.
3.1 Sometimes, it is convenient to set a Web application as a default Web application for a
server, so that in the request URL, you can omit the context name. You can select one
default Web application per server. In this lab, the benefits_as_default.war
application has been configured to be the default Web application.
<weblogic-web-app>
<context-root>/</context-root>
</weblogic-web-app>
Note: A similar result could also have been achieved by navigating to Servers > dizzy1 >
Protocols > HTTP tab of the admin console and specifying value for the attribute "Default
WebApp Context Root". This way developers don't have to built-in this information during
development.
3.2 Navigate to the <LAB_HOME>/exercise directory, locate the
benefits_as_default.war file, and copy it to the <WORK_HOME>/applications
directory.
3.3 Deploy the benefits_as_default.war Web application that is located in the
<WORK_HOME>/applications directory to dizzy1.
Note: Do not forget to activate the changes and start the application.
3.4 Verify the default Web application configuration by browsing to http://localhost:7003.
Note: You do not need to specify the application root /benefits in the requested URL
any more.
Undeploy the benefits_as_default.war Web application using the Administration
Console.
4.1 Navigate to dizzyworld > Deployments. Lock the console.
4.2 In the Deployments table, click benefits_as_default. The settings for
benefits_as_default appears. Click the Targets tab, deselect the check box for the
dizzy1 target, and then click Save. Under Message, you should get a confirmation that
your settings were saved successfully.
4.3 Activate your changes.
You should get an error, Error 404 Not Found, when you do this.
Note: If you use the same browser window to request the Web application, browser
caching may result in pages being served even after the application itself is undeployed.
Oracle University and African Legend Indigo (PTY) LTD use only
You can clear the browser cache for Firefox by selecting Edit > Preferences > Privacy >
Cache Options from the Menu bar and clicking Clear Cache Now. Reload the page.
(Optional) Set up the solution, if unable to complete the lab.
5.1 Set up the solution for this lab, if you are unable to complete it. Make sure that
AdminServer and dizzy1 are running. Open a command prompt using ./prompt.sh
that is located in the <STUDENT>/bin directory. Change to the <LAB_HOME> directory
and enter:
ant setup_solution
Note: Running the ant setup_solution script completes only a portion of the lab.
(Deploy the Web application benefits.war steps from 2.1 to 2.15.) The remaining part
of the lab, the Deploy/Undeploy the benefits_as_default.war Web Application
section has to be completed manually.
Oracle University and African Legend Indigo (PTY) LTD use only
Oracle University and African Legend Indigo (PTY) LTD use only
After completing this exercise, you should be able to:
Create a JDBC data source
Locate a JDBC data source in a servers JNDI tree
The Dizzyworld system architects have decided to create the dizzyworldDS data source object
to connect to HRDATABASE because data sources and their connection pools provide connection
management processes that help keep the system running.
A DataSource object enables a JDBC client to obtain a DBMS connection from a JDBC pool.
The connection pool within a JDBC data source contains a group of JDBC connections that
applications reserve, use, and then return to the pool. The connection pool and the connections
within it are created when the connection pool is registered, usually when starting up Oracle
WebLogic Server or when deploying the data source to a new target. In this lab, you create a
dizzyworldDS data source to connect to HRDatabase. See the following diagram:
Oracle University and African Legend Indigo (PTY) LTD use only
Figure 4: Dizzyworld Domain
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
Name: dizzyworldDS
JNDI Name: dizzyworldDS
Database Type: PointBase
Database Driver: *PointBases Driver (Type 4)versions:4.x,5.x
Database Name: HRDATABASE
Host Name: localhost
Port: 9092
Database User Name: PBPUBLIC
Password: PBPUBLIC
Initial Capacity: 5
Maximum Capacity: 15
Capacity Increment: 5
Login Delay: 1
Target: dizzy1
3. Verify the DataSource by deploying a prepackaged testds.war Web application and
navigating to http://localhost:7001/testds/testdatasource.jsp to test the datasource.
4. (Optional): To set up the solution:
Make sure that HRDatabase, AdminServer, and dizzy1 are running
Enter ant setup_solution from <LAB_HOME>
Oracle University and African Legend Indigo (PTY) LTD use only
Edit setDomainEnv.sh in
/home/oracle/wls_sysadm/work/domains/dizzyworld/bin to change
the classpath as follows:
CLASSPATH="${PRE_CLASSPATH}${CLASSPATHSEP}${WEBLOGIC_CLASSPATH}${
CLASSPATHSEP}${POST_CLASSPATH}${CLASSPATHSEP}${WLP_POST_CLASSPATH
}${CLASSPATHSEP}${WL_HOME}/common/eval/pointbase/lib/pbembedded57
.jar:${WL_HOME}/integration/lib/util.jar"
ant setup_exercise
Username: system
Password: weblogic
2.3 Navigate to dizzyworld > Services > JDBC > Data Sources. Lock the console.
2.4 On the Summary of JDBC Data Sources page, lock the console and click New under the
Data Sources table. Specify the following properties for configuring a JDBC data source:
Name: dizzyworldDS
JNDI Name: dizzyworldDS
Database Type: PointBase
Database Driver: *PointBases Driver(Type 4)versions:4.x,5.x
Oracle University and African Legend Indigo (PTY) LTD use only
2.8 Click Next.
2.9 Click Test Configuration to check if the connection to the database is working, and then
click Next.
2.10 Target the dizzy1 Managed Server and click Finish.
2.11 Click dizzyworldDS under the Data Sources table on the Summary of JDBC Data
Sources page.
2.12 Click the Configuration > Connection Pool tab. Specify the following parameters:
Initial Capacity: 5
Maximum Capacity: 15
Capacity Increment: 5
2.13 Save and activate your changes.
2.14 Check the JNDI tree of the dizzy1 Managed Server to make sure that the data source is
deployed. Look for a JNDI entry called dizzyworldDS.
Verify the DataSource by deploying a prepackaged testds.war Web application.
3.1 Navigate to the <LAB_HOME>/exercise directory, locate the testds.war file, and
copy it to the <WORK_HOME>/applications directory.
3.2 Navigate to dizzyworld > Deployments. Lock the console.
3.3 Select Install, navigate to <WORK_HOME>/applications, and select testds.war.
3.4 Make sure that you opt to Install this deployment as an application, target the
application to dizzy1, and select Copy this application onto every target for me for
Source accessibility on the Optional Settings page. Click Finish.
3.5 Activate your changes, and then start the application.
3.6 Open a Web browser and navigate to http://localhost:7003/testds/testdatasource.jsp to
test the data source. Use the Test Data Source button to retrieve data from the HR
database.
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
Note: Restart the dizzy1 server after running the solution script. Make sure that the
state of the testds application is Active before testing the testds application.
After completing this practice, you should be able to get hands-on experience with configuring
and monitoring Java Message Service (JMS) queues and topics.
Oracle University and African Legend Indigo (PTY) LTD use only
The Dizzyworld system architects have decided to explore the JMS services by configuring a
JMS server, a JMS module with JMS queue, and JMS topic resources, and by deploying a simple
messaging.war application to post messages to the queue and the topic.
Currently, you do not have any consumers; you simply post the messages and get familiar
with monitoring the message statistics in the Administration Console.
Oracle University and African Legend Indigo (PTY) LTD use only
Dizzyworld Domain with JMS Services
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
Name: dizzyworldJMSServer
Persistent Store: (none)
3. Configure a JMS module, and add a queue and topic to the JMS module, according to the
following specifications:
JMS Module
Name: dizzyworldModule
Descriptor File Name: dizzyworldModule
Target: dizzy1
Subdeployment
Subdeployment Name: dizzy1SubDeployment
Targets: dizzyworldJMSServer
Queue
Name: dizzyworldQueue
JNDI Name: dizzyworldQueue
Template: None
Target: dizzyworldJMSServer
Topic
Name: dizzyworldTopic
JNDI Name: dizzyworldTopic
Template: None
Target: dizzyworldJMSServer
4. Deploy the messaging.war Web application, which allows you to post messages to the
queue or the topic.
5. Verify that the Web application is deployed correctly by navigating to
http://localhost:7003/messaging and posting messages to either the queue or the topic
using the deployed Web application.
6. (Optional): To set up the solution:
Make sure that HRDatabase, AdminServer, and dizzy1 are running
Enter ant setup_solution from <LAB_HOME>
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Enter the following command:
ant setup_exercise
Configure a JMS server.
2.1 Ensure that HRDatabase, AdminServer, and dizzy1 are running.
2.2 Navigate to dizzyworld > Services > Messaging > JMS Servers. Lock the console.
2.3 Click New under the JMS Servers table and specify the following properties:
Name: dizzyworldJMSServer
Persistent Store: (none)
2.4 Click Next and target the JMS server to the dizzy1 Managed Server. Click Finish.
2.5 Activate your changes.
Configure a JMS module, and add a queue and topic to the JMS module.
3.1 Navigate to dizzyworld > Services > Messaging > JMS Modules. Lock the console, if
necessary.
3.2 Click New under the JMS Modules table and specify the following properties:
Name: dizzyworldModule
Descriptor File Name: dizzyworldModule
3.3 Click Next and target the module to the dizzy1 Managed Server. Click Next and select
the following:
Click Next.
3.6 On the Targets page, select dizzyworldJMSServer as the target under the JMS
Servers table. Click Finish.
Oracle University and African Legend Indigo (PTY) LTD use only
3.11 In JMS Destination Properties, specify the following parameters:
Name: dizzyworldQueue
JNDI Name: dizzyworldQueue
Template: None
3.12 Click Next.
3.13 Select dizzy1SubDeployment from the subdeployments list. Click Finish.
3.14 On the Settings for dizzyworldModule page, under the Summary of Resources
table, click New to configure a new JMS topic for the JMS module.
3.15 On the Create a New JMS System Module Resource page, under Choose the type of
resource you want to create, select Topic.
3.16 Click Next.
3.17 In JMS Destination Properties, specify the following parameters:
Name: dizzyworldTopic
JNDI Name: dizzyworldTopic
Template: None
3.18 Click Next.
3.19 Select dizzy1SubDeployment from the subdeployments list. Click Finish.
3.20 Activate the changes.
You should be able to see the JNDI entries, called dizzyworldQueue and
dizzyworldTopic, on the dizzy1 Managed Server.
Deploy the Web application messaging.war, which allows you to post messages to the
queue or topic.
4.1 Navigate to the <LAB_HOME>/exercise directory, locate the messaging.war file, and
copy it to the <WORK_HOME>/applications directory.
4.2 Navigate to dizzyworld > Deployments. Lock the console.
4.3 Select Install, navigate to <WORK_HOME>/applications, and select
messaging.war. Click Next, accept all the defaults, and click Next again. Target the
application to dizzy1. Click Next and accept all the defaults. Click Finish (when
possible).
Oracle University and African Legend Indigo (PTY) LTD use only
5.2 Using the application, post several messages to the standard queue and to the topic, not
to the distributed queue.
5.3 Use the Administration Console to view the number of messages that have been posted
into each of the destinations. Navigate to dizzyworld > Services > Messaging > JMS
Modules. In the JMS Modules table, click dizzyworldModule. On the Summary of
Resources page, click dizzyworldQueue, and then click the Monitoring tab.
Customize this table to show the Messages Total column. The Messages Total column
shows you the number of messages that have been sent to dizzyworldQueue. Repeat
these steps to view the number to messages sent to dizzyworldTopic. (Observe the
Messages total count.)
(Optional) Set up the solution, if unable to complete the lab.
6.1 Set up the solution for this lab, if you are unable to complete it. Make sure that
HRDatabase, AdminServer, and dizzy1 are running. Open a command prompt using
./prompt.sh that is located in the <STUDENT>/bin directory. Change to the
<LAB_HOME> directory and enter:
ant setup_solution
After completing this practice, you should be able to monitor transactions in the Administration
Oracle University and African Legend Indigo (PTY) LTD use only
Console.
Dizzyworld is dedicated to helping its employees save for their retirement. It offers
employees a money market savings account and a 401K retirement account. Employees
are allowed to freely transfer money between these two accounts.
Transactions are a group of steps that have to operate as a single step. Either all
operations succeed or the state of the system rolls back as if none of the steps occurred.
Oracle WebLogic Server allows administrators to monitor transactions through the
Administration Console.
ant setup_exercise
2. Make sure that you have configured the dizzyworldDS data source in the previous
Configuring Data Sources lab.
Oracle University and African Legend Indigo (PTY) LTD use only
3. Deploy the retirement.war Web application.
4. Test the deployed retirement.war Web application by accessing the application and
use the application to make the following transfers:
Note: Some of the people listed above may have insufficient funds, which is according to
the design of the application.
After making these transfers, monitor the transactions in the Administration Console and
answer the following questions:
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Make sure you have configured the dizzyworldDS data source in the previous lab on
Configuring Data Sources.
2.1 Make sure that HRDatabase, AdminServer, and dizzy1 are running.
2.2 To ensure that the dizzyworldDS data source is running on the dizzy1 Managed
Server, navigate to dizzyworld > Services > JDBC > Data Sources. Click
dizzyworldDS under the Data Sources table, and then click the Monitoring tab. To
make sure that the data source is deployed, look for the dizzy1 entry in the Statistics
table.
Deploy the retirement.war Web application.
3.1 Navigate to the <LAB_HOME>/exercise directory, locate the retirement.war file,
and copy it to the <WORK_HOME>/applications directory.
3.2 Deploy the retirement.war Web application that is located in the
<WORK_HOME>/applications directory.
Make sure that you opt to install this deployment as an application, target the application
to dizzy1, and select Copy this application onto every target for me for Source
accessibility on the Optional Settings page.
The retirement application allows employees to transfer money between their 401K
savings plan and a typical money market savings account.
Test the deployed retirement.war Web application.
4.1 Open a Web browser and navigate to http://localhost:7003/retirement.
Oracle University and African Legend Indigo (PTY) LTD use only
Katherine Fredericktransfer from savings to 401K8900
Note: Some of the people listed above may have insufficient funds, which is according to
the design of the application.
4.3 After making these transfers, monitor the transactions in the Administration Console by
navigating to dizzyworld > Environment > Servers, click dizzy1 under the Servers
table, and then click the Monitoring > JTA tab. Answer the following questions:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
After completing this practice, you should become familiar with configuring users, passwords,
and groups in the default realm called myrealm.
Dizzyworld has four employees who would need to be authenticated into the Oracle
WebLogic Server environment. Each employee has a different role within the company,
but some belong to common groups. All employees belong to the group employees;
some belong to a group called managers.
Authentication is the who of security. This involves verifying that the individuals are
the entities that they say they are.
Oracle University and African Legend Indigo (PTY) LTD use only
Figure 5: Secure Access Process
Oracle University and African Legend Indigo (PTY) LTD use only
Basic Instructions
1. Set up the exercise by opening a command prompt using ./prompt.sh that is located in
<STUDENT>/bin. Change to the <LAB_HOME> directory and enter:
ant setup_exercise
2. Create the groups employees and managers in the dizzyworld domain according to
Table 4.
3. Create the users for the dizzyworld domain and associate the groups with each user
according to Table 4.
4. (Optional): To set up the solution for this lab, open a command prompt using
./prompt.sh that is located in the <STUDENT>/bin directory. Change to the
<LAB_HOME> directory and enter:
ant setup_solution
After completing this exercise, you should be able to get hands-on experience of setting security
on a Web application.
Oracle University and African Legend Indigo (PTY) LTD use only
The Dizzyworld department wants to deploy an application that allows employees to
generate absence reports and to request time off. The application also allows managers to
close the office. However, only managers should be allowed to close the office.
Therefore, you need to set security on specific resources in this application, allowing only
users in the managers group to access certain URLs. You configure security directly in
the Administration Console so that only users in this group can make requests on the
URL pattern /managers/*. You use the timeoff.war Web application in this lab.
For reference, see Figure 6.
System administrators usually work with application developers to set security on Web
applications. The developers know what belongs in their Web application and the
structure, and the administrator is familiar with the users defined in the Oracle WebLogic
Server environment.
Specifications
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Oracle University and African Legend Indigo (PTY) LTD use only
2. Deploy the timeoff.war Web application and configure security settings for the Web
application by selecting the following option while deploying the application:
Custom Roles: Use roles that are defined in the Administration Console; use policies that
are defined in the deployment descriptor.
Create a new role URL pattern for the Web application by specifying the following
properties:
URL Pattern: /managers/*
Name: director
Provider Name: XACMLRoleMapper
3. Start the timeoff Web application.
After completing this exercise, you should be able to configure additional security constraint
conditions for a deployed Web application.
Oracle University and African Legend Indigo (PTY) LTD use only
Note: For Lab09-3
setup_solution Adds role and security policy to timeoff.war using the WLST script
(You have to edit the script before you run this command as described in readme.txt.)
Interactive roles and policies can be enforced at the domain level (global scope) and/or at the
resource level (for all types of resources such as Web applications, EJBs, JDBC, JNDI, JMS, and
so on.). In this lab, you introduce an additional security constraint stating that managers can close
an office only on a certain day of the month.
Specifications
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Oracle University and African Legend Indigo (PTY) LTD use only
2. Add a new role condition for the deployed timeoff.war Web application stating that an
office can be open only on a certain day of the month (between 1 and 31, representing the
calendar day).
3. Test the timeoff Web application.
Oracle University and African Legend Indigo (PTY) LTD use only
Configure keystores
Configure secure sockets layer (SSL)
The Dizzyworld department has decided to configure SSL and keystores to ensure secure
communications between a server and the client.
Many applications need the security of communicating over the secure sockets layer
(SSL). This provides secure communications between the server and the client, or
between two servers. In this lab, you configure SSL and the keystores for the dizzy1
Managed Server in the dizzyworld domain.
Identity Keystore
Keystore filename dw_identity.jks
Keystore directory $WEBLOGIC_DOMAIN
Keystore password dwstorepass
Keystore type JKS
Trust Keystore
Keystore filename cacerts
Keystore directory $JAVA_HOME/jre/lib
Keystore password changeit
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
Run the Java keytool -genkey command. For example:
keytool genkey v alias dwkey keyalg RSA keysize 512
-dname "CN=localhost, OU=Dizzyworld Web,
O=Dizzyworld\, Inc., C=US"
-keypass dwkeypass
-validity 365
-keystore dw_identity.jks
-storepass dwstorepass
Note: The private key file and the certificate have been provided to you for
testing.
Make sure that AdminServer and dizzy1 are running
Oracle University and African Legend Indigo (PTY) LTD use only
Open a prompt using ./prompt.sh that is located in <STUDENT>/bin
Enter ant setup_solution from <LAB_HOME>
After completing this exercise, you should be familiar with the WLS features for strengthening
against password attacks.
Oracle University and African Legend Indigo (PTY) LTD use only
The Dizzyworld department has decided to ensure protection against attacks by configuring the
User Lockout setting for Oracle WebLogic Server using the Administration Console.
In this lab, you strengthen WLS against password guessing. As an administrator, you
monitor User Lockout and decide whether to unlock that user or not.
Basic Instructions
1. Set up the exercise by opening a command prompt using ./prompt.sh that is located in
<STUDENT>/bin. Change to the <LAB_HOME> directory and enter:
ant setup_exercise
2. Configure User Lockout using the Administration Console by specifying the following
properties:
Lockout Threshold: 3
Lockout Duration: 30
3. Verify that the lockout configuration worked by trying to log in to the console with the
incorrect password.
4. Unlock the user john.
5. (Optional): To set up the solution:
Make sure that AdminServer is running
Enter ant setup_solution from <LAB_HOME>
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Security Realms.
2.3 Under the Realms table in the right-hand pane, click myrealm. Navigate to Users and
Groups > Groups. Under the Groups table, click New to create the employees group,
and then create a managers group.
Create the users for the dizzyworld domain and associate the groups with each user.
3.1 Navigate to Users and Groups > Users. Create users, according to the design
specifications (Table 4).
3.2 Associate the correct groups with each user, according to the design specifications, by
navigating to Users and Groups > Users for the security realm. Click the user name that
you want to update. Click the Groups tab. Refer to the design specifications (Table 4)
and associate the user with the appropriate groups by moving them to the Chosen box.
3.3 Save your changes.
(Optional) Set up the solution, if unable to complete the lab.
4.1 To set up the solution for this lab, open a command prompt using ./prompt.sh that is
located in the <STUDENT>/bin directory. Change to the <LAB_HOME> directory and
enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Deploy the timeoff.war Web application and configure security settings for the Web
application.
2.1 If not already open, open a Web browser and navigate to http://localhost:7001/console.
Log in as:
Username: system
Password: weblogic
2.2 If not already running, start AdminServer and the dizzy1 server.
2.3 Navigate to the <LAB_HOME>/exercise directory, locate the timeoff.war file, and
copy it to the <WORK_HOME>/applications directory.
2.4 Deploy the timeoff.war Web application that is located in the
<WORK_HOME>/applications directory by navigating to dizzyworld >
Deployments. Lock the console.
2.5 Select Install, navigate to <WORK_HOME>/applications, and select the
timeoff.war file. Click Next and accept the defaults. Target the application to the
dizzy1 Managed Server and click Next again. On the Optional Settings page, under
the Security header, select the following:
Custom Roles: Use roles that are defined in the Administration Console; use
policies that are defined in the deployment descriptor.
2.6 Under the Source Accessibility header, select the following:
Click OK. In the Standalone Web Application URL Patterns Scoped Roles table, you
Oracle University and African Legend Indigo (PTY) LTD use only
should now see the URL pattern created and assigned to the director role.
2.11 Click director and click Add Conditions. Choose Group from Predicate List and click
Next.
2.12 On the next screen, enter managers as the Group Argument Name. Click Add, and then
Click Finish. Click Save.
Start the timeoff Web application.
3.1 Navigate to dizzyworld > Deployments. Under the Deployments table, it should say
Prepared under the column named State for the timeoff Web application. Select the
check box next to the timeoff application, and then click Start > Servicing all
requests. Click Yes when prompted.
3.2 Verify that the application is successfully deployed by opening a browser and navigating
to http://localhost:7003/timeoff.
Try closing the office by clicking Close An Office. Log on as different users created in
the previous lab. For example, you should find that mary is denied access, but joe is
granted access. The lab ends when the user is able to see the next page after login.
Note: To log on as a new user, close your browser to get rid of the previous cached
authentication information. In Firefox, this includes ALL browsers. Also, make sure that
you explicitly clear the browser cache.
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Add a new role condition for the deployed timeoff.war Web application.
2.1 If not already open, open a Web browser and navigate to http://localhost:7001/console.
Log in as:
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Deployments. Lock the console.
2.3 Click the timeoff Web application in the Deployments table and navigate to Security >
URL Patterns > Roles. Click director on the Standalone Web Application URL Pattern
Scoped Roles page. Click Add Conditions on the Edit a Standalone Web Application
URL Pattern Scoped Role page and from Predicate List, select Access occurs on the
specified day of the month. Click Next.
2.4 Specify the following properties on the Edit Arguments page:
Note: Enter GMT+hh:mm for the time ahead of GMT or GMT-hh:mm for the time
behind GMT. For example, Eastern Standard Time in the USA would be GMT-5:00.
2.5 Click Finish.
2.6 To apply both the new condition that you created and the old condition that was created
in the previous lab, select both the conditions shown on the Edit a Standalone Web
Application URL Pattern Scoped Role page and choose the value And from the list. Save
your changes.
Note: You should see the message, Changes saved successfully, displayed on the
page after you save the conditions.
Oracle University and African Legend Indigo (PTY) LTD use only
so Joe will not be allowed to access the Close An Office part of the Web application.
3.4 Set the system date back when you have finished.
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Enter the following command:
ant setup_exercise
(Alternative to using keytool -genkey): To save time, you may copy the
dw_identity.jks file from the <LAB_HOME>/exercise directory to the
<WORK_HOME>/domains/dizzyworld directory.
Generate a Certificate Signing Request (CSR).
3.1 Open a prompt (if not already open) using ./prompt.sh in <STUDENT>/bin.
3.2 Change to the <WORK_HOME>/security directory.
Oracle University and African Legend Indigo (PTY) LTD use only
<WORK_HOME>/domains/dizzyworld directory.
(Alternative to using keytool -certreq): To save time, you may copy the
dw_cert_request.pem file from the <LAB_HOME>/exercise directory to the
<WORK_HOME>/domains/dizzyworld directory.
Configure the keystores.
4.1 Make sure that AdminServer and dizzy1 are running.
4.2 If not already open, open a Web browser and navigate to http://localhost:7001/console.
Log in as:
Username: system
Password: weblogic
4.3 Navigate to dizzyworld > Environment > Servers > dizzy1 > Configuration >
Keystores. Lock the console.
4.4 On the Keystores page, specify the following properties:
You should see a warning, The certificate issued by your server is not signed by a
trusted authority, because in this lab, you use a self-signed digital certificate. Accept the
certificate (the description may vary from one browser to another). The benefits
Oracle University and African Legend Indigo (PTY) LTD use only
application should then open up in your browser.
(Optional) Set up the solution, if unable to complete the lab.
7.1 To set up the solution, copy the following files from the <LAB_HOME>/exercise
directory to the <WORK_HOME>/domains/dizzyworld directory:
dw_identity.jks (Identity keystore)
dw_cert_request.pem (Identity key)
Note: The private key file and the certificate have been provided to you for testing.
7.2 Make sure that AdminServer and dizzy1 are running. Open a command prompt using
./prompt.sh that is located in the <STUDENT>/bin directory. Change to the
<LAB_HOME> directory and enter:
ant setup_solution
After running the setup_solution script, restart the dizzy1 Managed Server, and
then navigate to https://localhost:7004/benefits to view the results.
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Lockout Threshold: 3
Lockout Duration: 30
2.4 Save and Activate your changes.
2.5 For the changes to take effect, a server restart is required. Shut down dizzy1 first if it is
still running, followed by AdminServer. Then start AdminServer.
Username: system
Password: weblogic
2.7 Navigate to dizzyworld > Environment > Servers > AdminServer > Monitoring >
Security. Lock the console.
Note: You will need to keep the console open throughout the following steps.
Verify that the lockout configuration worked by trying to log in to the console with the
incorrect password.
3.1 Open another Web browser and navigate to http://localhost:7001/console.
Enter a wrong password for the user john at least three times. In the stdout of
AdminServer, you should see the message that the user has been locked out
immediately after the third incorrect login attempt.
Oracle University and African Legend Indigo (PTY) LTD use only
4.1 In your first Admin Console window, click dizzyworld, and then in the right pane,
navigate to Security > Unlock User.
Enter the username of the account that you would like to unlock, which is john.
4.2 Click Save.
4.3 Verify that the user is unlocked by trying to log in to the second Administration Console
session with the correct password.
(Optional) Set up the solution, if unable to complete the lab.
5.1 Set up the solution for this lab, if you are unable to complete it. Ensure that
AdminServer is running. Open a command prompt using ./prompt.sh that is located
in the <STUDENT>/bin directory. Change to the <LAB_HOME> directory and enter:
ant setup_solution
Note: If you run the ant setup_solution script, only a part of the lab is completed,
which is specifying the properties on the User Lockout page (step 2.3). The remaining lab
has to be completed manually.
Oracle University and African Legend Indigo (PTY) LTD use only
Create deployment plans
Deploy enterprise applications along with the deployment plan
Describe the directory structure of an exploded enterprise application for its successful
deployment
The user manually creates an initial deployment plan for an enterprise application that resides
outside the application archive and configures an application for deployment to a specific Oracle
WebLogic Server environment. The deployment plan helps the administrator to easily modify an
applications WebLogic Server configuration for deployment into multiple, differing WebLogic
Server environments without modifying the deployment descriptor files that are included in the
application archive. The user creates a proper directory structure for the successful deployment of
enterprise applications that are packaged with the deployment plan. See Figure 8.
Specifications
Figure 8: Directory Structure
Root
Application directory
app
plan
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Oracle University and African Legend Indigo (PTY) LTD use only
2. Copy the HRApp application from the <LAB_HOME>\exercise directory to the
<LAB_HOME>\work\app directory.
3. Use weblogic.PlanGenerator to create a plan entitled plan.xml for the HRApp
application. Open a command prompt using ./prompt.sh under <STUDENT>/bin and
change to the <LAB_HOME> directory. Execute the following command:
Oracle University and African Legend Indigo (PTY) LTD use only
The importance and advantages in using Production Redeployment
The user gets to deploy the first version of an application and view the application. Thereafter, the
user redeploys the second version of the same application, which is modified a bit, and views this
version of the application. The old client, if not yet finished with using the application, still has
access to the first version of the application, whereas the new clients get connected to the second
version of the application. When the first version of the application is no longer in use by a client,
the state of the first version of the application is retired and that version of the application
becomes unavailable.
Specifications
WebLogic Server
New clients
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Oracle University and African Legend Indigo (PTY) LTD use only
2. Delete all the other companyStoreAdmin applications deployed to AdminServer.
3. Create a deploy1 and deploy2 directory in the <LAB_HOME> directory. Copy the
companyStoreAdmin application from the <LAB_HOME>/exercise/deployMFv1
directory to the <LAB_HOME>/deploy1 directory. Also copy the companyStoreAdmin
application from <LAB_HOME>/exercise/deployMFv2 to the <LAB_HOME>/deploy2
directory.
4. Deploy the companyStoreAdmin application that is stored in the
<LAB_HOME>/deploy1 directory such that the version number for that application is v1.
5. View the deployed application, v1.
6. The State of the deployed application v1 should be Active.
7. Deploy the companyStoreAdmin application from the <LAB_HOME>/deploy2
directory such that the version number for that application is v2.
8. After you redeploy the application as v2, the State of the application v1 becomes Retired
and the State of the newly deployed application v2 is Active.
9. View the deployed application v2 for changes in the background color of the heading that
should now be green and the text displayed is v2. All the new clients get connected to v2
of the application. When v1 of the application is no longer in use by a client, the State of
the application becomes Retired.
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Enter the following command:
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
1.4 Start AdminServer and dizzy1 if they are not already running.
Username: system
Password: weblogic
Deploy the HRApp application from the <LAB_HOME>/exercise directory to the
<LAB_HOME>/work/app directory. Deploy the HRApp application.
2.1 In the Administration Console, navigate to dizzyworld > Deployments. Lock the
console, if necessary.
2.2 Click Install in the right pane and browse to the <LAB_HOME>/exercise directory.
Select HRApp and click Next.
2.3 On the Install Application Assistant page, select Install this deployment as an
application and click Next.
2.4 Target the application to dizzy1. Click Next.
2.5 On the Optional Settings page, enter HRApp as the name and select Copy this
application onto every target for me under the Source Accessibility section. Click
Finish and Activate the changes.
2.6 Navigate to dizzyworld > Deployments and select the check box for the HRApp
application. Click Start > Servicing all Requests.
2.7 Point your browser to http://localhost:7003/HRApp.
2.8 Create a work directory in the <LAB_HOME> directory, and then create a directory app in
the work directory. Copy the HRApp application from the <LAB_HOME>/exercise
directory to the <LAB_HOME>/work/app directory.
Oracle University and African Legend Indigo (PTY) LTD use only
PlanGenerator is a utility for creating a deployment plan template based on the
standard descriptors included in an application. The resulting plan (-plan option) will
describe the application structure, identify all deployment descriptors, and will export a
subset of the applications configurable properties.
By default, the plan exports only application dependencies. This can be overridden with
any one of the following:
-declarations: Export resources defined by the application
-configurables: Export non-resource-oriented configurable properties
-dynamics: Export properties that may be changed in a running application
-all: Export all changeable properties
-none: Export no properties
3.4 Navigate to the <LAB_HOME>/work/plan directory and open plan.xml using a text
editor.
3.5 Set /EEOAPP as a value for
<variable><name>WeblogicWebApp_ContextRoots_xxxxxxxxx</name></variable>.
Note: This is around Line 26 in the code.
3.6 Remove the attribute xsi:nil="true" from the <value> tag, so that it appears thus:
<variable>
<name>WeblogicWebApp_ContextRoots_xxxxxxxxxx</name>
<value>/EEOAPP</value>
</variable>
3.7 In the following area:
<variable-assignment>
<name>WeblogicWebApp_ContextRoots_xxxxxxxxxxxx </name>
(Note: It is around line 137.)
Add the following line:
<operation>replace</operation>
Oracle University and African Legend Indigo (PTY) LTD use only
Select plan.xml and click Next.
4.5 Select Redeploy this application using the following deployment files (if not
selected). Click Next, and then click Finish. Click Activate changes.
View the deployed application.
5.1 Point your browser to http://localhost:7003/EEOAPP.
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Enter the following command:
ant setup_exercise
Note: There is no automated solution set up for this lab, so you will have to walk through
all the steps to complete this lab.
Username: system
Password: weblogic
2.3 Click Lock & Edit in Change Center in the left pane of the Administration Console.
2.4 Note: If you are redoing this lab, perform step 2.4 and 2.5 otherwise skip to step 3.1.
Click Deployments under the dizzyworld domain structure in the left pane of the
Administration Console. In the right pane on the Summary of Deployments page, select
any existing companyStoreAdmin application check boxes under the Deployment table
and stop the applications by clicking Stop > Force Stop Now. Click Yes when prompted
to confirm that the selected deployments are to be immediately stopped. On the
Summary of Deployments page, select all the existing companyStoreAdmin application
check boxes under the Deployment table again and delete them by clicking Delete. Click
Yes when prompted.
2.5 Click Activate Changes in Change Center in the left pane of the Administration Console.
Copy the companyStoreAdmin application.
3.1 Create the deploy1 and deploy2 directories in the <LAB_HOME> directory. Copy the
companyStoreAdmin application from the <LAB_HOME>/exercise/deployMFv1
directory to the <LAB_HOME>/deploy1 directory. Also copy the companyStoreAdmin
application from <LAB_HOME>/exercise/deployMFv2 to the <LAB_HOME>/deploy2
directory.
Deploy the companyStoreAdmin application stored in the <LAB_HOME>/deploy1 directory
such that the version number for that application is v1.
Oracle University and African Legend Indigo (PTY) LTD use only
5.1 Point your browser to http://localhost:7001/csAdministration.
The background color of the heading should be navy.
Note: Do not close this browser because it is required to show further results.
State of the deployed application v1 (version1) should be Active.
6.1 Click Deployments under the dizzyworld domain structure in the left pane of the
Administration Console. In the right pane on the Summary of Deployments page, check
to see whether the State of the companyStoreAdmin (v1) application is Active.
(Note: You may see a warning message under the Health column.)
Deploy the companyStoreAdmin application stored in the <LAB_HOME>/deploy2 directory
such that the version number for that application is v2.
7.1 In the command prompt, navigate to the <LAB_HOME>/deploy2 directory. Enter the
following to deploy the companyStoreAdmin.ear application:
You may need to reload to see the change due to caching in some browsers.
All the new clients get connected to v2 of the application. When v1 of the application is
Oracle University and African Legend Indigo (PTY) LTD use only
no longer in use by a client, the State of the application becomes Retired. (It may take a
while for the state to change.)
Oracle University and African Legend Indigo (PTY) LTD use only
Oracle University and African Legend Indigo (PTY) LTD use only
After completing this practice, you should be able to:
Create a cluster of Managed Servers
Start clustered servers
The Dizzyworld system architects determined that the Dizzyworld applications would benefit
from a highly available environment, which load-balances requests to different servers. This
would make the Dizzyworld applications more reliable to employees and customers in case of
server failure. It would also allow for more processing capabilities when application traffic is
heavier than usual.
In this lab, you create a cluster of three servers, dizzy1, dizzy2, and dizzy3. This cluster
will eventually host your Dizzyworld applications but for now, you want to confirm that they start
properly and join the cluster.
Note: For Lab12-1
setup_solution Creates a cluster using the WLST script
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
ant setup_exercise
2. If they are running, shut down the dizzy1, dizzy2, and dizzy3 Managed Servers. If it
is not open, start a Web browser and navigate to http://localhost:7001/console. Log in as:
Oracle University and African Legend Indigo (PTY) LTD use only
Username: system
Password: weblogic
Name: dizzyworldCluster
Multicast Address: 239.192.0.0 (default)
Multicast Port: For example, a unique number (Check with your instructor.)
Servers: dizzy1, dizzy2, dizzy3
3. Start dizzy1, dizzy2, and dizzy3. Watch each server as it tries to synchronize with
other servers in the cluster and as it finally joins the cluster. During startup of the servers,
if prompted, enter the following:
Username: system
Password: weblogic
4. (Optional): To set up the solution for this lab, open a command prompt using
./prompt.sh that is located in <STUDENT>/bin directory. Change to the <LAB_HOME>
directory and enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
The Dizzyworld architects have checked your current cluster configuration and determined that to
take full advantage of the cluster, you need a proxy server in front of the cluster to proxy requests
from the clients to the cluster. However, they have not decided whether they want to use
HTTPClusterServlet within a WebLogic Server to proxy the requests or whether they want
to use your external Apache Web server.
You have created your dizzyworldCluster but you still have not finished setting up the
environment, so the application requests are sent to different servers in the cluster. In this lab, you
create two proxy servers: one using HTTPClusterServlet in a new WebLogic Server called
proxyServer and the other as a plug-in for your Apache Web server.
Oracle University and African Legend Indigo (PTY) LTD use only
dizzyworld
proxyServer (with
HTTPClusterServle
t)
dizzyworldCluster
dizzyMachine1 dizzyMachine2
Oracle University and African Legend Indigo (PTY) LTD use only
Apache Web Server
(with proxy plug-in)
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
Server Name: proxyServer
Server Listen Address: localhost
Server Listen Port: 7009
Standalone Server: True
Note: Make sure that no other Web server is running on port 80.
Listen 127.0.0.1:80
ServerAdmin admin@dizzyworld.com
ServerName wls.dizzyworld.com:80
apachectl start
Verify that Apache has started by opening a browser window and navigating to
http://localhost. You should see the Apache test page.
<IfModule mod_weblogic.c>
WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
MatchExpression /*
</IfModule>
Oracle University and African Legend Indigo (PTY) LTD use only
<Location /weblogic>
SetHandler weblogic-handler
WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
DebugConfigInfo ON
PathTrim /weblogic
</Location>
Restart the Apache Web server, AdminServer, dizzy1, dizzy2, and dizzy3.
9. Test the Apache Web server by opening a Web browser and navigating to the
browsestore application on the proxy server at http://localhost/browsestore.
Browse the application and check the server consoles to see which servers are handling
the requests.
10. (Optional): To set up the solution for this lab, open a command prompt using
./prompt.sh that is located in the <STUDENT>/bin directory. Change to the
<LAB_HOME> directory and enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Create a cluster.
2.1 If they are already running, shut down dizzy1, dizzy2, and dizzy3 Managed Servers.
2.2 If it is not already open, start a Web browser and navigate to
http://localhost:7001/console. Log in as:
Username: system
Password: weblogic
2.3 Navigate to dizzyworld > Environment > Clusters. Lock the console, if necessary.
2.4 Create a new cluster with the following properties:
Name: dizzyworldCluster
Messaging Mode: Multicast
Multicast Address: 239.192.0.0 (default)
Multicast Port: For example, 7011 (Check with your instructor.)
Each student must use a unique port number between the range 7011 and 7031.
Click OK.
2.5 Return to dizzyworldCluster and click the Configuration > Servers tab.
2.6 Add the existing servers dizzy1, dizzy2, and dizzy3 to the cluster.
2.7 Activate your changes.
2.8 Navigate to dizzyworld > Environment > Servers and view the list of servers. Note
that dizzy1, dizzy2, and dizzy3 are now part of dizzyworldCluster.
Start the clustered servers.
3.1 Using the previously opened prompt, navigate to
<WORK_HOME>/domains/dizzyworld/bin.
3.2 Start the dizzy1 server by entering the following in the prompt:
Username: system
Password: weblogic
3.4 Watch the server start up in the prompt window. At some point, you should see it start
listening for cluster announcement and waiting to synchronize with other servers in the
cluster. Because the other servers have not started yet, there is nothing for it to
synchronize with yet.
Oracle University and African Legend Indigo (PTY) LTD use only
<Notice> <Cluster> <BEA-000138> <Listening for announcements from
cluster dizzyworldCluster on 239.192.0.0:7011.>
Username: system
Password: weblogic
3.8 Watch the server start up in the prompt window. Because one of the servers in the cluster
has started up, dizzy2 synchronizes with dizzy1 and downloads the cluster JNDI tree.
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Note: When the exercise is set up, a simple application is deployed to the cluster to test
the proxy servers and the cluster. You will manually deploy a more complex application to
the cluster in a later lab.
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Environment > Servers. Lock the console, if necessary.
2.3 Create a new server with the following properties:
Click Next.
2.4 Click Finish. Activate your changes.
2.5 Open a prompt using ./prompt.sh in <STUDENT>/bin. Navigate to the
<WORK_HOME>/domains/dizzyworld/bin directory.
2.6 Start the proxyServer server by entering the following in the prompt. (Use
system/weblogic as username/password.):
<servlet-name>HttpClusterServlet</servlet-name>
<servlet-
class>weblogic.servlet.proxy.HttpClusterServlet</servlet-class>
3.3 After the <servlet-class> element, add the <init-param> element that tells the
servlet what servers are in the cluster.
Oracle University and African Legend Indigo (PTY) LTD use only
<init-param>
<param-name>WebLogicCluster</param-name>
<param-
value>localhost:7003|localhost:7005|localhost:7007</param-value>
</init-param>
3.4 After </servlet>, add the <servlet-mapping> elements that map
HTTPClusterServlet to any request for JSPs, HTML, and HTM pages plus anything
that is not recognized.
<servlet-mapping>
<servlet-name>HttpClusterServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>HttpClusterServlet</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>HttpClusterServlet</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>HttpClusterServlet</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<context-root>/</context-root>
4.3 Save and close the file.
jar cf ../proxyApp.war *
5.2 Copy <LAB_HOME>/exercise/proxyApp.war to <WORK_HOME>/applications.
5.3 Deploy <WORK_HOME>/applications/proxyApp.war to the proxyServer. Activate
Oracle University and African Legend Indigo (PTY) LTD use only
your changes and start the application.
Test the WebLogic proxy server.
6.1 Open the dizzy1, dizzy2, and dizzy3 server windows and arrange them so that you
can see all three simultaneously.
6.2 Open a Web browser and navigate to the browsestore application that is accessed
through the proxy server at http://localhost:7009/browsestore.
6.3 Check the server windows to see which server received the request.
6.4 Click the Browse Store link. Check the server windows to see which server received the
request.
6.5 Select a category and retrieve the items. Return to the home page, select another
category, and retrieve the items again. Check the server windows to see which server
received the request. You should see different servers handling each set of requests.
Set up the Apache Web server.
7.1 Change to the root user (root/oracle) for the remaining part of Lab12-2. Make sure
that you revert to the oracle user from next lab onwards.
Navigate to <APACHE_HOME>/conf and open httpd.conf in a text editor. This file is
used to customize the Apache settings.
7.2 Find the Listen section and add the following line:
Listen 127.0.0.1:80
Note: Comment out Listen 80.
7.3 Find the ServerAdmin section and add the following line:
ServerAdmin admin@dizzyworld.com
7.4 Find the ServerName section and add the following line:
ServerName wls.dizzyworld.com:80
7.5 Save and close the file.
7.6 In the prompt, navigate to <APACHE_HOME>/bin and enter:
./apachectl start
Note: If you do not see the Apache test page, you may need to manually start the
Apache server. Open a command prompt, change the directories to the
<APACHE_HOME>/bin directory, and enter apache.
7.8 Verify that mod_so.c is enabled by navigating to <APACHE_HOME>/bin in the
command prompt and entering ./apachectl l.
Oracle University and African Legend Indigo (PTY) LTD use only
mod_so.c should be one of the modules listed.
Implement the proxy plug-in in the Apache Web server.
8.1 Copy the mod_wl_22.so file from the <LAB_HOME>/exercise/linux folder to
<APACHE_HOME>/modules.
8.2 Open the httpd.conf file located in <APACHE_HOME>/conf.
Note: You may want to make a backup copy of this file first.
8.3 You must install the Apache plug-in module. In httpd.conf, find the commented line
that starts with:
<IfModule log_config_module>
Add the following <IfModule> and <Location> definitions above this line:
<IfModule mod_weblogic.c>
WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
MatchExpression /*
</IfModule>
<Location /weblogic>
SetHandler weblogic-handler
WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
DebugConfigInfo ON
PathTrim /weblogic
</Location>
Note: You can also copy and paste this text from
<LAB_HOME>/exercise/httpdconf.txt.
Note: The command should echo Syntax OK. If not, fix the syntax errors and repeat the
process.
8.6 Restart the Apache Web server.
Stop and start the Apache server using the stop and start commands mentioned earlier.
Oracle University and African Legend Indigo (PTY) LTD use only
8.7 Start AdminServer.
8.8 Start dizzy1, dizzy2, and dizzy3 using the command line.
Test the Apache Web server as a proxy server.
9.1 After the servers have started, open a Web browser and navigate to the browsestore
application via Apache at http://localhost/browsestore.
9.2 Check the server windows to see which server received the request.
9.3 Click the Browse Store link.
9.4 Select a category and retrieve the items. Return to the home page. Check the server
windows to see which server received the request. You should see different servers
handling each set of requests.
(Optional) Set up the solution, if unable to complete the lab.
10.1 To set up the solution for this lab, open a command prompt using ./prompt.sh that is
located in the <STUDENT>/bin directory. Change to the <LAB_HOME> directory and
enter:
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
Deploy an application to a cluster
Set up JDBC session replication
Now that you have your cluster set up with a proxy server, you need to deploy an application to
the cluster. The application uses sessions to save shopping cart information. Therefore, to fully
take advantage of the cluster, you need to set up session replication. However, the system
architects are not sure whether they want to use in-memory replication or JDBC replication.
With the three servers, you create two replication groups. The first, dizzyRepGroup1, will
contain the servers, dizzy1 and dizzy2. The second, dizzyRepGroup2, will contain only
the dizzy3 server. You will also set up a database with the WL_SERVLET_SESSIONS table in
order to back up session information.
Oracle University and African Legend Indigo (PTY) LTD use only
Apache Web Server
(with the proxy plug-in)
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
dizzyRepGroup1 dizzyRepGroup2
Primary Replicate
Session d Session
Oracle University and African Legend Indigo (PTY) LTD use only
Apache Web Server
(with the proxy plug-in)
dizzyworldCluster
dizzyMachine1 dizzyMachine2
dizzyRepGroup1 dizzyRepGroup2
Primary
Session
WL_SERVLET_SESSIONS
Session Backup
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
Server Replication Group Preferred Secondary Group
dizzy1 dizzyRepGroup1 dizzyRepGroup2
dizzy2 dizzyRepGroup1 dizzyRepGroup2
dizzy3 dizzyRepGroup2 dizzyRepGroup1
Go shopping and add some items to your shopping cart. View the shopping cart and
check the dizzy1, dizzy2, and dizzy3 server consoles to see which server is handling
the requests.
Kill the server that is handling the requests, then return to the application and add another
item to the shopping cart. View the shopping cart. All the items should still be in it. Check
the server consoles again to see which server is handling the requests.
Name: SessionDS
JNDI Name: SessionDS
Database Type: PointBase
Database Driver: *PointBases Driver (Type 4) Versions: 4.X, 5.X
Supports Global Transactions
One-Phase Commit
Database Name: HRDatabase
Oracle University and African Legend Indigo (PTY) LTD use only
Host Name: localhost
Port: 9092
Database User Name: PBPUBLIC
Password: PBPUBLIC
Targets: dizzyworldCluster
7. Using the PointBase Console that is located at
<WEBLOGIC_HOME>/common/eval/pointbase/tools, log in with the following
properties and create the table that is found in
<LAB_HOME>/exercise/SessionTable.txt
Driver: com.pointbase.jdbc.jdbcUniversalDriver
URL: jdbc:pointbase:server://localhost:9092/HRDatabase
User: PBPUBLIC
Password: PBPUBLIC
8. Modify <LAB_HOME>/exercise/ShoppingCart/WEB-INF/weblogic.xml to store
session information in a database. You will need to change the <persistent-store-
type> element and add the following elements:
<persistent-store-pool>
<persistent-store-table>
9. Package the modified application into ShoppingCart.war, copy it to
<WORK_HOME>/applications, and overwrite the existing application. Update the
application in the Administration Console.
10. Test the application again by adding items to the shopping cart, viewing the server that is
handling the requests, killing the server, adding more items to the shopping cart, and then
viewing the server handling the requests again. You may also want to view the contents of
the WL_SERVLET_SESSIONS table in PointBase to confirm that session information is
being written to the database.
11. (Optional): All the servers in dizzyworldCluster must be running before you set up
the solution for this lab.
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
1.3 Enter the following command:
ant setup_exercise
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Environment > Servers > dizzy1 > Configuration >
Cluster. Lock the console, if necessary.
2.3 Set the following properties:
<session-descriptor>
<timeout-secs>300</timeout-secs>
<invalidation-interval-secs>60</invalidation-interval-secs>
<persistent-store-type>replicated_if_clustered</persistent-
store-type>
Oracle University and African Legend Indigo (PTY) LTD use only
</session-descriptor>
Note: This enables in-memory replication for this application if it is deployed to clustered
servers.
3.3 Save and close the file.
Package and deploy the Shopping Cart application to the cluster.
4.1 If it is not already open, open a prompt using prompt.sh in <STUDENT>/bin.
4.2 Navigate to <LAB_HOME>/exercise/ShoppingCart.
4.3 Package the Company Store Web application into a .war file by entering the following in
the prompt:
jar cf ../ShoppingCart.war *
4.4 Move the new ShoppingCart.war file from <LAB_HOME>/exercise to the
<WORK_HOME>/applications directory.
4.5 Ensure that all the servers in your cluster are running.
4.6 In the Administration Console, navigate to dizzyworld > Deployments. Lock the
console, if necessary.
4.7 Click Install. Navigate to <WORK_HOME>/applications and select
ShoppingCart.war. Click Next.
4.8 Select Install this deployment as an application and click Next.
4.9 Select dizzyworldCluster as the deployment target and click Next.
4.10 Click Next, and then click Finish.
4.11 Activate your changes.
4.12 Return to dizzyworld > Deployments and select the ShoppingCart application.
Select Start > Servicing all requests. Click Yes, when prompted. The application should
now be active and ready to be accessed.
Test the in-memory session replication.
5.1 Open a Web browser and navigate to http://localhost/ShoppingCart/welcome.jsp.
Note: You are using the Apache Web server to proxy requests to the servers in the
cluster.
5.2 Select Go Shopping and add something to your shopping cart.
Oracle University and African Legend Indigo (PTY) LTD use only
5.7 View the shopping cart. All the items that you purchased should be in the cart. Based on
the replication groups and machines, which server do you think is handling the request?
5.8 Check the server consoles to see which server is now handling the request.
5.9 Restart the server that was killed.
Create a data source.
6.1 In the Administration Console, navigate to dizzyworld > Services > JDBC > Data
Sources and create a new data source with the following properties:
Name: SessionDS
JNDI Name: SessionDS
Database Type: PointBase
Database Driver: *PointBases Driver (Type 4) Versions: 4.X, 5.X
Supports Global Transactions
One-Phase Commit
Database Name: HRDatabase
Host Name: localhost
Port: 9092
Database User Name: PBPUBLIC
Password: PBPUBLIC
Targets: dizzyworldCluster
Note: This data source is used by the application to access the database and write
session information.
Add the WL_SERVLET_SESSIONS table to database.
7.1 Open the PointBase console using ./startPointBaseConsole.sh in
<WEBLOGIC_HOME>/common/eval/pointbase/tools.
7.2 Log in using the following properties:
Driver: com.pointbase.jdbc.jdbcUniversalDriver
URL: jdbc:pointbase:server://localhost:9092/HRDatabase
User: PBPUBLIC
Password: PBPUBLIC
Oracle University and African Legend Indigo (PTY) LTD use only
8.1 Open <LAB_HOME>/exercise/ShoppingCart/WEB-INF/weblogic.xml in an XML
editor or text editor.
8.2 Change the <session-descriptor> element to support the JDBC-based session
replication:
<session-descriptor>
<timeout-secs>300</timeout-secs>
<invalidation-interval-secs>60</invalidation-interval-secs>
<persistent-store-type>jdbc</persistent-store-type>
<persistent-store-pool>SessionDS</persistent-store-pool>
<persistent-store-table>WL_SERVLET_SESSIONS</persistent-
store-table>
</session-descriptor>
Note: You are using the Apache Web server to proxy requests to the servers in the
cluster.
Oracle University and African Legend Indigo (PTY) LTD use only
10.6 Right-click WL_SERVLET_SESSIONS and select SELECT * FROM
PBPUBLIC.WL_SERVLET_SESSIONS.
10.7 View the results. You should see a session record. If you do not, wait for a minute, and
then try again.
10.8 To simulate a server failure, kill the server instance that is handling your requests by
entering CTRL-C in the server console.
10.9 Continue shopping and add something else to your shopping cart.
10.10 View the shopping cart. All the items that you purchased should be in the cart. Based on
the replication groups and machines, which server do you think is handling the request?
10.11 Check the server consoles to see which server is now handling the request.
(Optional) Set up the solution, if unable to complete the lab.
11.1 All the servers in dizzyworldCluster must be running before you set up the solution
for this lab.
ant setup_solution
Oracle University and African Legend Indigo (PTY) LTD use only
Create a second cluster for a multi-tier architecture
Inspect a Web application and an EJB application that are designed for deployment on a
multi-tier cluster
Deploy a Web application to one tier of the cluster
Deploy an EJB application to the second tier of the cluster
The architects have decided that they would like an environment with a multi-tiered cluster for
the Company Store application. The application developers have split the application into the
front-end Web application and the back-end EJB application. They have designed the JSPs to
look up the EJBs on a different set of servers and they have compiled the EJBs to be cluster-
aware.
The deployed application is divided into two: the Web application and the EJB application. The
Web part of the application sends data to the EJBs, which return the catalog items to the Web
application to display to the user. The users are also able to add the items to their shopping carts,
view their shopping cart, and check out.
The EJB part of the application comprises the following EJBs:
ShoppingCartBean (session)
ProcessPaymentBean (session)
ClientBean (entity)
CatalogBean (entity)
The ShoppingCartBean maintains the shopping cart session information and should be
available on a secondary server if the primary server fails. The CatalogBean maintains the
catalog information that the application uses and should be available on all servers that can
handle requests from the Web application.
1. A client adds
an item to its
2. The Web server shopping cart.
Oracle University and African Legend Indigo (PTY) LTD use only
load balances the
request to dizzy1. Apache Web Server
(with the proxy plug-in)
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
4. A request
from the Web
dizzyworldEJBCluster application to
3. Web application create a new
does a JNDI lookup dizzyMachine3 shopping cart
on dizzy4 for or add an
ShoppingCartHome item to an
and a replica-aware existing one
stub is returned. dizzy4 dizzy5 is load
balanced to
dizzy5.
Company Store Company Store
EJB EJB
Application Application
ant setup_exercise
2. Create a second cluster of servers with the following properties, in order to set up a
multitier architecture:
Oracle University and African Legend Indigo (PTY) LTD use only
Name: dizzyworldEJBCluster
Messaging Mode: Multicast
Multicast Address: 239.192.0.0 (default)
Multicast Port: For example, 7032 (Check with your instructor.)
Each student must use a unique port number between the 70327052 range.
When you have finished inspecting the application, package the Web application into
CompanyStore.war and move the new CompanyStore.war file to
<WORK_HOME>/applications.
4. Open <LAB_HOME>/exercise/companyStoreEJBs/META-INF/weblogic-ejb-
jar.xml in a text or XML editor and look for the elements in each EJB that defines their
clustering abilities.
When you have finished inspecting the application, package the EJB application into
companyStoreEJBs.jar and move the new companyStoreEJBs.jar file to
<WORK_HOME>/applications.
Oracle University and African Legend Indigo (PTY) LTD use only
Change the memory settings for dizzy1 through dizzy5 so that they have a minimum
and maximum of 256 MB available to them.
Browse the store catalog and add several items to your shopping cart. View your
shopping cart. Check the first tier of servers to see which one is handling your requests.
Using the Administration Console and the monitoring capabilities of the
companyStoreEJBs application, check to see which server is handling the EJB
requests.
Kill the server that is handling the EJB requests. Return to the Company Store application,
add another item to the shopping cart, and view the shopping cart. All your items should
still be in the shopping cart.
When you have finished testing, shut down dizzy4 and dizzy5.
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Environment > Servers. Lock the console, if necessary.
2.3 Create a new server with the following properties:
Name: dizzyMachine3
Machine OS: Unix
Click OK.
2.8 Return to dizzyMachine3 and navigate to Configuration > Servers.
2.9 Add dizzy4 and dizzy5 to Machine3.
Name: dizzyworldEJBCluster
Messaging Mode: Multicast
Multicast Address: 239.192.0.0 (default)
Multicast Port: For example, 7032 (Check with your instructor.)
Oracle University and African Legend Indigo (PTY) LTD use only
Each student must use a unique port number between the 70327052 range.
Click OK.
2.12 Return to the cluster and navigate to Configuration > Servers.
2.13 Add the existing servers dizzy4 and dizzy5 to the cluster.
2.14 Activate your changes.
2.15 Navigate to dizzyworld > Services > JDBC > Data Sources > CatalogDS >
Targets. Lock the console, if necessary.
2.16 Select dizzyworldEJBCluster and deselect dizzyworldCluster. Make sure that
only the dizzyworldEJBCluster cluster is targeted. Save your changes.
2.17 Repeat the process for the ClientDS data source. Save and activate your changes.
Inspect and package the Company Store Web application.
3.1 Open <LAB_HOME>/exercise/CompanyStoreApp/retrieveitems.jsp in a text
editor.
try {
Oracle University and African Legend Indigo (PTY) LTD use only
InitialContext ic = new InitialContext(ht);
} catch(Exception e) {
ht.put(Context.PROVIDER_URL,"t3://localhost:8003");
}
The JSP does the initial lookup of the EJB from dizzy4 and if that does not work,
dizzy5. The initial server returns a replica-aware stub, which then handles any requests
to the EJB. So, when the JSP calls the findByCategory method, the stub chooses the
server to send the request to.
3.3 Close the file.
3.4 If it is not already open, open a prompt using prompt.sh in <STUDENT>/bin.
3.5 Navigate to <LAB_HOME>/exercise/CompanyStoreApp.
3.6 Package the Company Store Web application into a .war file by entering the following in
the prompt:
jar cf ../CompanyStore.war *
3.7 Move the new CompanyStore.war file from <LAB_HOME>/exercise to
<WORK_HOME>/applications.
Inspect and package the Company Store EJB application.
4.1 Open <LAB_HOME>/exercise/companyStoreEJBs/META-INF/weblogic-ejb-
jar.xml in a text or XML editor.
<entity-descriptor>
<entity-clustering>
<home-is-clusterable>true</home-is-clusterable>
<use-serverside-stubs>true</use-serverside-stubs>
</entity-clustering>
</entity-descriptor>
Oracle University and African Legend Indigo (PTY) LTD use only
This set of elements tells the weblogic.appc compiler that the entity EJB,
CatalogBean, is clusterable. You should also be able to find the same set of elements
for the ClientBean.
4.3 Look for the following set of elements for the ShoppingCart EJB:
<stateful-session-descriptor>
<stateful-session-clustering>
<home-is-clusterable>true</home-is-clusterable>
<home-load-algorithm>random</home-load-algorithm>
<replication-type>InMemory</replication-type>
</stateful-session-clustering>
</stateful-session-descriptor>
This set of elements tells the weblogic.appc compiler that the stateful session EJB,
ShoppingCart, is clusterable. It also lets the cluster know that load balancing for the
EJB is random (If this is not explicitly defined here, it uses the load-balancing algorithm
set up in config.xml.) and that the session state replication is in-memory.
4.4 Close the file.
4.5 If it is not already open, open a prompt using prompt.sh in <STUDENT>/bin.
4.6 Navigate to <LAB_HOME>/exercise/companyStoreEJBs.
4.7 Package the Company Store EJBs application into a .jar file by entering the following in
the prompt:
jar cf ../companyStoreEJBs.jar *
4.8 Move the new companyStoreEJBs.jar file from <LAB_HOME>/exercise to
<WORK_HOME>/applications.
Deploy the Web and EJB applications to the clusters.
5.1 In the Administration Console, navigate to dizzyworld > Deployments. Lock the
console, if necessary.
5.2 Deploy the CompanyStore.war application to dizzyworldCluster.
5.3 Deploy the companyStoreEJBs.jar application to dizzyworldEJBCluster.
5.4 Activate your changes. Do not start the applications.
Oracle University and African Legend Indigo (PTY) LTD use only
ADMIN_URL=http://localhost:7001
6.5 Add the following line after the ADMIN_URL line:
USER_MEM_ARGS="-Xms256m -Xmx256m
export USER_MEM_ARGS
Note: Due to the restrictive nature of the lab environment, the amount of memory that
each server can use is restricted.
6.6 Save and close the file.
6.7 Copy the CompanyStoreEJBsClient.jar library from <LAB_HOME>/exercise to
<WORK_HOME>/domains/dizzyworld/lib.
Note: This library is used by the Web application when accessing the EJB packages. By
placing it in the lib directory of your domain, when you restart the servers, it is
automatically added to classpath.
6.8 Using the prompt that was opened earlier, or a new one, navigate to
<WORK_HOME>/domains/dizzyworld/bin and start dizzy1 through dizzy5 using
xterm T <server_name> -e ./startClusteredManagedWebLogic.sh
<server_name> &.
Note: Wait until each server is RUNNING before you start the next one. Replace
<server_name> with the name of the server that you are starting, for example, dizzy1.
At this point, the performance of the machine slows down considerably. So be patient.
Test failover and load balancing in a multitier cluster.
7.1 In the Administration Console, navigate to dizzyworld > Deployments. Start the
CompanyStore and companyStoreEJBs applications.
7.2 Open a Web browser and navigate to http://localhost/welcome.jsp.
7.3 Browse the store catalog and add several items to your shopping cart.
7.4 View your shopping cart.
7.5 Check the dizzy1, dizzy2, and dizzy3 server consoles to see which server is
handling your request.
Oracle University and African Legend Indigo (PTY) LTD use only
7.9 When you have finished testing, shut down dizzy4 and/or dizzy5.
Oracle University and African Legend Indigo (PTY) LTD use only
Test the data source clustering capabilities
Configure a multi data source
Fail over a data source
The developers have given you an application that requires access to a database. This application
needs to be targeted to a cluster. The architects have determined that the database will be highly
available, so you need to set up the environment to take advantage of this.
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
Oracle University and African Legend Indigo (PTY) LTD use only
dizzy1 dizzy2 dizzy3
HRDatabase
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
Oracle University and African Legend Indigo (PTY) LTD use only
dizzy1 dizzy2 dizzy3
HRDatabase
(Original)
HRDatabase
(Copy)
ant setup_exercise
2. Deploy the TestDS application to the cluster. It should already be deployed to dizzy1.
3. Deploy the data source, dizzyworldDS, to dizzyworldCluster. It should already be
Oracle University and African Legend Indigo (PTY) LTD use only
deployed to dizzy1.
4. Open a Web browser and navigate to http://localhost/TestDS.
Verify the information and click the Test Data Source button. You should see the results
from the query of the EMPLOYEE table. Check the dizzy1, dizzy2, and dizzy3 server
consoles to see which one is handling the request and accessing the database.
5. Suspend the data source on the server that is handling the requests and test the
application again. This time you should get an error page because the data source is no
longer available.
Note: Clustering a data source allows all the data sources to be available on all servers in
a cluster for both local (running on the same server) and remote clients. A remote client
can fail over the connection but a local client is pinned to the data source. A multi data
source can help a local client fail over its connection.
6. Create another data source with the following properties:
Name: dizzyWorldDS2
JNDI Name: dizzyWorldDS2
Database Type: PointBase
Database Driver: *PointBases Driver (Type 4) Versions: 4.X, 5.X
Database Name: HRDatabase
Host Name: localhost
Port: 9092
Database User Name: PBPUBLIC
Password: PBPUBLIC
Target: dizzyworldCluster
7. Create a multi data source with the following properties:
Name: dizzyworldMultiDS
JNDI Name: dizzyworldMultiDS
Algorithm Type: Failover
Target: dizzyworldCluster
Driver: Non-XA Driver
Data Sources: dizzyworldDS, dizzyworldDS2
Note: In the lab environment, you use only one database. But in a production
environment, multi data sources are used together with a highly available database. So,
Oracle University and African Legend Indigo (PTY) LTD use only
each data source in the multi data source may point to a different database. These
databases need to be able to synchronize with each other.
9. (Optional): To set up the solution for this lab, open a command prompt using
./prompt.sh that is located in <STUDENT>/bin directory. Change to the <LAB_HOME>
directory and enter:
ant setup_solution
When this is complete, you need to manually target the testds application to
dizzyworldCluster in the Administration Console.
Oracle University and African Legend Indigo (PTY) LTD use only
The developers have given you an application that requires the use of the Java Message Service
(JMS). This application needs to be targeted to a cluster. The architects have determined that the
application should load-balance its messages to different JMS servers in the cluster.
JMS resources are pinned resources and cannot be deployed to multiple servers in a cluster, with
the exception of a connection factory and distributed destination. Each server that handles JMS
messages needs to have a JMS server with one or more destinations. Load-balancing messages
from clients can be accomplished with the use of distributed destinations. A distributed
destination is a virtual destination that sends the message to one of the physical destinations it
represents, therefore the message ends up on only one server.
dizzyworld
dizzyworldCluster
dizzyMachine1 dizzyMachine2
Oracle University and African Legend Indigo (PTY) LTD use only
dizzy1 dizzy2 dizzy3
dizzyworldDistributedQueue
ant setup_exercise
Oracle University and African Legend Indigo (PTY) LTD use only
Name: dizzyworldJMSServer2
Target: dizzy2
Name: dizzyworldJMSServer3
Target: dizzy3
3. Create a new JMS module with the following properties:
Name: dizzyworldClusterJMSModule
Target: dizzyworldCluster
4. Create a new subdeployment and distributed destination with the following properties:
Post three different messages to the distributed queue, and then view the messages in
the distributed queues. Each queue should have one of the messages that you sent from
the application.
Note: If you do not see the message immediately, wait for a minute or two, and then
refresh the screen.
Oracle University and African Legend Indigo (PTY) LTD use only
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Deployments. Lock the console, if necessary.
2.3 Click the testds application and navigate to the Targets tab.
2.4 Deselect, and then select dizzyworldCluster to ensure that the data source is
targeted to all the servers in the cluster.
2.5 Save and activate your changes.
Deploy DizzyworldDS to the cluster.
3.1 Navigate to dizzyworld > Services > JDBC > Data Sources. Lock the console, if
necessary.
3.2 Click the dizzyworldDS data source and navigate to the Targets tab.
3.3 Deselect, and then select dizzyworldCluster to ensure that the data source is
targeted to all the servers in the cluster.
3.4 Save and activate your changes.
3.5 Restart dizzy1, dizzy2, and dizzy3.
Test the TestDS application.
4.1 Open a Web browser and navigate to http://localhost/testds.
4.2 Verify the information and click the Test Data Source button. You should see the results
from the query of the Employee table. Keep this window open.
4.3 Check the dizzy1, dizzy2, and dizzy3 server consoles to see which one is handling
the request and accessing the database.
Oracle University and African Legend Indigo (PTY) LTD use only
5.4 Return to the TestDS application and click the Test Data Source button. This time you
should get an error page because the data source is no longer available. Do not close
this browser window.
Note: Clustering a data source allows all the data sources to be available on all servers in
a cluster for both local (running on the same server) and remote clients. A remote client
can fail over the connection but a local client is pinned to the data source. A multi data
source can help a local client fail over its connection.
Create another data source to connect to the HRDatabase.
6.1 Return to the Administration Console and navigate to dizzyworld > Services > JDBC
> Data Sources. Lock the console, if necessary.
6.2 Create a new data source with the following properties:
Name: dizzyworldDS2
JNDI Name: dizzyworldDS2
Database Type: PointBase
Database Driver: *PointBases Driver (Type 4) Versions: 4.X,5.X
Click Next.
6.3 Accept the defaults and click Next.
6.4 Enter the following details for connection properties:
Click Next.
6.5 Test the configuration, and then click Next.
6.6 Target the data source to dizzyworldCluster and click Finish.
6.7 Activate your changes.
Create a multi data source.
7.1 Navigate to dizzyworld > Services > JDBC > Multi Data Sources. Lock the console,
if necessary.
Name: dizzyworldMultiDS
JNDI Name: dizzyworldMultiDS
Algorithm Type: Failover
Click Next.
Oracle University and African Legend Indigo (PTY) LTD use only
7.3 Target the multi data source to dizzyworldCluster and click Next.
7.4 Select Non-XA Driver and click Next.
7.5 Add dizzyworldDS and dizzyworldDS2 to the list of Chosen data sources. Click
Finish.
7.6 Activate your changes.
Test the failover capabilities of the multi data source.
8.1 Return to the Web browser with the TestDS application open. It should be on the error
page you received from last time (step 5.4).
8.2 Return to the test page (http://localhost/tesds) and try again. This time specify
dizzyworldMultiDS as the Data Source Name. Now you should get a connection,
even though the original data source is still suspended. This is because you now have a
multi data source deployed to that server so it can fail over to the other data source.
Note: In the lab environment, you use only one database. But in a production
environment, multi data sources are used together with a highly available database. So,
each data source in the multi data source may point to a different database. These
databases need to be able to synchronize with each other.
After completing this lab, close any prompt terminal windows if they are open.
(Optional) Set up the solution, if unable to complete the lab.
9.1 To set up the solution for this lab, open a command prompt using ./prompt.sh that is
located in the <STUDENT>/bin directory. Change to the <LAB_HOME> directory and
enter:
ant setup_solution
When this is complete, you need to manually target the testds application to
dizzyworldCluster in the Administration Console.
Oracle University and African Legend Indigo (PTY) LTD use only
ant setup_exercise
Username: system
Password: weblogic
2.2 Navigate to dizzyworld > Services > Messaging > JMS Servers. Lock the console, if
necessary.
2.3 Create a new JMS server with the following properties:
Name: dizzyworldJMSServer2
Target: dizzy2
2.4 Create another new JMS server with the following properties:
Name: dizzyworldJMSServer3
Target: dizzy3
2.5 Activate your changes.
Create the dizzyworldClusterJMSModule JMS module.
3.1 Navigate to dizzyworld > Services > Messaging > JMS Modules. Lock the console, if
necessary.
3.2 Create a new JMS module with the following properties:
Name: dizzyworldClusterJMSModule
Target: dizzyworldCluster
3.3 Click Next. Click Finish.
3.4 Activate your changes.
Create a new subdeployment and distributed destination.
4.1 Navigate to dizzyworld > Services > Messaging > JMS Modules >
dizzyworldClusterJMSModule > Subdeployments. Lock the console, if necessary.
Oracle University and African Legend Indigo (PTY) LTD use only
Type: Distributed Queue
Name: dizzyworldDistributedQueue
JNDI Name: dizzyworldDistributedQueue
Load Balancing Policy: Round-Robin
Allocate Members Uniformly: True
Target: dizzyworldClusterSubdeployment (Hint: Select Advanced Targeting.)
4.5 Return to dizzyworldDistributedQueue and navigate to Configuration >
Members.
4.6 Review the Distributed Destination Members. Note that each of the JMS servers in the
cluster now has a special distributed queue. So, while the application looks up and
connects to dizzyworldDistributedQueue, the actual messages appear on the
distributed queues on the individual servers.
4.7 Activate your changes.
Create a new JMS connection factory and deploy it to dizzyworldCluster.
5.1 Navigate to dizzyworld > Services > Messaging > JMS Modules >
dizzyworldClusterJMSModule. Lock the console, if necessary.
5.2 Create a new JMS System Module Resource with the following properties:
Note: The Server Affinity Enabled parameter attempts to load-balance across any other
local destination members that are also running on the same Oracle WebLogic Server
and favors destinations on servers to which it already has a connection.
5.5 Save and activate your changes.
Test JMS load balancing with the distributed queue.
6.1 Navigate to dizzyworld > Deployments > Messaging > Targets. Lock the console, if
necessary.
Oracle University and African Legend Indigo (PTY) LTD use only
6.6 View the number of messages in the queue. Repeat the process for the other two
queues. Each queue should have one of the messages that you sent from the
application.
Notes: Customize the table to view messages. If you do not see the message
immediately, wait for a minute or two, and then refresh the screen.
After completing this lab, close any prompt terminal windows if they are open.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Objectives
Oracle University and African Legend Indigo (PTY) LTD use only
Create virtual hosts
Configure virtual hosts
Monitor virtual hosts
Target virtual hosts to servers
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 2
Understanding Virtual Hosts
Virtual hosts:
Have one or more Web addresses associated with them
(domain name and IP address)
Oracle University and African Legend Indigo (PTY) LTD use only
Enable you to make one Web server behave as if it were
multiple servers
Virtual hosting can be used to allow one Web server to
host multiple internal and external corporate sites.
It is often convenient to have the same Web server
respond to requests for multiple domain names.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 3
The Big Picture of Virtual Hosting
Web Web
Oracle University and African Legend Indigo (PTY) LTD use only
App 1 App 2
Web
App 3
VirtualHost2
Web Web
App 4 App 5
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 4
Configuring Virtual Hosts
Oracle University and African Legend Indigo (PTY) LTD use only
3. Target applications to the virtual host.
4. Resolve DNS names in a system host file.
WLS
2
3
1
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 5
Creating Virtual Hosts
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 6
Targeting Virtual Hosts to Servers
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 7
Targeting Applications to a Virtual Host
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 8
Configuring Virtual Host Logging
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 9
Summary
Oracle University and African Legend Indigo (PTY) LTD use only
Target virtual hosts to servers
Target virtual hosts to clusters
Monitor virtual hosts
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration B - 10
Oracle University and African Legend Indigo (PTY) LTD use only
Getting Started with BEA Guardian
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Objectives
Oracle University and African Legend Indigo (PTY) LTD use only
Install Guardian and initialize a workspace
Inventory and evaluate domains to detect potential
problem signatures
Create a support case using Guardian
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 2
Road Map
Guardian Concepts
General Architecture and Capabilities
Domain Inventory
Oracle University and African Legend Indigo (PTY) LTD use only
Problem Signatures
Getting Started
Working with Domains
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 3
Guardian Architecture
WebLogic Domain
Admin Server
Oracle University and African Legend Indigo (PTY) LTD use only
JMX
Guardian
Agent (WAR)
Managed Server
HTTP(S)
Guardian JMX
Client Guardian
Agent (WAR)
GUI or Script
WebLogic Domain
Guardian Architecture
A domain is a logically related group of Oracle WebLogic Server resources that you manage as
a unit. A domain always includes at least one Oracle WebLogic Server instance called the
Administration Server. The Administration Server acts as a central point of contact for server
instances and system administration tools. A domain may also include additional Oracle
WebLogic Server instances called Managed Servers. Each Guardian client workspace maintains
a registry of active domains. A domain is considered active when it is capable of being
evaluated. You select the domains to activate and evaluate.
There are two different ways to run Guardian: using the Graphical User Interface (GUI) and
using the Command Line Interface. The Graphical User Interface provides more functionality
and is easier to use. But the Command Line Interface provides automated scripting capabilities
that the Graphical User Interface does not have.
The Guardian Agent collects data from your domain. This data is used during an evaluation to
detect signatures that can cause problems in your domain.
The Guardian Agent uses the Java Management Extensions (JMX), Java System Properties, and
JDBC drivers to collect the data that is required by the signatures. To access this data, a
Guardian Agent may be installed on each server in the domain during domain activation. If you
have configured additional servers in your domain since activation, additional Guardian Agents
may be installed during evaluation.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 4
Road Map
Guardian Concepts
Getting Started
Product Installation
Oracle University and African Legend Indigo (PTY) LTD use only
Supported Configurations
Client Workspace
Product Updates
Agent Deployment
Working with Domains
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 5
Installation
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
Installation
Install Guardian by running the guardian_installer.exe executable. To run the
Guardian installer on Linux in Console Mode (with no GUI), run the following:
guardian_installer.bin -i console.
Otherwise, when you run the Guardian installer, the InstallAnywhere preparation window
appears. The Guardian installer then takes you through the following steps:
1. Language Selection Select your native language from the list and click OK.
2. Introduction Read the introduction and click Next.
3. License Agreement Read the license terms, select I accept, and then click Next.
4. Choose Install Folder Select a folder in which to install Guardian and click Next. By
clicking Choose, you can navigate to the installation folder that you want or create a new
folder.
5. Pre-Installation Summary Review the summary and click Install to start the installation.
Guardian will not start on a machine that is running a Java Runtime Environment (JRE) older
than version 5 (also known as version 1.5). If you attempt to run Guardian with an older JRE,
you get an error message. If necessary, edit guardian.ini (in the Guardian installation
directory) and supply the location of your JRE:
-vm
c:\jre_1.5\bin\java.exe
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 6
Guardian Workspace
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
Guardian Workspace
When Guardian starts, it opens the Select Workspace dialog box, which prompts you for the
Guardian Workspace directory that holds the Domain Inventories, Evaluation Summaries, and
Case Archives for each domain. The Guardian Workspace location must be separate from the
Guardian installation directory. This requirement preserves the implicit contract with the
customer that their data will never be removed, even when Guardian is uninstalled.
The default Guardian Workspace location is in your home directory, for example, C:\Documents
and Settings\<username>\guardianWorkspace for Windows and /home/<username>/
guardianWorkspace for Linux. The default workspace location is especially important for the
Guardian Command Line Interface in the case where you run it before the Graphical User
Interface and have not yet had a chance to select a Guardian Workspace location. To change the
Guardian Workspace location, click Browse and navigate to the location that you want. You can
also create a new Guardian Workspace directory by clicking Make New Folder.
If you select the Use this as the default workspace and do not ask again check box, Guardian
uses the current location from then on when it starts. To resume opening the Select Workspace
dialog box at startup, select the Prompt for workspace on startup check box in the Startup and
Shutdown section of the Guardian Preferences menu.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 7
Updating Guardian
Oracle University and African Legend Indigo (PTY) LTD use only
Problem signatures
Supply your BEA Customer Support account credentials:
Contact BEA or use the support.bea.com site to enable
Guardian on your account.
Guardian Toolbar
Updating Guardian
The Main Toolbar comprises buttons with icons and text below the main menu. When the cursor
is over a toolbar button, a tool tip appears and specifies what the button does.
To update Guardian, use the Update Wizard to download new BEA Guardian software and
signatures from the BEA Guardian update site, http://guardian.bea.com/update. The Update
Wizard uses a sequence of dialog boxes to gather the information that is needed to download and
install new signatures and application features:
1. eSupport Login: Enter your BEA eSupport username and password to access the
Guardian update site.
2. Select eSupport Site Id: If you have multiple eSupport site identifiers, select one to use
for this update. Most customers have only one site identifier.
3. Search Results: If there are new signatures or application features available, select the
ones that you want to install. All of them are selected by default.
4. Feature License: Click the button that indicates that you accept the terms in the license
agreement.
5. Installation Location: You can change the installation location for each signature and
application feature update, but it is recommended that you use the default location.
6. Restart Guardian: After all the updates are installed, click Yes to restart Guardian. When
Guardian restarts, all the new signatures and application features that you downloaded are
available.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 8
Deploying the Agent
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 9
Road Map
Guardian Concepts
Getting Started
Working with Domains
Oracle University and African Legend Indigo (PTY) LTD use only
Domain Activation
Domain Inventory
Domain Evaluation
Support Case Management
Scripting Guardian
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 10
Activate a Domain
Oracle University and African Legend Indigo (PTY) LTD use only
1
2
Location of domain
admin server
Activating a Domain
Activating a domain prepares it for evaluation by installing any required Guardian Agents and
creating a new Domain Inventory.
There are several different ways to invoke the Domain Activation Wizard:
Click Activate on the main toolbar.
From the File menu, select New > Domain.
Right-click inside the Domain Explorer and select Activate Domain from the shortcut
menu.
The Domain Activation Wizard contains the following data entry fields:
The communication Protocol: Either http:// or https:// for secure sockets layer (SSL)
encryption. Note that Guardian does not use 128-bit SSL encryption for domain activation.
The Host Name: The listen address of the target domains Administration Server
The Username and Password: of an administrator account on the target domain
If the Remember username/password check box is selected, the username and password are
encrypted and stored on disk. Whenever you access the domain, the username and password are
filled in.
You may select the name of a proxy server from the list. If there are no proxy servers in the list,
click Add Proxy Servers to add one.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 11
Explorer Views
Oracle University and African Legend Indigo (PTY) LTD use only
problem signatures that are used during evaluations.
Activated
domain
Double-click to view
a domain inventory.
Explorer Views
After activating a domain, a node is added to the Domain Explorer view, in the Target Domains
folder. An initial Domain Inventory entry is also added to the domain nodes Inventory History
folder.
Domain nodes also include icons. One icon is for active domains and one is for inactive
domains. Active domains can also be decorated with icons that indicate whether the username
and password have been persisted, and whether the domain requires SSL encryption for all
communication. Note that Guardian uses 128-bit open source encryption for SSL.
Every time you activate, evaluate, or inventory a domain, a new Domain Inventory is created
and added to the domains Inventory History folder. If you double-click a Domain Inventory, a
Domain Inventory editor opens in the Document pane.
Every time you evaluate a domain, a new Evaluation Summary is created and added to the
domains Evaluation History folder. If you double-click an Evaluation Summary, an Evaluation
Summary editor opens in the Document pane.
Signature Explorer is a view that allows you to browse and interact with the available signatures.
Signature entries include severity indicator icons (such as Critical or Warning) that approximate
the level of attention you should give the signature when it is detected.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 12
Explorer Views (continued)
If you double-click a signature in Signature Explorer, a Signature Details editor opens in the
Document pane. When you click Signature Explorers Menu icon, a menu is displayed that
allows you to sort and filter the list of signatures displayed.
When Outline View is open and the Signature Details editor is active, you can also use Outline
View to control what the Signature Details editor displays.
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 13
Domain Inventory
Select a server to
view its details.
Oracle University and African Legend Indigo (PTY) LTD use only
Select a JDBC data
source to view its details.
View printable
version.
Domain Inventory
A Domain Inventory is an XML document that describes your domains environment. It
includes descriptions of your servers, Java Virtual Machines (JVMs), operating systems, and
databases. The descriptions include product versions as well as some configuration settings. A
Domain Inventory is created when you activate a domain and is refreshed each time a domain is
evaluated. You can also invoke the Inventory Wizard yourself to create a new Domain
Inventory. Domain Inventories are kept in the Guardian Workspace. Sometimes, it is helpful to
inventory a domain to check its status or to print a description of it.
There are several ways to invoke the Inventory Wizard:
Click Inventory on the main toolbar.
From the File menu, select New > Inventory.
Right-click inside the Domain Explorer and select Inventory from the shortcut menu.
At the bottom of the Domain Inventory editor are the following tabs for the different Domain
Inventory representations. Note that these representations are read-only:
Overview Provides a summary of the Domain Inventory
Source Provides the actual XML source for the Domain Inventory
Report Provides the same information as the Overview tab but in a printer-friendly
format
When Outline View is open and the Domain Inventory editor is active, you can use Outline
THESE View to control ARE
eKIT MATERIALS whatFOR
the YOUR
Domain Inventory
USE editor displays.
IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 14
Evaluation Summary
Oracle University and African Legend Indigo (PTY) LTD use only
Copyright 2009, Oracle. All rights reserved.
Evaluation Summary
An Evaluation Summary is created each time you evaluate a domain. It is persisted in the
Guardian Workspace. The Evaluation Summary editor in the Document pane allows you to
interact with the Evaluation Summary and determine whether you need to take any corrective
action.
At the bottom of the Evaluation Summary editor are the following tabs for the different
Evaluation Summary representations. Note that these representations are read-only:
Overview: Provides evaluation statistics and a list of detected signatures. It also includes a
description and remedy recommendation for each signature detected in the evaluation.
Source: Provides the actual XML source from the Evaluation Summary. It includes the
raw data for each detected and undetected signature.
Report: Provides all the information contained in the Overview tab but in a printer-
friendly format
The Severity column of the detected signature table includes an icon (Critical, Warning) that
approximates the amount of attention you should give each signature that is detected.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 15
Evaluation Summary (continued)
For a given bundle of signatures, some signatures may not be used in the evaluation because
they target different products/versions than that the domain is configured for. The ones that do
target what the domain has are counted as Targeted Signatures. Targeted Signatures are divided
into Detected Signatures, which are actually found on the domain and Undetected Signatures,
which are not found on the domain. If a signature fails to evaluate, it is counted as an
Undetectable Signature and is considered flawed.
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 16
Comparing Evaluations
Oracle University and African Legend Indigo (PTY) LTD use only
2
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 17
Submitting Support Case
Oracle University and African Legend Indigo (PTY) LTD use only
Domain Inventory and config.xml file
Domain, server, and HTTP log files
Evaluation results
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 18
Submitting Support Case
Server used to
initialize JVM and
1 OS case fields
Oracle University and African Legend Indigo (PTY) LTD use only
2
Submit case
online.
3
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 19
Submitting Support Case (continued)
5. Select Case Destination: Select whether to connect to BEA and create a support case now,
or to save the case information as a Case Creation Archive and create a support case later
(may be useful for machines that are not connected to the Internet).
6. eSupport Login: Enter your BEA eSupport username and password.
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 20
Guardian Security
Oracle University and African Legend Indigo (PTY) LTD use only
communication between:
The Guardian client and the domain (agent)
The Guardian client and eSupport (signature updates and
support cases)
All credentials and server names that are saved
in your Workspace are first encrypted.
Guardian Security
All communication between Guardian and the servers in the target domain requires valid
username and password credentials. Guardian prompts you for the username and password of an
administrator account on the target domain when you conduct an evaluation or activate a
domain. You can choose to have Guardian remember the username and password so that you do
not have to enter them for every evaluation. All passwords that are persisted on disk are
encrypted. Usernames and server names are also encrypted. This encryption helps prevent the
disclosure of any clear text data that could compromise the security of your domain.
SSL encryption is available for all communication with Oracle over the Internet and all
communication with Guardian Agents in your target domain. Note that Guardian uses 128-bit
open source encryption for SSL and that to use this level of encryption, you may need to take
additional actions to be in compliance with your countrys import requirements. If you want to
use SSL, there are three types of communication to consider:
To use SSL encryption for communication between Guardian and your target domain
during domain activation and evaluation, select the https:// communications protocol
option and specify your domains secure port in the Domain Activation Wizard.
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 21
Guardian Security (continued)
To use SSL encryption for downloading signatures from BEA Support, select Require SSL
in your Guardian Preferences. This also sets SSL encryption for uploading the signature
usage statistics.
To use SSL encryption for opening support cases with Oracle Support, select Require SSL
in your Guardian Preferences.
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 22
Using a Proxy Server
Proxy between
Guardian client and
domains.
1
Oracle University and African Legend Indigo (PTY) LTD use only
3
2
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 23
Guardian from the Command Line
Oracle University and African Legend Indigo (PTY) LTD use only
Evaluating a domain against a signature bundle
Creating and executing an evaluation shortcut
?
1
011
Oracle University and African Legend Indigo (PTY) LTD use only
Inventory and evaluate domains to detect potential
problem signatures
Create a support case using Guardian
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Oracle WebLogic Server 10g R3: System Administration C - 25
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
Index
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED
A
Administration Console 1-30, 1-32, 1-33, 1-40, 1-42, 1-59, 2-4,
2-11, 2-12, 2-29, 2-34, 2-40, 2-42, 2-43, 2-48, 2-52, 2-55, 2-65,
2-76, 2-77, 2-78, 2-79, 2-80, 2-82, 2-84, 2-91, 2-92, 2-95, 2-96,
2-98, 2-101, 2-110, 2-113, 2-116, 2-121, 2-127, 2-128, 2-130, 2-131, 3-4,
3-5, 3-6, 3-9, 3-12
Administration Port 2-77, 2-109, 3-67, 3-74, 3-75, 3-76, 3-77,
Oracle University and African Legend Indigo (PTY) LTD use only
3-78, 9-81
Administration Server 1-26, 1-27, 1-30, 1-31, 1-32, 1-33, 1-34,
1-35, 1-36, 1-38, 1-40, 1-42, 1-57, 1-59, 2-4, 2-5, 2-6, 2-7,
2-12, 2-14, 2-18, 2-29, 2-34, 2-35
Application Deployment 2-7, 2-76, 2-84, 2-116, 4-16, 4-29, 4-49,
4-54, 10-7, 10-8, 10-10, 10-20, 14-5
Auto deployment 4-29
B
Boot Identity 2-49, 2-50, 2-129, 3-18
C
Cluster 1-22, 1-30, 1-33, 1-34, 1-36, 1-37, 1-38, 1-39, 1-58,
1-60, 2-4, 2-5, 2-6, 2-7, 2-9, 2-12, 2-15, 2-16, 2-17, 2-18,
2-46, 2-57, 2-76, 2-81, 2-85, 2-93, 2-108, 2-110, 3-4, 3-5, 3-37,
3-66, 3-68, 4-21, 4-34, 4-35, 4-36, 4-44, 4-61, 4-64, 5-13, 6-17,
6-23, 6-29, 7-20, 7-22, 7-23, 7-28, 7-31, 7-40, 8-20, 8-21, 9-79,
10-5, 10-6, 10-15, 10-33, 11-1, 12-1, 12-2, 13-1, 13-2, 14-1, 14-2, 15-1, 15-2
Configuration Wizard 1-32, 1-53, 2-7, 2-8, 2-9, 2-12, 2-14,
2-17, 2-20, 2-21, 2-27, 2-35, 2-37, 2-40, 2-42, 2-49, 2-60, 2-61,
2-62, 2-65, 2-71, 2-72, 2-101, 2-119, 2-121, 2-127, 3-28, 3-40, 11-37,
12-13, 12-14, 12-24, 12-25, 12-31, 12-34, 12-35
Connection Pool 2-21, 2-114, 6-6, 6-9, 6-14, 6-20, 6-21, 6-22,
6-23, 6-25, 6-28, 6-32, 6-40, 6-41, 6-44, 7-7, 7-38, 13-28, 13-29,
13-30, 13-31, 15-4, 15-11
Cross-Cluster Replication 13-37, 13-38, 13-39
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
Oracle WebLogic Server 10g
COMPUTER R3: System
IS STRICTLY Administration Index - 2
PROHIBITED
D
Data Source 1-30, 2-9, 2-10, 2-12, 2-19, 2-20, 2-21, 2-22, 2-23,
2-24, 2-81, 4-21, 4-39, 4-42, 4-45, 6-2, 6-3, 6-5, 6-6, 6-7,
6-8, 6-9, 6-11, 6-17, 6-18, 6-19, 6-20, 6-21, 6-22, 6-23, 6-25,
6-26, 6-27, 6-28, 6-29, 6-30, 6-31, 6-32, 6-33, 6-37, 6-38, 6-39,
6-40, 6-41, 6-42, 6-43, 6-44, 7-17, 7-39, 8-26, 8-27, 8-28, 8-29,
8-30, 8-32, 10-5, 10-7, 10-32, 13-28, 13-30, 13-38, 13-39, 13-49, 15-15,
Oracle University and African Legend Indigo (PTY) LTD use only
15-16, 15-17, 15-18, 15-63, C-14
Deployment Plan 4-52, 4-66, 4-76, 4-78, 4-80, 6-7, 10-2, 10-3,
10-4, 10-5, 10-6, 10-7, 10-8, 10-9, 10-10, 10-11, 10-12, 10-13, 10-14,
10-15, 10-16, 10-17, 10-20, 10-22, 10-24, 10-41, 10-44
Domain 1-15, 1-26, 1-27, 1-28, 1-29, 1-30, 1-32, 1-33, 1-34, 1-35,
1-38, 1-39, 1-40, 1-49, 1-53, 1-55, 1-57, 1-58, 1-60, 1-64, 2-2,
2-3, 2-4, 2-5, 2-6, 2-7, 2-8
Domain Log 2-6, 2-53, 2-54, 2-55, 2-76, 2-130, 3-52, 3-54, 3-60,
3-62, C-19
Domain Template 2-2, 2-3, 2-8, 2-9, 2-23, 2-37, 2-39, 2-58,
2-59, 2-60, 2-61, 2-62, 2-63, 2-64, 2-65, 2-66, 2-67, 2-71, 2-72,
2-73, 2-75, 2-101, 2-103, 2-107, 2-108, 2-119, 2-131, 2-132
E
Embedded LDAP 2-93, 2-122, 9-15, 9-18, 9-19, 9-20, 9-21, 9-29,
9-46, 9-47
F
FastSwap 4-57, 4-58
File Replication 13-12, 13-33, 13-35, 13-36
H
HttpClusterServlet 11-21, 11-22, 11-24, 11-28, 12-31, 12-32, 12-34, 12-36,
12-37, 12-38, 12-39, 12-40, 12-41, 12-54, 13-13, 13-21, 13-25
I
In-Memory Replication 4-21, 4-44, 13-11, 13-12, 13-13, 13-19, 13-20,
13-21, 13-22, 13-23, 13-25, 13-26, 13-27, 13-38, 13-49, 13-50, 15-4
Installation 1-26, 1-41, 1-44, 1-45, 1-46, 1-47, 1-48, 1-49, 1-50,
1-51, 1-52, 1-56, 2-7, 2-11, 2-18, 2-27, 2-33, 2-34, 2-35, 2-51,
2-78, 3-14, 3-17, 3-19, 3-20, 3-24, 3-29, 3-30, 3-31, 3-32, 3-33,
3-34, 4-52, 4-61, 4-64, 4-76, 6-11, 6-16, 9-33, 10-15, 10-19, 10-20,
12-4, 12-43, 12-46, 13-27, 13-36, C-5, C-6, C-7, C-8, C-24
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
Oracle WebLogic Server 10g
COMPUTER R3: System
IS STRICTLY Administration Index - 3
PROHIBITED
J
JDBC 1-8, 1-12, 1-14, 1-17, 1-23, 1-30, 1-53, 1-54, 2-9, 2-10,
2-12, 2-19, 2-20, 2-21, 2-22, 2-23, 2-24, 2-60, 2-65, 2-88, 2-89,
4-39, 4-41, 4-42, 4-45, 4-53, 4-75, 5-5, 6-1, 6-2, 6-3, 6-4,
6-5, 6-6, 6-7, 6-8, 6-9, 6-10, 6-11, 6-12, 6-13, 6-14, 6-15,
6-16, 6-17, 6-19, 6-20, 6-21, 6-22, 6-23, 6-24, 6-26, 6-27, 6-28,
6-29, 6-32, 6-33, 6-34, 6-35, 6-37, 6-38, 6-39, 6-40, 6-41, 6-44,
Oracle University and African Legend Indigo (PTY) LTD use only
JDBC Drivers 1-53, 1-54, 2-21, 6-5, 6-11, 6-16, 6-17, 6-26, 6-37,
8-11, 8-15, 8-30, C-4
JMS 1-8, 1-14, 1-15, 1-23, 1-45, 2-9, 2-10, 2-12, 2-20, 2-25,
2-26, 2-60, 2-65, 2-88, 2-103, 2-108, 4-39, 4-41, 4-42, 4-45, 4-53,
4-75, 5-5, 5-7, 5-13, 7-1, 8-10, 8-14, 8-31, 9-48,
9-73, 10-26, 10-43, 11-5, 11-6, 11-10, 11-11, 15-2
JNDI 1-8, 1-13, 1-23, 2-21, 4-34, 4-36, 5-1, 5-2, 5-3, 5-4,
5-5, 5-6, 5-8, 5-9, 5-10, 5-11, 5-12, 5-13, 5-14, 6-6, 6-20,
6-23, 6-24, 6-25, 6-26, 6-30, 6-37, 6-38, 6-43, 7-9, 7-10, 7-19,
7-21, 7-22, 7-23, 7-25, 7-29, 7-44, 8-27, 8-28, 9-4, 9-6, 9-7,
9-27, 9-54, 10-5, 10-32, 11-10, 11-38, 11-41, 12-29, 15-2, 15-3
JTA 1-8, 1-14, 1-23, 7-11, 7-22, 8-6, 8-18, 8-19, 8-23, 8-24,
8-25, 8-26, 8-31, 8-34, 8-35, 8-36, 8-38, 8-39, 11-8, 11-10, 15-6,
15-7, 15-8, 15-20, 15-22, 15-24, 15-28, 15-29, 15-30, 15-31, 15-32, 15-33,
15-35, 15-36, 15-48, 15-56
K
keytool utility 9-52, 9-58, 9-60
L
Log Filter 3-60, 3-61, 3-62
M
Machine 1-6, 2-3, 2-5, 3-2, 3-3, 3-4, 3-5, 3-6, 3-7, 3-8, 3-9, 3-10, 3-11, 3-12, 3-13, 3-14,
3-15, 3-16, 3-17, 3-21, 3-25, 3-31, 3-32, 3-33, 3-35, 3-36, 3-37, 3-38, 3-39,
3-41, 3-42, 3-48, 3-56, 3-69, 3-77, 3-81, C-6, C-14, C-20
Managed Server 1-26, 1-30, 1-31, 1-33, 1-34, 1-35, 1-36, 1-40,
1-42, 1-57, 1-60, 2-2, 2-3, 2-4, 2-5, 2-6, 2-7, 2-9, 2-12,
2-14, 2-15, 2-17, 2-18, 2-28, 2-29, 2-39, 2-40, 2-41, 2-43, 2-44,
2-45, 2-46, 2-47, 2-48, 2-49, 2-50, 2-52, 2-53, 2-54, 2-55, 2-56,
2-58, 2-60, 2-75, 2-83, 2-93, 2-96, 2-101, 2-124, 2-125, 2-126, 2-127,
2-128, 2-129, 2-130, 2-132, 3-4, 3-5, 3-6
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
Oracle WebLogic Server 10g
COMPUTER R3: System
IS STRICTLY Administration Index - 4
PROHIBITED
M
Managed Server Independence 2-2, 2-3, 2-39, 2-52, 2-53, 2-54,
2-58, 2-75, 2-132, 3-6, 3-11
N
Network Channel 2-86, 3-2, 3-3, 3-49, 3-67, 3-68, 3-70, 3-71,
3-82, 4-65, 12-12, 12-15, 13-37, 13-39
Oracle University and African Legend Indigo (PTY) LTD use only
Node Manager 1-36, 1-40, 1-41, 1-42, 1-60, 2-4, 2-18, 2-34, 2-35,
2-43, 2-46, 2-48, 2-50, 2-54, 2-83, 2-85, 2-130, 3-2, 3-3, 3-4,
3-5, 3-6, 3-7, 3-8, 3-9, 3-10, 3-11, 3-12, 3-13, 3-14, 3-15,
3-16, 3-17, 3-18, 3-19, 3-20, 3-25, 3-26, 3-27, 3-28, 3-29, 3-30,
3-31, 3-32, 3-33, 3-34, 3-35, 3-36, 3-37, 3-38, 3-39, 3-40, 3-41,
3-42, 3-43, 3-44, 3-45, 3-46, 3-47, 3-48, 3-76, 3-80, 3-81, 3-82,
9-52, 13-49, 15-9, 15-31
P
Persistent JDBC Replication 13-29
Production Redeployment 10-2, 10-3, 10-22, 10-24, 10-25, 10-26, 10-27,
10-28, 10-29, 10-30, 10-31, 10-32, 10-33, 10-39, 10-40, 10-44, 13-3, 13-7
Proxy Server 1-20, 1-21, 2-17, 2-77, 9-53, 11-3, 11-21, 11-24, 11-46,
12-2, 12-3, 12-9, 12-13, 12-31, 12-34, 12-35, 12-36, 12-37, 12-39, 12-54,
12-55, 13-20, 13-26, C-11, C-23
R
Replication Group 13-11, 13-15, 13-16, 13-17, 13-18, 13-22, 13-24, 13-26,
13-40, 13-49
S
Server Log 2-54, 3-46, 3-47, 3-48, 3-50, 3-51, 3-52, 3-53, 3-54,
3-56, 3-60, 3-79, 15-23, C-19
T
Transaction Log 8-3, 8-16, 8-20, 8-21, 8-22, 8-25, 15-21, 15-24,
15-25, 15-26, 15-32, 15-33, 15-35, 15-53, 15-58
W
weblogic.Deployer utility 4-54, 4-75, 7-20, 10-15, 10-16
WLST 1-32, 1-33, 1-42, 1-53, 2-8, 3-5, 3-6, 3-7, 3-8, 3-25, 3-26, 3-31,
3-32, 3-48, 3-51, 3-80, 4-54, 4-58, 4-78, 4-79, 4-80, 5-13, 6-7,
7-17, 7-18, 7-41, 8-34, 9-9, 9-30, 10-8, 10-43, 12-13, 12-14, 12-27,
C-9
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
Oracle WebLogic Server 10g
COMPUTER R3: System
IS STRICTLY Administration Index - 5
PROHIBITED
Oracle University and African Legend Indigo (PTY) LTD use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS
COMPUTER IS STRICTLY PROHIBITED