基于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. Android 高级UI设计笔记21:Android SegmentView(分段选择控件)

    1. 分段控制(SegmentView) 首先我们先看看什么是SegmentView的效果,如下: 分段控制这个View控件是ios7的分段控制,和QQ消息页面顶部的效果一样,android没有这个控 ...

  2. Java基础知识强化106:Java中 int 的各进制之间的转换

    1.二.八.十.十六进制之间的转换  下面是示例代码,我们直接通过JDK工具库中的方法实现的,如下: public static Integer valueOf(String s, int radix ...

  3. java产生不重复的随机数

    /** *产生9位不同的随机数 */ private String getRandomString(){ StringBuffer sb = new StringBuffer(); for(int i ...

  4. Kali linux 2016无法打开virtualbox问题解决

    Kali Linux在安装完virtualbox后,打开虚拟机会出现:kernel driver not installed (rc=1908)错误提示,根据提示,大概可以看出是由于缺少内核模块引起的 ...

  5. python 基础——运算符重载

    方法 重载 调用 __init__ 构造函数 x = Class() __del__ 析构函数 del x __str__ 打印 print x __call__ 调用函数 x(*args) __ge ...

  6. hdu 4719 动态规划

    思路:dp[i]表示到第i个点为结尾能获得的最大值,那么dp[i]=h[i]*h[i]+dp[i-x]-h[i-x];(i-l<=x<=i);那么我们可以转换下,以dp[i]-h[i]为新 ...

  7. CF 322E - Ciel the Commander 树的点分治

    树链剖分可以看成是树的边分治,什么是点分治呢? CF322E - Ciel the Commander 题目:给出一棵树,对于每个节点有一个等级(A-Z,A最高),如果两个不同的节点有相同等级的父节点 ...

  8. CS异步下载

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  9. Stimulsoft Reports筛选数据来绑定显示2个报表

    今天用Stimulsoft Reports做报表的时候,遇到一个问题,需要一个报表中显示2个报表视图,我在百度和博客园中搜索了一下,发现这方面的资料很少,我自己最后把问题解决了之后,整理了一下给大家分 ...

  10. MySQL配置管理

    数据库的链接: 获取项目结果集和链接: package Dao; import java.sql.Connection; import java.sql.ResultSet; import java. ...