Showing posts with label 11g FMW. Show all posts
Showing posts with label 11g FMW. Show all posts

Tuesday, February 15, 2011

11g OID Concepts and Architecture - Part 3

How Oracle Internet Directory Processes a Search Request ?
  • The user or client enters a search request, it may be SSL or non-ssl connection, and it may be particular user connection or anonymous connection. The request can have search filters
  • The C API, using the LDAP protocol, sends a request to a directory server instance to connect to the directory.
  • The directory server authenticates the user, a process called binding. The directory server also checks the Access Control Lists (ACLs) to verify that the user is authorized to perform the requested search.
  • The directory server converts the search request from LDAP to Oracle Call Interface (OCI)/Oracle Net Services and sends it to the Oracle Database.
  • The Oracle Database retrieves the information and passes it back through the chain—to the directory server, then to the C API, and, finally, to the client.
Directory Entries

Each object in OID is called entry. An Entry can be a user, computer or network resources,etc....

Distinguished Names (DNs)
  • Each entry in OID is uniquely identified by a distinguished name (DN). The distinguished name tells you exactly where the entry resides in the directory hierarchy.
  • This hierarchy is represented by a directory information tree (DIT).
  • Exmaple DN: cn=Chuck voleti,ou=Server Development,c=ux,o=abcd
  • Lowest component is called the relative distinguished name (RDN)
  • RDN for above entry is cn=chuck voleti
  • To locate a particular entry within the overall DIT, a client uniquely identifies that entry by using the full DN—not simply the RDN—of that
Entry Caching
  • OID uses 'entry caching'to make operations on entries quick and efficient.
  • When this feature is enabled, OID assigns a unique identifier to each entry, then stores a specified number of those identifiers in cache memory.
  • During ldap operation on an entry, the directory server looks in the cache for the entry identifier, then retrieves the corresponding entry from the directory.
  • This method enhances Oracle Internet Directory performance, and is especially useful in smaller and medium-sized enterprises.
  • Entry caching can be used only in the case of a single server, single instance Oracle Internet Directory node.
  • The entry cache is a write-through cache. An LDAP operation first writes to the database and then invalidates the corresponding cache entry. A subsequent search of that entry causes the cache to be refreshed.
Attributes
  • Each entry in OID has multiple attributes which provides information about the entry.
  • Attribute are of two kinds i.e. Application Attributes and System Configuration Attributes.
  • Application attributes contains customaizable information like name,address,etc....
  • System Configuration attributes are managed by Directory server for its operation purpose.
  • Attributes can be single valued or multivalued.
Object Classes
  • An object class is a group of attributes that define the structure of an entry.
  • Each entry in directory has one or more object classes to it.
  • Some of the attributes in these object classes are mandatory and must have values, others are optional and can be empty.
  • There are three types of object classes:Structural,Auxiliary and Abstract
  • Structural object classes describe the basic aspects of an object. Every entry should belong to at least one structural object class. Examples of structural object classes are person and groupOfNames.
  • Auxiliary object classes are groupings of optional attributes that expand the existing list of attributes in an entry.
  • An abstract object class is a virtual object class. It is used only for convenience when specifying the highest levels of the object class hierarchy. It cannot be the only object class for an entry. For example, the object class top is an abstract object class. It is required as a superclass for all structural object classes, but it cannot be used alone.

11g OID Concepts and Architecture - Part 2

Oracle Directory Server Instance Architecture
  • Oracle Directory Server instance or OID Instance contains one dispatcher process and one or more server processes.
  • LDAP clients send LDAP requests to an Oracle Internet Directory listener/dispatcher process listening for LDAP commands at its port.
  • Oracle Internet Directory listener/dispatcher starts the server process at startup time.
  • The number of server processes is controlled by the 'orclserverprocs' attribute in the instance-specific configuration entry. The default value for orclserverprocs is 1.
  • Multiple server processes can be used to enable Oracle Internet Directory to leverage the multiple processor systems.
  • The Oracle Internet Directory dispatcher process sends the LDAP connections to the Oracle Internet Directory server process in a round robin fashion.
  • The maximum number of LDAP connections accepted by each server is 1024 by default. This number can be increased by changing the attribute orclmaxldapconns in the instance-specific configuration entry, which has a DN of the form: cn=componentname,cn=osdldapd,cn=subconfigsubentry





Processes in Instance: ORACLE_INSTANCE
---------------+--------------------+---------
ias-component|process |pid | status |ports
---------------+--------------------+---------
oid2 | oidldapd |18724 | Alive | N/A
oid2 | oidldapd |18713 | Alive | N/A
oid2 | oidmon |18679 | Alive | LDAPS:3132,LDAP:3061
oid1 | oidldapd |18720 | Alive | N/A
oid1 | oidldapd |18701 | Alive | N/A
oid1 | oidmon |18678 | Alive | LDAPS:3131,LDAP:3060
EMAGENT | EMAGENT |18680 | Alive | N/A

Oracle Internet Directory Ports

Default OID port 3060 for Non-SSl and 3131 for SSL. If these ports are unavailable, installer tries ports in the range 3061 to 3070, then 13060 to 13070.

Directory Metadata

Directory metadata is the information used by the directory server during run time for processing LDAP requests. It is stored in the oracle database. During startup, the directory server reads this information and stores it in a local metadata cache. It then uses this cache during its run time to process incoming LDAP operation requests.

Metadata cache
  • The metadata cache is a write-through cache.
  • An LDAP operation first writes to the database and then invalidates the corresponding cache entry.
  • A subsequent search of that entry causes the cache to be refreshed.
  • The directory server has the following types of metadata in its local metadata cache:
Directory Schema

Schema consists, definitions of object classes, attributes, and matching rules supported by the directory server. The directory server uses this information during creation and modification of directory objects. A directory object is a collection of object classes and their associated attributes and matching rules.

Access control policy point (ACP)

ACP contains access controll information. The directory server uses ACPs to determine access of user when performing LDAP Operation.

Root DSE entry

The root DSE (Directory Service Agent-Specific Entry) contains several attributes that store information about the directory server itself.

Privilege groups
  • Groups that can be used in access control policies.
  • The directory schema supports directory group objects through the standard groupofuniquenames and groupofnames object classes. These object classes hold information for such groups as distribution lists and mailing lists to mention just two.
  • Oracle Internet Directory extends these standard group objects through an auxiliary object class called orclprivilegegroup.
  • This object class, which supports privilege groups that can be used in access control policies, provides flexibility to grant or deny access to groups of users.
  • The directory server uses this information during:LDAP bind operations to find out the subscribed privileged groups for a given user and Access control policy evaluation if the policy has directives that grant or deny access to privileged groups

Catalog entry

A special entry containing information about indexed attributes in the underlying database. The directory uses this information during directory search operations.

Common entry

A special entry containing information about hosted companies. A hosted company is an enterprise to which another enterprise provides services.

Plug-in entry

A special entry containing information about the kind of operation that triggers a plug-in event, and the point in the operation when that plug-in is to be triggered.

Password verifier entry

A special entry containing information about the encryption and verifier attribute types.

Password policy entry

One or more special entries containing information about policies enforced by the directory server for the user password credentials. The directory server uses this information during run time to enforce the password policies.

11g OID Concepts and Architecture - Part 1

Components of Oracle Internet Directory(11g)
  • Oracle directory server which process client requests.
  • Oracle directory replication server, which replicates Directory data between Oracle directory servers.
  • Directory administration tools.
  • Oracle Internet Directory Software Developer's Kit.
Oracle Internet Directory Architecture
  • Oracle Internet Directory Node
  • Oracle Directory Server Instance
  • Oracle Internet Directory Ports
  • Directory Metadata



OID NODE

OID node contains one or more directory server instances connected to the same directory store i.e. Oracle Database.

OID instance
  • It services directory requests through a single Oracle Internet Directory dispatcher process listening at specific TCP/IP ports(default port is 3060).
  • There can be more than one directory server instance on a node, listening on different ports.
Oracle directory replication server
  • Replication server tracks and sends changes to replication servers in another Oracle Internet Directory.There can be only one replication server on a node. .
Oracle Database Server
  • It stores the directory data. The database can reside on the same node as the directory server instances.
Oracle Process Manager and Notification Server (OPMN)
  • OPMN Manages the Oracle Fusion Middleware system component. OID being a system component, managed by OPMN.
  • OPMN Configuration informations are stored in $ORACLE_INSTANCE/config/OPMN/opmn/opmn.xml.
  • OPMN invokes OIDMON and OIDCTL for during startup/shutdown of OID.
OID Monitor (OIDMON)
  • It Initiates, monitors, and terminates the LDAP server and replication server processes.
  • OIDMON monitors directory servers and restarts them if they have stopped running for abnormal reasons.
  • OIDMON starts a default instance of OIDLDAPD (despatcher process). If the default instance of OIDLDAPD is stopped using the OIDCTL command, then OIDMON stops the instance. However, when OIDMON is restarted by OPMN, OIDMON restarts the default instance.
  • All OID Monitor activity is logged in the file ORACLE_INSTANCE/diagnostics/logs/OID/Component_Name/oidmon-xxxx.log.

OID Control Utility (OIDCTL)
  • It Communicates with OID Monitor by placing message data in Oracle Internet Directory server tables. This message data includes configuration parameters required to run each Oracle directory server instance.
  • OIDCTL is mainly used to stop and start the replication server. OIDCTL is also used for checking the status of Oracle Internet Directory.


Monday, February 14, 2011

Understanding 11g Fusion Middleware Concepts

Understanding 11g Fusion Middleware Concepts.

Before moving to 11g OID concepts, one should understand 11g FMW concepts. Read 11g FMW concepts .

Oracle Internet Directory is a system component. OID is a 'C' based process. OID's runtime dependency is database and it doesn't require Weblogic Server.OID is Managed by Oracle Process Management and Notification Server (OPMN). To manage OID through FMW Management Framework i.e. Fusion Middleware Control, OID should be registered with weblogic server.

OID can be registered with weblogic server during the installation or using commandline after installation. Internet Directory installation provides various options like Create New Domain, Extend Existing Domain, Expand Cluster, Configure Without Domain during installation. We will look into each of these option in detail in installation section.



Directory Services Basic Concepts


What is a Directory ?

A Directory is a collection of hierarchically organized object. Objects in Directory have similar attributes. For example Telephone Directory, Store catalog, etc... . Directories can online or offline.

What is Light Weight Directory Access Protocol (LDAP) ?

LDAP is a standard, extensible directory access protocol that directory clients and servers use to communicate.

What is Oracle Internet Directory ?

Oracle Internet Directory is a general purpose, LDAP V3 compliant directory service that provides faster retrieval and centralized management of information about dispersed resources.

Oracle Internet Directory provides scalability, high availability, security, and tight integration with the Oracle environment.



Thursday, May 13, 2010

Oracle Fusion Middleware 11g Concepts


In this post I will explain following key concepts in Oracle Fusion Middleware 11g
  • Oracle Fusion Middleware Component Types
  • Oracle WebLogic Server Domain
  • Oracle Instance
  • Oracle Fusion Middleware Home Directories & Structure
Oracle Fusion Middleware Component Types

Oracle Fusion Middleware provides two types of components:
  • Java Components
  • System Components
Java Component

A Java component, which is an Oracle Fusion Middleware component that is deployed as one or more Java EE applications and a set of resources. Java components are deployed to an Oracle WebLogic Server domain as part of a domain template. Examples of Java components are the Oracle SOA Suite and Oracle WebCenter components.

System Component

A system component, which is a manageable process that is not deployed as a Java application. Instead, a system component is managed by the Oracle Process Manager and Notification (OPMN). The system components are:
  • Oracle HTTP Server
  • Oracle Web Cache
  • Oracle Internet Directory
  • Oracle Virtual Directory
  • Oracle Forms Services
  • Oracle Reports
  • Oracle Business Intelligence Discoverer
  • Oracle Business Intelligence
  • A Java component and a system component are peers.
A Java component and a system component are peers.

Oracle WebLogic Server Domain

What is Oracle WebLogic Server domain ?
An Oracle WebLogic Server domain is a logically related group of Java components. A domain includes a special Oracle WebLogic Server instance called the Administration Server, which is the central point from at which configuration and management of all resources in the domain occur. Usually, you configure an additional domain to include additional Oracle WebLogic Server instances called Managed Servers. You can deploy Java components, such as Web applications, Enterprise Java Beans (EJB), and Web services, and other resources to the Managed Servers and uses the Administration Server for configuration and management purposes only.

Managed servers in a domain can be grouped together into a cluster.

The directory structure of a domain is separate from the directory structure of the Oracle WebLogic Server home. It can reside anywhere; it need not be within the Middleware home directory.

A domain is a peer of an Oracle instance. Both contain specific configurations outside of their Oracle homes.

What is the Administration Server?
The Administration Server operates as the central control entity for the configuration of the entire domain. It maintains the domain's configuration documents and distributes changes in the configuration documents to Managed Servers. The Administration Server serves as a central location from which to monitor all resources in a domain.

Each domain must have one server instance that acts as the Administration Server.

To interact with the Administration Server,you can use the Oracle WebLogic Server Administration Console, Oracle WebLogic Scripting Tool (WLST), or create your own Java Management Extension (JMX) client. In addition, you can use Oracle Enterprise Manager Fusion Middleware Control (Fusion Middleware Control Console) for some tasks.

Oracle WebLogic Server Administration Console and Fusion Middleware Control run in the Administration Server.

What is the Managed Servers ?
Managed servers host business applications, application components, Web services, and their associated resources. To optimize performance, Managed Servers maintain a read-only copy of the domain's configuration document. When a Managed Server starts up, it connects to the domain's Administration Server to synchronize its configuration document with the document that the Administration Server maintains.

When you create a domain, you create it using a particular domain template. The domain template contains all of the information you would like to include in your domain configuration. The template can then be used for additional installations. That template supports a particular component or group of components, such as the Oracle SOA Suite. The Managed Servers in the domain are created specifically to host those particular Oracle Fusion Middleware components.

Oracle Fusion Middleware Java components (such as Oracle SOA Suite, Oracle WebCenter, and some Oracle Identity Management components), as well as customer-developed applications, are deployed to Managed Servers in the domain.

Managed servers are Java Virtual Machine (JVM) processes.

What is the Managed Server Clusters ?
A cluster is a collection of multiple Oracle WebLogic Server server instances running simultaneously and working together to provide increased scalability and reliability. In a cluster, most resources and services are deployed identically to each Managed Server (as opposed to a single Managed Server), enabling failover and load balancing.

A single domain can contain multiple Oracle WebLogic Server clusters, as well as multiple Managed Servers that are not configured as clusters. The key difference between clustered and non-clustered Managed Servers is support for failover and load balancing. These features are available only in a cluster of Managed Servers.

What is Node Manager?

Node Manager is a Java utility that runs as a separate process from Oracle WebLogic Server and allows you to perform common operations for a Managed Server, regardless of its location with respect to its Administration Server. While use of Node Manager is optional, it provides valuable benefits if your Oracle WebLogic Server environment hosts applications with high-availability requirements.

Oracle Instance

An Oracle instance contains one or more system components, such as Oracle Web Cache, Oracle HTTP Server, or Oracle Internet Directory. The system components in an Oracle instance must reside on the same computer. An Oracle instance directory contains updateble files, such as configuration files, log files, and temporary files.

An Oracle instance is a peer of an Oracle WebLogic Server domain. Both contain specific configurations outside of their Oracle homes.

The directory structure of an Oracle instance is separate from the directory structure of the Oracle home. It can reside anywhere; it need not be within the Middleware home directory.

Oracle Fusion Middleware Home Directories & Structure

What is a Middleware Home?

A Middleware home is a container for the Oracle WebLogic Server home, and, optionally, one Oracle Common home and one or more Oracle homes.

A Middleware home can reside on a local file system or on a remote shared disk that is accessible through NFS.

What is a WebLogic Server Home?

A WebLogic Server home contains installed files necessary to host a WebLogic Server. The WebLogic Server home directory is a peer of Oracle home directories and resides within the directory structure of the Middleware home.

What is an Oracle Home?

An Oracle home contains installed files necessary to host a specific component or software suite. For example, the SOA Oracle home contains a directory that contains binary and library files for Oracle SOA Suite.

An Oracle home resides within the directory structure of the Middleware home. Each Oracle home can be associated with multiple Oracle instances or Oracle WebLogic Server domains. There can be multiple Oracle homes within each Middleware home.

What is the Oracle Common Home?

The Oracle Common home contains the binary and library files required for the Oracle Enterprise Manager Fusion Middleware Control and Java Required Files (JRF). There can be only one Oracle Common home within each Middleware home.

Oracle Fusion Middleware Directory Structure




To read more about FMW 11g Oracle Fusion Middleware Concepts Guide

Introduction to Oracle Fusion Middleware 11g

Numerous Oracle Fusion Middleware (FMW) Administrator who are currently managing Oracle 10g FMW will find it little bit difficult to transition as Oracle FMW 11g Administrator, since Oracle has replaced its own Application server with WebLogic Server (WLS) in Oracle FMW 11g and few(?) architecture changes in the Oracle FMW Products.

This blog will ease their job to transition as an Oracle FMW 11g Administrator

Let's start with Oracle Fusion Middleware Introduction.

What is Oracle Fusion Middleware?

Oracle Fusion Middleware is a collection of standards-based software products that spans a range of tools and services: from Java EE and developer tools, to integration services, business intelligence, and collaboration. Oracle Fusion Middleware offers complete support for development, deployment, and management.

Following are the components/products in Oracle Fusion Middleware 11g:
  • Oracle WebLogic Server
  • Oracle SOA Suite
  • Oracle WebCenter
  • Oracle HTTP Server
  • Oracle Web Cache
  • Oracle Identity Management
  • Oracle Internet Directory
  • Oracle Virtual Directory
  • Oracle Identity Federation
  • Oracle Web Services Manager
  • Oracle Platform Security
  • Oracle Portal
  • Oracle Business Intelligence
In the next post I will discuss the Oracle FMW 11g basic concepts.