Oracle Grid Infrastructure CRS(集群就绪服务)
CRS(Cluster Ready Service)主要负责管理集群中的应用程序资源,实现集群资源的高可用性,CRSD的另一部分功能是管理OCR,包括OCR的更新与备份。CRSD的启动过程
1)crsd.bin被ohasd的代理进程orarootagent启动。
2)crsd.bin访问OCR,获得需要启动的资源列表。
3)crsd.bin启动对应的代理进程。
4)oraagent_root启动集群的公网资源,之后集群的VIP和SCAN VIP资源也被启动。
5)oraagent_grid启动和VIP对应的listener资源,以及和SCAN VIP对应的SCAN listener资源。
6)oraagent_grid启动ONS资源。
7)oraagent_grid启动ora.asm资源,并启动其他的磁盘组资源。
8)oraagent_oracle启动数据库资源,之前启动对应的数据库服务资源。
9)script_agent启动ora.cvu资源。
CRSD的运行方式
步骤1:在请求节点的客户端发出请求,例如:一个crsctl命令。
步骤2:请求节点CRSD的UI模块收到对应的请求,并将请求发送给本地节点CRSD的PE模块。
步骤3:本地节点的PE模块在分析了请求所需要执行的操作之后,将该请求发送给PE主节点的PE模块。
步骤4:PE主节点上的PE模块在分析了收到的请求后,将需要执行的操作发送给目标节点的AGENT模块。
步骤5:目标节点的AGENT模块通知本地节点上对应的AGENT进程对资源进行操作。
步骤6;目标节点的AGENT进程完成了对资源的操作,并通知本地节点的AGENT模块。
步骤7:目标节点的AGENT模块将结果返回给PE主节点的PE模块。
步骤8:PE主节点的PE模块将返回结果发送给请求节点的PE模块。
步骤9:请求节点的PE模块将命令的返回结果发送给本节点的UI模块。
步骤10:请求节点的UI模块将请求结果发送给对应的客户端。
AGENT(代理进程):agent只能被ohasd或crsd启动,其中ohasd启动的agent负责管理集群的初始化资源;crsd启动的agent负责管理集群的应用程序资源。ohasd和CRSD根据资源的不同会启动不同的agent,有些agent是由root用户启动的,有些是由grid用户启动,还有些是由oracle用户启动的,agent是高可用的进程,当agent由于某些原因崩溃后会有新的agent被启动以继续完成工作。
PE(Policy Engine):crsd是一个分布式的集群组件,集群中的每一个节点都会运行该组件,而且它们要对一些共享的资源进行管理,所以对资源进行管理时需要一种协调机制保障操作能够被顺序执行,oracle采用的是主从模式,集群中的一个节点会被选择称为PE主节点,集群中所有对资源的操作都会被发送给PE主节点的crsd守护进程,再由这个主节点发送给需要执行相关操作节点的agent。
CRSD管理的资源
本地资源:该资源只能在本地节点上运行,不能转移到集群的其他节点上运行。本地资源包括:network资源,gsd资源,listener资源,ons资源,asm资源,磁盘组资源。
集群资源:该资源会选择在集群的某一个或多个节点上运行,当某个节点出现问题时,资源可以切换到集群中的其他节点上继续运行。集群资源包括:vip资源,scan vip资源,scan listener资源,gns资源,数据库服务资源。
OCR的管理
OCR(Oracle Cluster Register):OCR主要用于记录和CRSD相关的资源信息,CRSD通过访问OCR来获得集群资源的列表,以及每个资源的属性。
OCR主节点(OCR Master Node):由于集群中的每个节点的crsd.bin都需要访问OCR,而且有时需要修改其中的信息,所以集群中最先启动的节点上的crsd.bin会被选取去修改OCR的进程,而对应的节点被称为OCR主节点,集群中的其他节点只会在本地将OCR信息维护在cache中,在读取信息时从cache中读取,而在写入时,会将对应的信息发送给OCR主节点,由主节点完成最后的写入操作。
OCR的自动备份
OCR主节点的crsd.bin会自动地备份OCR文件,每隔4个小时就会进行一次备份,备份文件放在$GRID_HOME/cdata/目录下,并且会自动保留一份周备份,日备份以及最近3次的备份。
页:
[1]