1. 程式人生 > >使用crs_profile管理RAC資源配置檔案

使用crs_profile管理RAC資源配置檔案

    profile通常指配置檔案,crs_profile望文生義可知,就是管理叢集的配置檔案。在Oraclele RAC中,所有的CRS資源存放在OCR磁碟中,對於OCR更形象的比喻是類似於Windows的登錄檔。我們知道Windows登錄檔由類似樹狀的節點構成,其形式是KEY-VALUE,叢集中的資源也是如此。Windows登錄檔可以整個匯出,分支匯出,也可以匯入登錄檔資訊。針對叢集資源的管理crs_profile結合crs_register與crs_unregisterd等同於一個類似於Windows的regedit 管理工具。這麼說就不陌生了吧,接著往下看。

一、crs_profile的幫助資訊


  對於Oracle clusterware大部分叢集命令列工具而言,都提供豐富的操作指導。命令列下直接輸入crs_profile將給出幫助資訊
[email protected]:~> crs_profile
Usage:  crs_profile -create resource_name -t application
          [-dir directory_path] [-a action_script] [-B binary_pathname]
          [-d description] [-h hosting_members] [-r required_resources]
          [-l optional_resources] [-p placement_policy]
          [-o as=auto_start,ci=check_interval,ft=failure_threshold,
          fi=failure_interval,ra=restart_attempts,fd=failover_delay,
          st=script_timeout,ap=active_placement,bt=rebalance,
          ut=uptime_threshold,rt=start_timeout,pt=stop_timeout] [-f] [-q]

        crs_profile -create resource_name -I template_file [-dir directory_path] [-f] [-q]

        crs_profile -delete resource_name [-dir directory_path] [-q]

        crs_profile -print [resource_name [...]] [-dir directory_path] [-q]

        crs_profile -template resource_name [-dir directory_path] [-O template_file]

        crs_profile -template -t application [-O template_file]

        crs_profile -update resource_name [-dir directory_path] [option ...] [-o option,...] [-q]

        crs_profile -validate resource_name [-dir directory_path] [-q]

二、使用crs_profile操作叢集資源

1、檢視當前叢集中的資源
#使用crs_stat檢視叢集中含srv的配置資訊
[email protected]:~> crs_stat -p | grep srv
NAME=ora.GOBO4.GOBO4_SRV.GOBO4A.srv
NAME=ora.ora10g.hr_ora10g.ora10g1.srv
DESCRIPTION=ora.ora10g.hr_ora10g.ora10g1.srv

#使用crs_stat檢視叢集的service服務當前處於online狀態
[email protected]:~> crs_stat -t | grep srv
ora....O4A.srv application    ONLINE    ONLINE    bo2dbp      
ora....0g1.srv application    ONLINE    ONLINE    bo2dbp  

2、使用crs_profile匯出指定的叢集資源資訊到檔案        
[email protected]:~> crs_profile -create ora.ora10g.hr_ora10g.ora10g1.srv -t application #匯出到預設路徑
[email protected]:~> crs_profile -create ora.ora10g.hr_ora10g.ora10g1.srv -t application -dir /users/oracle #匯出到指定路徑

[email protected]:~> ls -hltr ora.ora10g.hr_ora10g.ora10g1.srv*
-rw-r--r-- 1 oracle oinstall 820 2012-11-07 17:34 ora.ora10g.hr_ora10g.ora10g1.srv.cap
[email protected]:~> ls -hltr $ORA_CRS_HOME/crs/public/ora.ora10g.hr_ora10g.ora10g1.srv*  #此處是預設路徑
-rw-r--r-- 1 oracle oinstall 833 2012-11-07 17:29 /u01/oracle/crs/crs/public/ora.ora10g.hr_ora10g.ora10g1.srv.cap

3、 檢視已匯出的資源配置檔案的資訊
[email protected]:~> crs_profile -print ora.ora10g.hr_ora10g.ora10g1.srv #未指定路徑的時候print預設路徑的內容
NAME=ora.ora10g.hr_ora10g.ora10g1.srv
TYPE=application
ACTION_SCRIPT=/u01/oracle/crs/crs/public/ora.ora10g.hr_ora10g.ora10g1.srv.scr
ACTIVE_PLACEMENT=0
AUTO_START=restore
CHECK_INTERVAL=60
DESCRIPTION=ora.ora10g.hr_ora10g.ora10g1.srv
FAILOVER_DELAY=0
FAILURE_INTERVAL=0
FAILURE_THRESHOLD=0
HOSTING_MEMBERS=
OPTIONAL_RESOURCES=
PLACEMENT=balanced
REQUIRED_RESOURCES=
RESTART_ATTEMPTS=1
SCRIPT_TIMEOUT=60
START_TIMEOUT=0
STOP_TIMEOUT=0
UPTIME_THRESHOLD=7d
USR_ORA_ALERT_NAME=
USR_ORA_CHECK_TIMEOUT=0
USR_ORA_CONNECT_STR=/ as sysdba
USR_ORA_DEBUG=0
USR_ORA_DISCONNECT=false
USR_ORA_FLAGS=
USR_ORA_IF=
USR_ORA_INST_NOT_SHUTDOWN=
USR_ORA_LANG=
USR_ORA_NETMASK=
USR_ORA_OPEN_MODE=
USR_ORA_OPI=false
USR_ORA_PFILE=
USR_ORA_PRECONNECT=none
USR_ORA_SRV=
USR_ORA_START_TIMEOUT=0
USR_ORA_STOP_MODE=immediate
USR_ORA_STOP_TIMEOUT=0
USR_ORA_VIP=

4、資源配置檔案中常用子項說明
 引數名稱     說明                    引數指令(以create為例)
 --------------    -----------------             --------------------------
 NAME               資源名稱                   crs_profile –create resource_name
  TYPE               資源型別(application, generic)      crs_profile –create resource_name –t …
  ACTION_SCRIPT      用來管理HA方案指令碼           crs_profile –create resource_name –a …
  ACTIVE_PLACEMENT   資源貯存的位置/節點           crs_profile –create resource_name –o –ap …
  AUTO_START         資源自啟動               crs_profile –create resource_name –o –as …
  CHECK_INTERVAL     資源監控間隔              crs_profile –create resource_name –o –ci …
  FAILOVER_DELAY     資源failover的等待時間         crs_profile –create resource_name –o –fd …
  FAILURE_INTERVAL   資源重啟嘗試間隔            crs_profile –create resource_name –o –fi …
  FAILURE_THRESHOLD  資源重啟嘗試次數(最大20次)       crs_profile –create resource_name –o –ft …
  HOSTING_MEMBERS    資源啟動或者failover的首要節點選擇   crs_profile –create resource_name –h …
  PLACEMENT          資源啟動或者failover的節點選擇模式   crs_profile –create resource_name -p
  REQUIRED_RESOURCES 當前資源所依賴的資源         crs_profile –create resource_name -r
  RESTART_ATTEMPTS   資源重配置之前的嘗試啟動次數     crs_profile –create resource_name –o –ra …
  SCRIPT_TIMEOUT     等待ACTION_SCRIPT的結果返回時間    crs_profile –create resource_name –o –st …
  USR_ORA_VIP        Vip地址     crs_profile –create vip_name -t application –a $ORA_CRS_HOME/bin/uservip –o oi=…,ov=…,on=…

5、刪除已匯出的資源配置檔案
[email protected]:~> crs_profile -delete ora.ora10g.hr_ora10g.ora10g1.srv -dir /users/oracle
[email protected]:~> crs_profile -print ora.ora10g.hr_ora10g.ora10g1.srv -dir /users/oracle #再次檢視時提示配置檔案不存在
CRS-0181: Cannot access the resource profile 'ora.ora10g.hr_ora10g.ora10g1.srv'.

6、更新資源配置檔案中的項
[email protected]:~> crs_profile -update ora.ora10g.hr_ora10g.ora10g1.srv -o as=never  #此處更新資源配置檔案中的AUTO_START項
[email protected]:~> crs_profile -print ora.ora10g.hr_ora10g.ora10g1.srv
NAME=ora.ora10g.hr_ora10g.ora10g1.srv
TYPE=application
ACTION_SCRIPT=/u01/oracle/crs/crs/public/ora.ora10g.hr_ora10g.ora10g1.srv.scr
ACTIVE_PLACEMENT=0
AUTO_START=never  #此時,此項已經由原來的restore變成never
CHECK_INTERVAL=60
DESCRIPTION=ora.ora10g.hr_ora10g.ora10g1.srv
FAILOVER_DELAY=0
FAILURE_INTERVAL=0
FAILURE_THRESHOLD=0
HOSTING_MEMBERS=
OPTIONAL_RESOURCES=
PLACEMENT=balanced
REQUIRED_RESOURCES=
RESTART_ATTEMPTS=1
SCRIPT_TIMEOUT=60
START_TIMEOUT=0
STOP_TIMEOUT=0
UPTIME_THRESHOLD=7d
USR_ORA_ALERT_NAME=
USR_ORA_CHECK_TIMEOUT=0
USR_ORA_CONNECT_STR=/ as sysdba
USR_ORA_DEBUG=0
USR_ORA_DISCONNECT=false
USR_ORA_FLAGS=
USR_ORA_IF=
USR_ORA_INST_NOT_SHUTDOWN=
USR_ORA_LANG=
USR_ORA_NETMASK=
USR_ORA_OPEN_MODE=
USR_ORA_OPI=false
USR_ORA_PFILE=
USR_ORA_PRECONNECT=none
USR_ORA_SRV=
USR_ORA_START_TIMEOUT=0
USR_ORA_STOP_MODE=immediate
USR_ORA_STOP_TIMEOUT=0
USR_ORA_VIP=

#AUTO_START的值也可以用0,1,2來表示,其中0 等同always, 1 等同restore, 2 等同never 

7、驗證資源配置檔案的正確性
[email protected]:~> crs_profile -validate ora.ora10g.hr_ora10g.ora10g1.srv

#下面嘗試將AUTO_START項值改為3
[email protected]:~> vi $ORA_CRS_HOME/crs/public/ora.ora10g.hr_ora10g.ora10g1.srv.cap

[email protected]:~> crs_profile -print ora.ora10g.hr_ora10g.ora10g1.srv | grep AUTO_START
AUTO_START=3

#下面驗證的時候產生了錯誤
[email protected]:~> crs_profile -validate ora.ora10g.hr_ora10g.ora10g1.srv  
Error: AUTO_START invalid: 3 
CRS-0180: Resource '/u01/oracle/crs/crs/public/ora.ora10g.hr_ora10g.ora10g1.srv.cap' validation failed.

#再次使用update引數更新配置檔案
[email protected]:~> crs_profile -update ora.ora10g.hr_ora10g.ora10g1.srv -o as=1
[email protected]:~> crs_profile -print ora.ora10g.hr_ora10g.ora10g1.srv | grep AUTO_START
AUTO_START=1
[email protected]:~> crs_profile -validate ora.ora10g.hr_ora10g.ora10g1.srv  #此處驗證成功

8、匯出資源配置模板
#下面匯出指定資源模板
[email protected]:~> crs_profile -template ora.ora10g.hr_ora10g.ora10g1.srv
[email protected]:~> ls -hltr *temp*
-rw-r--r-- 1 oracle oinstall 700 2012-11-07 18:27 template.cap

#可以看到下面的模板配置檔案中包含了指定資源所需的所有子項,有些子項不需要的則其值為空
[email protected]:~> more template.cap
NAME=
TYPE=application
ACTION_SCRIPT=
ACTIVE_PLACEMENT=0
AUTO_START=1
CHECK_INTERVAL=60
DESCRIPTION=
FAILOVER_DELAY=0
FAILURE_INTERVAL=0
FAILURE_THRESHOLD=0
HOSTING_MEMBERS=
OPTIONAL_RESOURCES=
PLACEMENT=balanced
REQUIRED_RESOURCES=
RESTART_ATTEMPTS=1
SCRIPT_TIMEOUT=60
START_TIMEOUT=0
STOP_TIMEOUT=0
UPTIME_THRESHOLD=7d
USR_ORA_ALERT_NAME=
USR_ORA_CHECK_TIMEOUT=0
USR_ORA_CONNECT_STR=/ as sysdba
USR_ORA_DEBUG=0
USR_ORA_DISCONNECT=false
USR_ORA_FLAGS=
USR_ORA_IF=
USR_ORA_INST_NOT_SHUTDOWN=
USR_ORA_LANG=
USR_ORA_NETMASK=
USR_ORA_OPEN_MODE=
USR_ORA_OPI=false
USR_ORA_PFILE=
USR_ORA_PRECONNECT=none
USR_ORA_SRV=
USR_ORA_START_TIMEOUT=0
USR_ORA_STOP_MODE=immediate
USR_ORA_STOP_TIMEOUT=0
USR_ORA_VIP=

#匯出所有application的資源配置通用模板
[email protected]:~> crs_profile -template -t application -O tmplate.cap
[email protected]:~> ls -hltr *.cap
-rw-r--r-- 1 oracle oinstall 700 2012-11-07 18:27 template.cap
-rw-r--r-- 1 oracle oinstall 706 2012-11-07 18:32 tmplate.cap
#Author : Robinson
#Blog   : http://blog.csdn.net/robinson_0612

三、總結
crs_profile是用於管理OCR配置檔案中資源的工具,可以對application等資源進行匯出以實現備份,以及匯出後進行更新,檢視等。
對於其更新之後的新的配置檔案可以使用crs_register工具將其註冊到OCR。

四、更多參考

相關推薦

使用crs_profile管理RAC資源配置檔案

    profile通常指配置檔案,crs_profile望文生義可知,就是管理叢集的配置檔案。在Oraclele RAC中,所有的CRS資源存放在OCR磁碟中,對於OCR更形象的比喻是類似於Windows的登錄檔。我們知道Windows登錄檔由類似樹狀的節點構成,其形式是

asset 資源配置檔案

 在遊戲開發中,我們經常要對一些資料預先配置,一般可通過XML,Json配置. 還可以用Unity自帶的.Asset資源配置檔案配置資料,下面介紹一下如何靈活快速的建立.Asset檔案並使用. Asset檔案可以直接配置如 GameObject、Sprite、AudioClip等高階的

Unity3D自定義資源配置檔案

配置資原始檔估計大家瞭解很多,比如XML、JSON、Protobuf、Excel、TXT等等在開發過程中,將遊戲資料序列化到配置檔案中,專案執行時讀取配置檔案中的資料本文另外介紹一個Unity的配置檔案(.asset)該配置檔案的優點:當我們需要將遊戲資源裡的貼圖(Textu

java+maven 中excel等 資源配置檔案亂碼問題

昨天在資源中加了一個excel的配置檔案,結果下載下來excel內容是亂碼,一直懷疑是編碼的問題,因為在工程中開啟excel是沒有問題的. 改來改去,總是不行,由於是用maven打包的.就解壓打包檔案看了一下,發現打完包excel就是亂碼了,由此確認是maven的問題 網上

Mysql系列九:使用zookeeper管理遠端Mycat配置檔案、Mycat監控、Mycat資料遷移(擴容)

一、使用zookeeper管理遠端Mycat配置檔案 環境準備: 虛擬機器192.168.152.130: 虛擬機器192.168.152.128: 本機: 1. 啟動ZK ./zkServer.sh start   2. 修改/usr/local

Unity3d進階學習(8)-- 自定義資源配置檔案、序列化

一、資源配置檔案、序列化的介紹 資源配置檔案:在遊戲開發中,經常會用到一些配置檔案儲存一些資料,然後專案執行中讀取這些配置檔案中的資料在遊戲中使用。比如 XML、JSON、Protobuf、Excel

java在gradle工程訪問src/test/resources目錄下的資源配置檔案

package com.jiepu; import java.io.File; import java.net.URISyntaxException; import java.util.Map; im

YAML配置檔案管理資源

配置檔案說明 定義配置時,指定最新穩定版API; API版本可以通過命令kubectl api-versions檢視到 配置檔案應該儲存在叢集之外的版本控制倉庫中。如果需要,可以快速回滾配置、重新建立和恢復; 例如git。 應該使用

SpringBoot結合Flyway實現資料庫版本管理配置檔案說明

SpringBoot結合Flyway實現資料庫版本管理及配置檔案說明 文章目錄 前言 例項 其它配置 拓展 前言 Flyway是個很好的資料庫版本管理工具,根據版本號順序執行sql檔案,維護一個統一的資料庫,適用於多人協作

使用Apollo管理Springboot配置檔案的相關配置

1,引入Maven依賴: <dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-client</artifactId>

RHEL samba 服務多配置檔案安全管理

某公司以RHEL系統配置伺服器,現為了共享各類文件資料,要求在rhel系統上建立一個共享目錄/tec,該目錄對技術部門員工完全開放,/sale目錄對銷售部門人員完全開放。現公司有如下三類人員需要登入samba伺服器使用這2個共享目錄,要求如下: 1、技術部門人員登入時,只能見到/tec,能訪問該目錄且有完全

haproxy.cfg 配置檔案 python指令碼管理

HAproxy.cfg 事例檔案 global log 127.0.0.1 local1 notice stats timeout 30s user haproxy group haproxy daemon

springMVC-spring-Hibernate 開發學生管理系統簡單案例-配置檔案說明(三)

三、配置檔案說明 原始檔:https://download.csdn.net/download/flyingshadower/10628472 (1)在pom.xml寫入需要的各類依賴,自動下載依賴包。 <?xml version="1.0" encoding="UTF-8"?&g

maven 多配置檔案,多環境管理

有時候,我們在開發和部署的時候,有很多配置檔案資料是不一樣的,比如連線mysql,連線redis,一些properties檔案等等 每次部署或者開發都要改配置檔案太麻煩了,這個時候,就需要用到maven的profile配置了 1,在專案下pom.xml的

Servlet從配置檔案獲取web資源

1.建立檔案 ServletContextAndProperties.java類 test.properties檔案 2.程式碼 test.properties name = Tom age = 18 ServletCon

SSH專案實戰OA-Zookeeper管理配置檔案

為什麼要用統一配置? 我們做專案時用到的配置比如資料庫配置等...我們都是寫死在專案裡面,如果需要更改,那麼也是的修改配置檔案然後再投產上去,那麼問題來了,如果做叢集的呢,有100臺機器,這時候做修改那就太不切實際了;那麼就需要用到統一配置管理啦。 解決思路 一,把公共配置抽取出來,儲存

springcloud 配置檔案管理動態重新整理

配置檔案管理server端 當修改一個配置檔案,我們需要重新打包專案或重新啟動服務才能生效,springcloud的config實現了配置檔案的統一管理,當配置檔案修改後提交Git後系統會自動重新整理獲取修改後的配置檔案。 eureka叢集搭建 rabbitmq的安裝配

nginx簡易配置檔案資源

Nginx配置修改,新增如下配置 location /res/ { root /data/; autoindex on; } /data/目錄下mkdir res nginx/html/目

Linux學習之使用者和使用者組管理-使用者配置檔案-組資訊檔案

一、組資訊檔案 /etc/group  和組密碼檔案 /etc/gshadow 1、組資訊檔案  /etc/group [[email protected] ~]# vim /etc/group root:x:0: bin:x:1:bin,daemon d

Linux 學習之使用者和使用者組管理-使用者配置檔案-影子檔案

一、影子檔案  /etc/shadow 影子檔案中存放的是真正的加密的使用者密碼字串資訊 1、影子檔案  /etc/shadow [[email protected] ~]# vim /etc/shadow root:$6$4U2qaEjT2hXXuf