ITPub博客

首页 > Linux操作系统 > Linux操作系统 > rac后台进程说明及一些概念

rac后台进程说明及一些概念

原创 Linux操作系统 作者:chinatab1 时间:2012-06-15 11:17:37 0 删除 编辑
rac后台进程说明及一些概念

1.GSD global services daemon

转载:GSD与rac的管理工具dbca srvctl
oem进行交互,用来完成实例的启动关闭等管理任务。为了保证这些管理工具运行正常必须?
谒械慕诘闵舷萻tart gsd,并且一个GSD进程支持在

一个节点的多个rac.gsd进程位于$ORACLE_HOME/bin目录下,其log文件为$oracle_home/srv
m/log/gsdaemon.log

例如:

假设使用oem工具来启动一个实例,oem把该任务传递给相应的智能引擎,该智能引擎生成一
个包含SRVCTL命令的脚本文件,GSD进程读取该脚本文件并且执行该脚本,最后GSD把

执行结果返回给智能引擎,近而智能引擎返回给OEM.又例如假设使用srvctl工具关闭所有的?
道¦即D进程接受来自SRVCTL工具发出的请求,并在本地节点上执行该请求,然后把执行结
果返回给SRVCTL会话。

2.LMON:GLOBAL ENQUEUE SERVICE MONITOR

LMON主要监测群集内的全局队列和全局资源,管理实例和处理异常并相应的群集队列进行恢
复操作。监控全局锁定(global enqueues)及其资源,并提供global
enqueues资源的恢复操作。enqueues是用来进行串行化行更新的共享的内存结构。



3.LMD:GLOBAL ENQUEUE SERVICE DAEMON

LMD进程主要管理对全局队列和资源的访问,并更新相应队列的状态,处理来自于其他实例?
淖试辞肭蟆C恳桓鋈蓠罏械牡鼻白刺娲⒃谙嘤Φ氖道闤砟诖嬷校珠刺砻鞲檬道
哂邢嘤Φ娜ɡ褂酶米试础R桓鍪道槤愥猀琀攀爀)的共享内存中存在一个特殊的队列,该队列
纪录来自其他远程实例的资源请求,当远程实例的LMD进程发出一个资源请求时,该请求指?
騧aster实例的LMD,当master实例的LMD进程受到该请求后,在共享内存中的特殊队列中监测
该资源是否无效,如果有效则LMD进程更新该资源对列的状态,并通知请求资源的LMD进程该
资源队列可以使用了,如果资源队列正在被其他实例使用或者当前无效,则LMD进程通知正?
谑褂弥械氖道囤MD进程应该释放该资源,等资源释放变得有效时,MASTER实例的LMD进程?
赂米试炊恿械淖刺糠ㄖ肭笞试词道囤MD进程该资源队列可以使用了。另外LMD进程?
哺涸鸲恿械乃浪跢狻!!?

4.LMSn:GLOBAL CACHE SERVICE PROCESS(n 0~9)

LMS进程主要用来管理集群内数据块的访问,并在不同实例的BUFFER
CACHE中传输块镜像。LMS进程跨集群管理数据库的请求,并保证在所有实例的BUFFER
CACHE中一个数据块的镜像只能出现一次。LMS进程靠着在实例中传递消息来协调数据块的访
问,当一个实例请求数据块时,该实例的LMD进程发出一个数据块资源的请求,该请求只向M
ASTER数据块的实例的LMD进程,MASTER实例的LMD进程同时正在使用的实例的LMD进程释放该
资源,这时拥有该资源的实例的LMS进程会创建一个数据块镜像的一致性读,然后把该数据?
榇莸角肭蟾米试吹氖道腂UFFER
CACHE中。LMS进程保证了在每一时刻只能允许一个实例去更新数据块,并负责保持该数据块
的镜像纪录(包含更新数据块的状态FLAG),RAC提供了10个LMS进程,该进程数量随着节点间
的消息传递的数据的增加而增加。

5.lock process(LCK)

LCK进程主要用来管理实例间资源请求和跨实例调用操作,调用操作包括数据字典等对象的?
梦剩徊⒋矸荂ACEH FUSION的CHACE资源请求(例如:DICTIONARY CACHE或row
cache的请求)

6.DIAG:DIAGNOSABILITY DAEMON

DIAG进程主要用来捕获实例中失败进程的诊断信息,并生成相应的TRACE文件(该trace文件
保存在backupground_dump_dest/cdmp_timestamp目录下),该进程不需要进行配置更不应?
帽煌V埂8媒埢远舳恍枰揠械髡绻鋣淌г蜃远匦缕舳?

7、Operating System-Dependent(OSD):


是指依赖操作系统的一些参数、软件等。RAC通过操作系统相关的软件来访问操作系统和一?
┯贑LUSTER相关的服务进程。OSD软件可能由Oracle提供(windows平台)或由硬件厂商提供
(unix平台)。

OSD包括三个自部分:

The Cluster
Manager(CM):集群监视器监视节点间通信,并通过interconnect来协调节点操作。同时还?
峁〤LUSTER中所有节点和实例的统一视图。CM还控制CLUSTER的成员资格。

The Node
Monitor(节点监视器):节点监视器提供节点内各种资源的状态,包括节点、interconnec
t硬件和软件和共享磁盘等。

The Interconnect。


8、Real Application Cluster Shared Disk Component:


RAC中这部分组件和单实例Oracle数据库中的没有什么区别。包括一个或多个控制文件、一?
盗辛刈鋈罩疚募雤裳〉墓榈等罩疚募秤菸募取?

在RAC中使用服务器参数文件会简化参数文件的管理,可以将全局参数和实例特定的参数存?
⒃谕叠歨募小?


9、Real Application Cluster-Specific Daemon and Instance Processes:


包含两部分:

The Global Service
Daemon(GSD):在每个节点上都运行一个全局服务后台进程,用于接收客户端如DBCA、EM?
确⒊龅墓芾硐狣糠D上嘤Φ墓芾砣挝瘢热缡道钠舳凸乇铡?

RAC中特别的实例进程:

Global Cache Service
Processes(LMSn):控制到远端实例的消息的流量,管理全局数据块的访问。还用于在不同?
道嗤撼迩鏢濡牭軧LOCK的映射。

Global Enqueue Service
Monitor(LMON):监视全局队列和集群间的资源交互,执行全局队列的恢复操作。

Global Enqueue Service
Daemon(LMD):管理全局队列和全局资源访问。对于每个实例,LMD管理来自远端的资源请求

Lock Processes(LCK):管理除Cache Fusion以外的资源请求,比如library和row
cache的请求。

Diagnosability Daemon(DIAG):在实例中捕获进程失败的诊断数据。


10、The Global Cache and Global Enqueue Service:


全局缓存服务(GCS)和全局队列服务(GES)是RAC的集成组件,用于协调对共享数据库和?
菘饽诘墓蚕碜试吹耐狈梦省CS和GES(它们都是基本的RAC进程)发挥了关键作用。GCS?
繁J莸牡ジ鱿低惩枷瘢词故糤欢喔鍪道梦省CS和GES是实时应用集群的集成组件?
切鞫怨蚕硎菘獾耐狈梦剩僠鞫允菘夂褪菘饣捍婺诠蚕碜试吹耐狈梦省
ES和GCS共同维护全局资源目录(Global Resource
Directory,GRD)来记录有关资源和队列的信息。GRD保存在内存中,存储在所有实例上。每
个实例都管理部分目录。分布式特性是RAC容错的关键点。协调共享缓存服务器内的并发任?
癯莆无M绞褂盟接谢チ痛罅肯诣蜤洹O旅嬲庑├嘈偷淖试葱枰几菏菘楹投
恿小CS整体维护数据块模式,并负责实例间的数据块传输。LMS进程处理GCS消息,并完成
大多数GCS处理。队列是一种共享内存结构,它串行化对数据库资源的访问。它可以是局部?
模部梢允侨值摹狥愀挀氀攀在3种模型中使用队列:①空(N)模式;②共享(S)模式;③独占
(X)模式。数据块是读写入和读写出缓冲器的基本结构。它通常是最经常被请求的资源。GES
维护或处理字典缓存、库缓存、事务锁定和DDL锁定的同步。换句话说,GES管理队列而不是
数据块。为了同步访问数据字典缓存,需要在独占模式和单节点集群数据库中使用闩锁。在
集群数据库缓存中使用全局队列。

GCS和GES包括以下特性:

应用透明性;

分布式结构的全局资源目录:只要还存在一个节点,即使出现一个或多个节点失败,GCS和G
ES仍然可以保证全局资源目录的完整性;

资源控制:GCS和GES会选择一个实例来管理所有的资源信息,这个实例叫做resource
master。GCS和GES会根据数据访问方式阶段性的评估和修改resource
master。这种方式会减少网络流量和资源获取时间;

GCS和GES与CM之间的交互:GCS和GES独立于CM。但同时GCS和GES依赖于CM提供的各个节点上
实例的状态信息。一旦无法取得某个实例的信息,则Oracle会马上关闭没有响应的实例,来
保证整个RAC的完整性。

11、缓存熔合和资源协调:

因为实时应用集群中的每个节点都有自己的内存(缓存)(不与其他节点共享),所以RAC必须?
釡煌诘愕幕捍妫哠跎倏赡芙档托阅艿钠渌鋣蘄/O。缓存熔合这种技术使用高速互
连来提供集群中实例之间从缓存到缓存的数据块传输。缓存熔合功能允许脏数据块的直接内
存写,从而不需要强迫磁盘写和重读(或ping)提交的数据块。然而,这不是说不会发生磁盘
写。缓存取代和出现检查点时仍然需要磁盘写。缓存熔合解决了涉及实例间并发性的问题:
多个节点上的并发读操作、不同节点上的并发读写、不同节点上的并发写操作。

如果数据块不一定总是在实例的缓存中,那么Oracle只从磁盘读取它们。因为推迟了数据块
的写,所以它们通常包含来自多个事务的修改。只有当出现检查点时,修改过的数据块才会
被写到磁盘。进一步讨论之前,我们需要熟悉Oracle 9i
RAC中引入的一些概念:资源模式和资源角色。因此相同数据块可以同时存在于多个实例中?
杂辛礁霰晔斗梢园镏髡庑┦菘椋?

资源模式。模式有空模式、共享模式和独占模式。数据块可以用不同模式保存,取决于资源
占有者是要修改数据还是只读它们。

资源角色。这些角色可以局部管理和全局管理。

全局资源目录(GRD)不是数据库。它是内部结构的集合,用来查找数据块的当前状态。当数?
菘榇釠ね岗鼗捍嬷猓诠蜤黠搅硪桓鍪道嗤捍嬷校透铝薌RD。在GRD中可用下面?
泄刈试吹男畔ⅲ?

数据块标识符(Data Block Identifier,DBA)

大多数当前版本的位置

数据块的模式(N、S、X)

数据块的角色(局部或全局)


下表中带(r)的进程表示需要以root用户运行

表1:ClusterWare相关进程列表




12、Cluster Synchronization
Service(CSS):通过控制哪个结点为集群的成员、结点在加入或离开集群时通知集群成员
来控制集群的配置信息。 13、Cluster Ready
Services(CRS):管理集群内高可用操作的基本程序。Crs管理的任何事物被称之为资源,
它们可以是一个数据库、一个实例、一个监听、一个虚拟IP(VIP)地址、一个应用进程等?
取勥匀是根据存储于OCR中的资源配置信息来管理这些资源的。这包括启动、关闭、监控及?
收锨谢唬╯tart、stop、monitor及failover)操作。当一资源的状态改变时,CRS进程生成
一个事件。当你安装RAC时,CRS进程监控Oracle的实例、监听等等,并在故障发生时自动启
动这些组件。默认情况下,CRS进程会进行5次重启操作,如果资源仍然无法启动则不再尝试
。 14、Event Management(EVM):发布CRS创建事件的后台进程。 15、Oracle
Notification Service(ONS):通信的快速应用通知(FAN:Fast Application
Notification)事件的发布及订阅服务。
16、RACG:为clusterware进行功能扩展以支持Oracle的特定需求及复杂资源。它在FAN事件
发生时执行服务器端的调用脚本(server callout script) 17、Process Monitor
Daemon(OPROCD):此进程被锁定在内存中,用于监控集群(cluster)及提供I/O防护(I/
O
fencing)。OPROCD执行它的检查,停止运行,且如果唤醒超过它所希望的间隔时,OPROCD?
刂么砥骷爸仄艚诘恪R桓鯫PROCD故障将导致Clusterware重启节点。
类UNIX系统的Oracle Clusterware进程
crsd:执行高可用性恢复及管理操作,诸如维护OCR及管理应用资源。此进程以root用户执?
校ㄔ贛ax OS X类系统中以admin组中用户执行)。此进程在发生故障时自动重启。
evmd:事件管理守护进程。此进程还负责启动racgevt进程以管理FAN服务器端调用。
ocssd:管理集群节点的成员资格,此进程以Oracle用户执行。此进程发生故障导致集群重?
簟?
oprocd:集群的进程监控进程。要注意此进程只出现在那些未使用其它厂商的集群管理软件
的平台上。 Oracle的Clusterware需要如下两个关键文件

l 投票盘(Voting
Disk):通过执行健康检查及网络故障时在实例中执行集群所有权的仲裁来管理集群的成员
资格(Cluster
membership)。RAC使用投票盘来决定哪个实例是集群的成员。投票盘必须在一个共享磁盘?
稀3鲇诟呖捎眯苑矫娴目悸牵琌racle建议使用多个投票盘。Oracle可使用多个投票盘但你?
匦胧褂闷媸鐾镀迸獭H绻阒皇褂靡桓觯狠茨惚匦胧褂猛獠烤迪窭刺峁┤哂嘈浴?

l Oracle集群注册表(Oracle Cluster Registry:OCR):维护集群的配置信息及集群中任何集群数据库的配置信息。OCR也管理那些Oracle Clusterware控制的相关进程的相关信息。OCR将配置信息存储在一个目录树结构中的一系列关键字-值对中(key-value pairs)。OCR必须位于集群中所有结点可同时访问的共享磁盘中。Oracle Clusterware可使用多重OCR(multiplex或称为多路复用)。Oracle建议使用此特性以保证高可用性。你可以在联机时替换一个故障的OCR,可通过支持的API(如企业管理器、srvctl及dbca)来更新OCR。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26866613/viewspace-732888/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2012-06-15

  • 博文量
    2
  • 访问量
    1827