基于agent的管理方式

  从oracle 11.2开始出现了多用户的概念,oracle开始使用一组多线程的daemon来同时支持多个用户的使用、管理资源,这些daemon叫做Agent。这些Agent都是些常驻内存的进程.

Agent的分类

  • oracle grid 11.2的agent有多个,其中两个最重要的是oracle agnet和oracle root agent。
  • oracle agnet 是以oracle用户身份运行(这个oracle用户是泛指,根据场合不同可能是grid,也可能是oracle)
  • oracle root agent是以root用户身份运行 这个两个agent对应的操作系统的进程的名字是:oraagent和orarootagent
  • OHAS栈会启动一套oracle agnet和oracle root agent。由OHAS启动的oracle agnet是用Grid的安装用户身份运行的。
  • CRS栈也会启动一套oracle agnet和oracle root agent。如果安装Grid的用户不是oracle,而是grid。则会启动两个oracle agnet。

Agent和资源的关系图

相应的日志结构(按树状图的层次)

第一层

  • OHASD 日志位于:$Grid_home/log/<hostname>/ohasd/ohasd.log

第二层:(OHASD的agent)

  • cssdagent 日志位于:   $Grid_home/log/<hostname>/agent/ohast/oracssdagent_root/oracssdagent_root.log
  • cssdmonitor 日志位于:  $Grid_home/log/<hostname>/agent/ohast/oracssdmonitor_root/oracssdmonitor_root.log
  • orarootagent 日志位于:    $Grid_home/log/<hostname>/agent/ohast/orarootagent_root/orarootagent_root.log
  • oraagent  日志位于:      $Grid_home/log/<hostname>/agent/ohast/oraagent_grid/oraagent_grid.log

第三层(资源)

  • CSSD 日志位于: $Grid_home/log/<hostname>/cssd/ocssd.log
  • CRSD 日志位于: $Grid_home/log/<hostname>/CRSD/CRSD.log
  • ctssd 日志位于:$Grid_home/log/<hostname>/ctssd/octssd.log
  • diskmon 日志位于:$Grid_home/log/<hostname>/ctssd/diskmon.log

OHASD的oraagent所管理资源的相应日志:

  • ora.evmd日志位于:$Grid_home/log/<hostname>/evmd/evmd.log
  • ora.mdnsd日志位于:$Grid_home/log/<hostname>/mdnsd/mdnsd.log
  • ora.gpnpd日志位于:$Grid_home/log/<hostname>/gpnpd/gpnpd.log
  • ora.gipcd 日志位于:$Grid_home/log/<hostname>/gipcd/gipcd.log

第四层(CRSD的agent)

  • orarootagent 日志位于: $Grid_home/log/<hostname>/agent/crsd/orarootagent_root/orarootagent_root.log
  • oraagent(grid)日志位于:$Grid_home/log/<hostname>/agent/crsd/oraagent_grid/oraagent_grid.log
  • oraagent(oracle)日志位于:$Grid_home/log/<hostname>/agent/crsd/oraagent_oracle/oraagent_oracle.log

Grid的启动顺序及作用

  Grid的启动可分为4个级别。

级别1:OHASD的活动。

  这个阶段,OHASD要启动4个agent,分别是ORAAGENT、ORAROOTAGENT、CSSDAGENT、CSSDMONITOR

  • CSSDAGENT:这个agent以root身份运行,负责启动CSSD,对应的进程名cssdagent
  • ORAROOTAGENT:这个agent以root身份运行,负责管理所有属于root用户的OHASD资源,对应的进程名orarootagent
  • CSSDMONIOTOR: 这个agent以root身份运行,和CSSDAGENT一起负责监控CSSD以及节点的健康状况,对应的进程名cssdmonitor
  • ORAAGENT: 这个agent以gird身份运行,负责管理所有属于grid用户的OHASD资源,对应的进程oraagent

级别2:ROOTAGENT的活动

  由OHASD启动的orarootagent要启动以下几个进程

  • CRSD:以root身份运行,对应进程crsd
  • CTSSD:Grid自己的时间同步服务,以root身份运行,对应的进程octssd
  • Diskmon:在非Exadata机器上是无效进程
  • ACFS:ASM集群文件系统的驱动,以root身份运行

级别2:ORAAGENT的活动

  由OHASD启动的oraagent进程要负责下面的进程和服务,这些服务都是以grid身份运行

  • ASM: ASM实例,用于挂载磁盘组
  • EVMD:负责订阅集群环境中事件的生成和发布。对应的进程名evmd
  • MDNSD:取决于是否使用GNS服务,对应的进程mdnsd
  • GIPCD:用于进程间和节点间的通信协议,进程名字GIPCD GPnPD:负责集群节点间GPnP profile的同步,这个文件保存在每个节点的本地目录:$GRID_HOME/gpnp/profile/profile.xml
  • GPnPD:对应的进程名字是gpnpd.bin

级别3:CRSD的活动

  CRSD会启动oraagent和orarootagent。

  • ORAROOTAGENT:这个agent以root身份运行。
  • ORAAGENT:这个agent会有两个,分别负责管理以grid、oracle身份运行的

级别4:ORAROOTAGENT的活动

  • Network Resource:对应public NETWORK
  • SCAN VIP: 由SCAN VIP 和 SCAN Listener的配对组成
  • Node VIP:是Public NIC上的VIP地址,每个节点都需要一个vip

  SCAN VIP和Node VIP类似,都是浮动地址。不同的是,Node VIP在数量上等于几点的个数,每个节点一个。而SCAN VIP和节点 数量没关系,和集群规模没关系,固定就是3个(在试验环境中可以不用DNS,而是用/etc/hosts来解析scan域名,这时scan vip 可以只要一个,但仅限于实验环境,生产环境不要这么做)。   ACFS Registry:用户挂在ACFS文件系统 GNS VIP(可选):GNS的VIP

级别4:ORAAGENT 的活动(grid用户)

  以grid身份运行的oraagent会启动以下这些资源

  • ASM资源:ASM 实例
  • Diskgroup:管理和监视ASM磁盘组
  • SCAN Listener:监听SCAN VIP的监听器
  • Listener:监听节点VIP的监听器
  • ONS:oracle事件通知服务
  • eONS:增强版的ONS
  • GSD:向后兼容9i的服务
  • GSN(可选):代替DNS处理名字解析

级别4:ORAAGENT 的活动(oracle用户)

  • DB:管理和监视DB和实例
  • Service:管理和监视service

------整理自《大话oracle  Grid》

11g RAC R2 体系结构---Grid的更多相关文章

  1. 转 11g RAC R2 体系结构---Grid

    基于agent的管理方式 从oracle 11.2开始出现了多用户的概念,oracle开始使用一组多线程的daemon来同时支持多个用户的使用.管理资源,这些daemon叫做Agent.这些Agent ...

  2. oracle之 11g RAC R2 体系结构---Grid

    -- 查看cluster 所维护的资源列表,不包括 OHAS 栈的 daemon [root@node1 bin]# ./crsctl status resource -t-------------- ...

  3. 11g RAC R2 体系结构---用户及用户组

    10.2 RAC 到11.2 RAC 用户及用户组的变化: 在10.2 RAC 的部署中,只需要一个用户(oracle)和一个用户组(dba).Database.Clusterware都是用oracl ...

  4. 11g RAC R2 体系结构---进程,日志

    进程结构:Overview of Oracle Clusterware Platform-Specific Software Components When Oracle Clusterware is ...

  5. oracle 11g rac R2 for linux change(public,vip)IP ,hostname (oracle 11g rac R2 修改公有,虚拟,私有IP,网卡)

    结构如下: 说明: 节点IP,主机名的修改步骤来自ORACLE support文档: 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1) 实验环境情况如下: 实验 节点名称 数 ...

  6. 安装Oracle 11g RAC R2 之Linux DNS 配置

    Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称.SCAN 这个特性为客户端提供了单一的主机名,用于访问集 ...

  7. 11g RAC R2 之Linux DNS 配置

    在动手配置前,最好先了解下DNS的理论,以免犯不必要的错误.这都是被坑后的觉悟 -_-!!! Oracle 11g RAC 集群中引入了SCAN(SingleClientAccessName)的概念, ...

  8. 11g RAC R2 日常巡检--Grid

    一.巡检RAC数据库 1.1列出数据库 [grid@node1 ~]$ srvctl config database racdb [grid@node1 ~]$ 1.2列出数据库的实例 [grid@n ...

  9. 11g RAC r2 的启停命令概述1

    目标: 熟悉主要进程的启停顺序 了解独占模式 -excl crsctl start crs与crsctl start cluster 区别 1.熟悉主要进程的启停顺序 1.1 启动节点rac1: [r ...

随机推荐

  1. Pull解析-解析xml文件

    首先需要导入jar包:kxml2-2.2.2.jar 例程: main: /** * pull解析 * * @author my * */ public class DemoParserStudent ...

  2. hdu 2121 , hdu 4009 无定根最小树形图

    hdu 2121 题目:给出m条有向路,根不确定,求一棵最小的有向生成树. 分析:增加一个虚拟节点,连向n个节点,费用为inf(至少比sigma(cost_edge)大).以该虚拟节点为根求一遍最小树 ...

  3. html5 Canvas API

    详细内容请点击 1.HTML Canvas API有两方面优势可以弥补:首先,不需要将所绘制图像中的每个图元当做对象存储,因此执行性能非常好:其次,在其他编程语言现有的优秀二维绘图API的基础上实现C ...

  4. html5 requestAnimationFrame制作动画:旋转风车

    详细内容请点击 在以往,我们在网页上制作动画效果的时候,如果是用javascript实现,一般都是通过定时器和间隔来实现的,出现HTML5之后,我们还可以用CSS3 的transitions和anim ...

  5. ado模版不会自动生成

    从数据库中更新模版的时候,其他文件都更新了,只有tt文件下的cs文件是没有更新的,没有添加也没有修改,在网上找了很久都没有这方面的信息. 其实只要删掉,重建一个ado模版就好.根本就不需要纠结.最后还 ...

  6. hdu 5444 Elven Postman(二叉树)——2015 ACM/ICPC Asia Regional Changchun Online

    Problem Description Elves are very peculiar creatures. As we all know, they can live for a very long ...

  7. Cocos2d-JS键盘事件

    Cocos2d-JS中的键盘事件与触摸事件不同,它没有空间方面信息.键盘事件不仅可以响应键盘,还可以响应设备的菜单.键盘事件是EventKeyboard,对应的键盘事件监听器(cc.EventList ...

  8. 20141124-HTML-JavaScrilpt

    JavaScript JavaScript(简称JS),他是一门HTML的脚本语言,用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用. 他的用法及语法类似于Visual Stud ...

  9. 浅谈JavaScript中的apply,call和bind

    apply,call,bine 这三兄弟经常让初学者感到疑惑.前两天准备面试时特地做了个比较,其实理解起来也不会太难. apply MDN上的定义: The apply() method calls ...

  10. ESB数据采集思路

    昨天接到一个任务,使用公司的ESB,调用别人的接口,把得到的数据存储到mysql数据库当中,这里简单记录解决思路,方便以后查看. 1.拿到一个网站的地址,使用火狐浏览器的firebug工具,查看其传递 ...