Oracle RAC Architecture 10g and 11g
Architecture Diagram:
This is a basics architecture of Oracle RAC, We will discuss about
new features/additions in 11g in each sections.
RAC components
- Shared Disk System
- Oracle clusterware
- Cluster interconnects
- Oracle Kernel Components
Shared Disk System
Below are the three major type of shared storage which are using in
RAC
Raw volumes: A raw logical volume is an
area of physical and logical disk space that is under the direct control of an
application such as database or partition rather than under the direct control
of the operating system or a file system. This as the only available option in
9i.
Cluster File
system: This option is not widely used and here the cluster file system such as Oracle
Cluster file system (OCFS) for MS Windows and Linux holding the all datafiles
of RAC database
Automatic Storage
Management (ASM): Oracle recommended storage option
which is optimized for cluster file system for Oracle database files introduced
in Oracle 10g.
Oracle Clusterware
Clusterware is the mandatory piece of software which is required to run
Oracle RAC option,it provides the basic clustering support at OS level and
enables oracle software to run in cluster mode.
Clusterware enables nodes to communicate each other and forms the cluster
that make the nodes work as a single logical server.
Clusterware is managed by cluster ready services (CRS) using the Oracle
Cluster registry (OCR) and voting disk
Cluster Ready Services (CRS)
Oracle clusterware uses CRS for interaction between the OS and the
Database.CRS have five components - namely Process Monitor daemon
(OPROCd: obsolete in 11gR2),CRS daemon(CRSd),Oralce
Custer Synchronization Service daemon(OCSSd),Event Volume Manager daemon(EVMd)
and the Oracle Notification Service (ONS)
CRS is installed and run from ORA_CRS_HOME in 10g and GRID_HOME in
11g
Starting and Stopping CRS
crsctl stop crs
# Stops Oracle clusterware
crsctl start crs
# Starts Oracle clusterware
crsctl enable
crs # Enables Oracle clusterware
crsctl disable
crs # Disables Oracle clusterware
Note: These commands should be used in
root user (Superuser)
Oracle Cluster Synchronization Services
OCSSd provides synchronization between the nodes. Failure of OCSSd causes the machine to reboot to avoid split-brain situation.OCSSd runs as oracle user.Event Manager Process
This runs to daemon process EVMd. The daemon process spawns
a permanent child process called evmlogger and generate the events when things
happens.
Oracle Notification Services
Whenever state of cluster resource changes ONS process in each node will
communicate with each other and exchange the high availability
information.
Oracle Process Monitor
The oracle process monitor
daemon(OPROCd) identifies the potential cluster node hang and rebooting the hang
node.
Oracle Cluster Registry (OCR)
OCR uses the cluster registry to keep
the configuration information. This should be a shared storage and should be
accessible to all the nodes in
the cluster simultaneously.This shared storage is known as
Oracle cluster registry (OCR)
Oracle Logical Registry(11gR2)
Similar to OCR, introduces in 11gR2 but
it only stores information about the local node. It is not shared by other nodes
of cluster and used by OHASd while starting or joining a cluster.
Voting Disk
A voting disk is a shared diks that will
be accessed by all the member of the nodes in the cluster.It is used as
central referece for all the nodes and keeps the heartbeat information between
the nodes.If any of the node is unable to ping the voding disk,cluster
immediatly recogonize the comminucation failure and envicts the node from the
cluster.
Cluster interconnect
It is the communication path used by the cluster for the synchronization of
resources and it is also used in some cases for transfer of data from one
instance to another.Typically, the interconnect is a network connections that is
dedicated to the server nodes of a cluster (thus is sometimes referred as
private interconnect)
Single Client Access Name (SCAN)-11gR2
SCAN is a single network name that resolves in three different IPs
registered in DNS or GNS.
Prior the 11g R2 if we add or remove a node from cluster it was required to
changes the connection setting in client . By configuring the connection using
SCAN name this problem is eliminated.
Oracle Kernel Components
Set of additional background process in each instance is known as
oracle kernel components in RAC environment.Since buffer and shared pool
became global in RAC , special handling is required to manage the resources to
avoid conflicts and corruption.Additional background process (for RAC) and
single instance background process works together and achieved this.
Global Cache and Global Enqueue Services
In Oracle RAC each instance will have its own cache but it is required for
an instance to access the data blocks currently residing in another instance
cache.This management and data sharing is done by Global Cache services (GCS).
Blocks other than data such as locks, enqueue details and shared across the
instances are known as Global Enqueue Services (GES).
Global Resource Directory
In a cluster group, then centre repository formed by all the resources is
known as Global Resource Directory (GRD).GRD is managed by GCS and GES.
Oracle RAC Background Processes
- LMS Global Cache Service Process
- LMON Global Enqueue Service Monitor
- LMD Global Enqueue service Daemon
- LCK0 Instance Enqueue Process
LMS: Global Cache Services Process
LMS- Lock Manager Server Process is used in Cache Fusion.It enebles
consistent copies of blocks to be transfered from a holding instance's buffer
cache to a requesting instance bufer cache with out a disk write under certian
conditions.
It rollbacks any uncommitted transactions for any blocks that are being
requested for a consistent read by the remote instance.
LMON:Global Enqueue Services Monitor
LMON-Lock Monitor Process is responsible to manage Global Enqueue Services
(GES).It maintain consistency of GCS memory in case of any process death. LMON
is also responsible for the cluster reconfiguration when an instance joins or
leaves the cluster. It also check for the instance death and listens for local
manages.
LMD: Global Enqueue Services Daemon
LMD-Lock Manager Daemon process manages Enqueue manager service requests
for GCS. It also handles deadlock detection and remote resource requests.
LCK0:Instance Enqueue Process
LCK-Lock Process manages instance resource requests and cross-instance call
operations for shared resources.
DIAG Process
Separate process using for diagnostic purpose, PMON will start incase this
process dies.DIAG process will not affect any other background process.
================================
No comments:
Post a Comment