ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • RAC 03: Clusterware 관리 — crsctl · srvctl · OCR · 로그 분석
    DB 스터디/04_RAC 2026. 6. 18. 23:09

    실습 스크립트 전체 보기: https://github.com/nsylove97/NSY-DB-Portfolio

    실습 환경

    OS Oracle Linux 7.9 (VMware Virtual Machine)
    DB Oracle Database 19c
    Grid Oracle Grid Infrastructure 19c
    구성 2 Node RAC (VM1 · VM2)
    공유 스토리지 ASM (+DATA / +FRA / +REDO / +OCR)
    네트워크 Public (NAT) · Private (Host-only) · VIP · SCAN
    VM1/VM2
    초기 구성 참조
    ASM 실습 01
    RAC 구축 참조 RAC 02

    목차
    1. Oracle HAS 구성 — ohasd부터 인스턴스까지 기동 계층
    2. CSS — 멤버십 관리와 Eviction
    3. CRS / crsd — 클러스터 리소스 관리자
    4. crsctl 명령 체계
    5. srvctl 명령 체계
    6. srvctl config database — 자동 시작 정책
    7. OCR 정합성 검사 — cluvfy · ocrcheck
    8. OCR 백업 이력 확인 및 수동 백업
    9. ADRCI — 장애 로그 조회
    10. Grid 컴포넌트 로그 위치
    11. OHAS / CSS / CRS 온라인 상태 확인 절차
    12. 주요 명령어 정리

    1. Oracle HAS 구성 — ohasd부터 인스턴스까지 기동 계층

     

    Oracle Clusterware는 부팅 시 ohasd 데몬 시작, 순차적으로 상위 컴포넌트 기동

    OS 부팅
      └─ init.ohasd (OS 서비스 등록)
           └─ ohasd (Oracle High Availability Services Daemon)
                ├─ Cluster Ready Services (CRS) 계층
                │     └─ crsd
                ├─ Cluster Synchronization Services (CSS) 계층
                │     └─ ocssd
                └─ Cluster Time Synchronization Service (CTSS)
                      └─ ASM 인스턴스
                            └─ 리스너
                                  └─ DB 인스턴스
    -- [oelsvr1 — grid]
    $ ps -ef | grep ohasd
    root      2448     1  1 20:41 ?        00:01:39 /u01/app/19.3.0/gridhome/bin/ohasd.bin reboot
    
    $ crsctl check has
    CRS-4638: Oracle High Availability Services is online

    ohasd 기동 확인

    • ohasd: OS와 무관하게 가장 먼저 자동 기동, 이후 모든 Clusterware 프로세스의 부모 역할
    • crsctl check has: ohasd 레벨까지만 확인, 클러스터 전체 상태는 crsctl check crs로 별도 확인해야 함

    2. CSS — 멤버십 관리와 Eviction

     

    CSS(Cluster Synchronization Services): 각 노드의 생존 여부를 감시하고, 클러스터 멤버십을 관리하는 핵심 컴포넌트

    -- [oelsvr1 — grid]
    $ crsctl check cluster -all
    **************************************************************
    oelsvr1:
    CRS-4537: Cluster Ready Services is online
    CRS-4529: Cluster Synchronization Services is online
    CRS-4533: Event Manager is online
    **************************************************************
    oelsvr2:
    CRS-4537: Cluster Ready Services is online
    CRS-4529: Cluster Synchronization Services is online
    CRS-4533: Event Manager is online
    **************************************************************
    
    $ crsctl get css misscount
    CRS-4678: Successful get misscount 30 for Cluster Synchronization Services

     

    전체 노드 클러스터 상태 확인 및 network heartbeat의 eviction 기준 시간 조회

    판단 기준 설명
    Network Heartbeat Private Interconnect로 노드 간 생존 신호 교환
    Disk Heartbeat Voting Disk에 주기적 기록으로 생존 신호 교환
    misscount Network Heartbeat 응답 없을 시 Eviction까지 대기 시간(초), 기본 60초
    disktimeout Disk Heartbeat 응답 없을 시 Eviction까지 대기 시간(초), 기본 200초

     

    • misscount 시간 동안 응답이 없는 노드는 Split-Brain 방지를 위해 강제로 클러스터에서 제외됨(Eviction)
    • Eviction된 노드는 자동으로 Reboot (데이터 손상을 막기 위한 의도적인 동작)

     

    3. CRS / crsd — 클러스터 리소스 관리자

     

    crsd: DB, 인스턴스, 리스너, VIP, 서비스 등 모든 클러스터 리소스의 시작·중지·재시작·Failover 담당

    -- [oelsvr1 — grid]
    $ crsctl stat res -t -init
    --------------------------------------------------------------------------------
    Name           Target  State        Server                   State details
    --------------------------------------------------------------------------------
    Cluster Resources
    --------------------------------------------------------------------------------
    ora.asm
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.cluster_interconnect.haip
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.crf
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.crsd
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.cssd
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.cssdmonitor
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.ctssd
          1        ONLINE  ONLINE       oelsvr1                  OBSERVER,STABLE
    ora.diskmon
          1        OFFLINE OFFLINE                               STABLE
    ora.evmd
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.gipcd
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.gpnpd
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.mdnsd
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.storage
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    --------------------------------------------------------------------------------

    클러스터 리소스 상태 확인

    • crsd가 비정상 종료되면 해당 노드의 리소스 관리 기능 중단, ohasd는 자동으로 crsd 재기동 시도
    • -init 옵션: OHASD가 관리하는 하위 레벨 리소스(ASM, crsd, cssd 등)를 조회할 때 사용

    4. crsctl 명령 체계

     

    crsctl: 클러스터 전체와 OHASD 레벨 리소스를 제어하는 명령어

    -- [oelsvr1 — grid]
    $ crsctl check crs
    CRS-4638: Oracle High Availability Services is online
    CRS-4537: Cluster Ready Services is online
    CRS-4529: Cluster Synchronization Services is online
    CRS-4533: Event Manager is online

    ohasd, crs, css, evm 상태 확인

    $ crsctl stat res -t
    --------------------------------------------------------------------------------
    Name           Target  State        Server                   State details
    --------------------------------------------------------------------------------
    Local Resources
    --------------------------------------------------------------------------------
    ora.LISTENER.lsnr
                   ONLINE  ONLINE       oelsvr1                  STABLE
                   ONLINE  ONLINE       oelsvr2                  STABLE
    ora.chad
                   ONLINE  ONLINE       oelsvr1                  STABLE
                   ONLINE  ONLINE       oelsvr2                  STABLE
    ora.net1.network
                   ONLINE  ONLINE       oelsvr1                  STABLE
                   ONLINE  ONLINE       oelsvr2                  STABLE
    ora.ons
                   ONLINE  ONLINE       oelsvr1                  STABLE
                   ONLINE  ONLINE       oelsvr2                  STABLE
    --------------------------------------------------------------------------------
    Cluster Resources
    --------------------------------------------------------------------------------
    ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  STABLE
          2        ONLINE  ONLINE       oelsvr2                  STABLE
          3        ONLINE  OFFLINE                               STABLE
    ora.DATA.dg(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  STABLE
          2        ONLINE  ONLINE       oelsvr2                  STABLE
          3        OFFLINE OFFLINE                               STABLE
    ora.FRA.dg(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  STABLE
          2        ONLINE  ONLINE       oelsvr2                  STABLE
          3        OFFLINE OFFLINE                               STABLE
    ora.LISTENER_SCAN1.lsnr
          1        ONLINE  ONLINE       oelsvr2                  STABLE
    ora.LISTENER_SCAN2.lsnr
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.LISTENER_SCAN3.lsnr
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.OCR.dg(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  STABLE
          2        ONLINE  ONLINE       oelsvr2                  STABLE
          3        OFFLINE OFFLINE                               STABLE
    ora.REDO.dg(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  STABLE
          2        ONLINE  ONLINE       oelsvr2                  STABLE
          3        OFFLINE OFFLINE                               STABLE
    ora.asm(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  Started,STABLE
          2        ONLINE  ONLINE       oelsvr2                  Started,STABLE
          3        OFFLINE OFFLINE                               STABLE
    ora.asmnet1.asmnetwork(ora.asmgroup)
          1        ONLINE  ONLINE       oelsvr1                  STABLE
          2        ONLINE  ONLINE       oelsvr2                  STABLE
          3        OFFLINE OFFLINE                               STABLE
    ora.cvu
          1        ONLINE  ONLINE       oelsvr2                  STABLE
    ora.oelsvr1.vip
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.oelsvr2.vip
          1        ONLINE  ONLINE       oelsvr2                  STABLE
    ora.orcl.db
          1        ONLINE  ONLINE       oelsvr1                  Open,HOME=/u01/app/o
                                                                 racle/product/19.3.0
                                                                 /dbhome,STABLE
          2        ONLINE  ONLINE       oelsvr2                  Open,HOME=/u01/app/o
                                                                 racle/product/19.3.0
                                                                 /dbhome,STABLE
    ora.qosmserver
          1        ONLINE  ONLINE       oelsvr2                  STABLE
    ora.scan1.vip
          1        ONLINE  ONLINE       oelsvr2                  STABLE
    ora.scan2.vip
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    ora.scan3.vip
          1        ONLINE  ONLINE       oelsvr1                  STABLE
    --------------------------------------------------------------------------------

    모든 클러스터 리소스 상태 조회

    -- 클러스터 전체 정지 (root 권한 필요)
    $ /u01/app/19.3.0/gridhome/bin/crsctl stop cluster -all

    클러스터 전체 종료

    -- 클러스터 전체 기동 (root 권한 필요)
    $ /u01/app/19.3.0/gridhome/bin/crsctl start cluster -all

    클러스터 전체 기동

    명령어 용도
    crsctl check crs OHASD/CRS/CSS/EVM 4계층 상태 확인
    crsctl stat res -t 모든 클러스터 리소스 상태 조회 (노드별)
    crsctl stop cluster -all 전체 노드 Clusterware 정지
    crsctl start cluster -all 전체 노드 Clusterware 기동
    crsctl stat res -t -init OHASD 레벨 하위 리소스만 조회

     

    • -all 옵션 없이 crsctl stop cluster만 실행하면 현재 접속한 로컬 노드만 정지
    • stop cluster: DB·리스너 등 상위 리소스만 정지 (OHASD 자체는 살아있음)
    • stop crs: ohasd까지 정지

    5. srvctl 명령 체계

     

    srvctl: DB, 인스턴스, 리스너, 서비스 등 개별 컴포넌트 단위로 제어하는 명령어 (crsctl보다 상위 레벨)

    -- [oelsvr1 — oracle]
    -- orcl 전체 인스턴스 상태
    $ srvctl status database -d orcl
    Instance orcl1 is running on node oelsvr1
    Instance orcl2 is running on node oelsvr2
    
    -- orcl1 인스턴스 상태
    $ srvctl status instance -d orcl -i orcl1
    Instance orcl1 is running on node oelsvr1

    orcl 전체 인스턴스 상태와 orcl1 인스턴스 상태 확인

    -- 리스너 상태
    $ srvctl status listener
    Listener LISTENER is enabled
    Listener LISTENER is running on node(s): oelsvr2,oelsvr1
    
    -- ASM 인스턴스 상태
    $ srvctl status asm
    ASM is running on oelsvr2,oelsvr1
    
    -- SCAN IP 리스너 상태
    $ srvctl status scan_listener
    SCAN Listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node oelsvr2
    SCAN Listener LISTENER_SCAN2 is enabled
    SCAN listener LISTENER_SCAN2 is running on node oelsvr1
    SCAN Listener LISTENER_SCAN3 is enabled
    SCAN listener LISTENER_SCAN3 is running on node oelsvr1

    리스너, ASM 인스턴스, SCAN IP 리스너 상태

    -- 단일 인스턴스만 정지/기동 — 다른 노드 영향 없음
    $ srvctl stop instance -d orcl -i orcl2
    $ srvctl start instance -d orcl -i orcl2

    orcl2 인스턴스 종료
    orcl2 인스턴스 기동

    -- DB 전체 정지/기동 — 모든 인스턴스 대상
    $ srvctl stop database -d orcl
    $ srvctl start database -d orcl

    DB 전체 정지
    DB 전체 기동

    명령어 용도
    srvctl status database -d <db> DB 전체 인스턴스 상태
    srvctl status instance -d <db> -i <inst> 특정 인스턴스 상태
    srvctl status listener 리스너 상태 (전체 노드)
    srvctl status asm ASM 인스턴스 상태
    srvctl stop/start instance 인스턴스 단위 제어
    srvctl stop/start database DB 전체 제어

     

    • crsctl은 클러스터 리소스의 이름(ora.orcl.db 등) 으로 다루지만, srvctl은 DB명·인스턴스명으로 다룸 (운영 중에는 srvctl이 더 직관적)
    • 한 노드의 인스턴스만 재시작해도 나머지 노드 인스턴스는 영향받지 않음RAC Active-Active 구조의 특성

    6. srvctl config database — 자동 시작 정책

     

    DB가 클러스터 재기동 시 자동으로 OPEN될지 여부는 MANAGEMENT POLICY로 결정됨

    -- [oelsvr1 — oracle]
    $ srvctl config database -d orcl
    Database unique name: orcl
    Database name: orcl
    Oracle home: /u01/app/oracle/product/19.3.0/dbhome
    Oracle user: oracle
    Spfile: +DATA/ORCL/PARAMETERFILE/spfile.263.1233770977
    Password file: +DATA/ORCL/PASSWORD/pwdorcl.256.1233770441
    Domain:
    Start options: open
    Stop options: immediate
    Database role: PRIMARY
    Management policy: AUTOMATIC
    Server pools:
    Disk Groups: FRA,DATA,REDO
    Mount point paths:
    Services:
    Type: RAC
    Start concurrency:
    Stop concurrency:
    OSDBA group: dba
    OSOPER group: oper
    Database instances: orcl1,orcl2
    Configured nodes: oelsvr1,oelsvr2
    CSS critical: no
    CPU count: 0
    Memory target: 0
    Maximum memory: 0
    Default network number for database services:
    Database is administrator managed

    DB 설정 확인, management policy는 AUTOMATIC

    -- AUTOMATIC → MANUAL 전환 (클러스터 재기동 시 자동 OPEN 안 함)
    $ srvctl modify database -d orcl -policy MANUAL
    
    $ srvctl config database -d orcl | grep "Management policy"
    Management policy: MANUAL
    
    -- 원상복구
    $ srvctl modify database -d orcl -policy AUTOMATIC
    
    $ srvctl config database -d orcl | grep "Management policy"
    Management policy: AUTOMATIC

    Management policy를 MANUAL로 전환
    다시 MANUAL에서 AUTOMATIC으로 전환

    정책 동작
    AUTOMATIC 클러스터(Clusterware) 기동 시 DB도 함께 자동 OPEN
    MANUAL 클러스터 기동과 무관하게 DBA가 수동으로 srvctl start database 실행해야 OPEN
    • 운영 환경에서는 보통 AUTOMATIC 사용
    • 점검·업그레이드 작업 중에는 MANUAL로 전환, 의도치 않은 자동 기동 방지

    7. OCR 정합성 검사 — cluvfy · ocrcheck

     

    OCR(Oracle Cluster Registry)은 클러스터 구성 정보 전체를 담고 있으므로, 정합성 검사를 주기적으로 수행해야 함

    -- [oelsvr1 — root]
    $ /u01/app/19.3.0/gridhome/bin/ocrcheck
    
    Status of Oracle Cluster Registry is as follows :
             Version                  :          4
             Total space (kbytes)     :     491684
             Used space (kbytes)      :      84304
             Available space (kbytes) :     407380
             ID                       :  117449484
             Device/File Name         :       +OCR
                                        Device/File integrity check succeeded
    
                                        Device/File not configured
    
                                        Device/File not configured
    
                                        Device/File not configured
    
                                        Device/File not configured
    
             Cluster registry integrity check succeeded
    
             Logical corruption check succeeded

    OCR 내용의 논리적/물리적 정합성 검사

    -- [oelsvr1 — grid]
    $ cluvfy comp ocr -n oelsvr1,oelsvr2
    
    Verifying OCR Integrity ...PASSED
    
    Verification of OCR integrity was successful.
    
    CVU operation performed:      OCR integrity
    Date:                         Jun 17, 2026 11:10:44 PM
    CVU home:                     /u01/app/19.3.0/gridhome/
    User:                         grid

    OCR 환경적 정합성 검사

    명령어 검사 범위
    ocrcheck OCR 내용 자체의 논리적/물리적 정합성 (Integrity Check)
    cluvfy comp ocr OCR 설정 파일 위치, 디스크 그룹 가용성 등 환경적 정합성

     

    • ocrcheck의 Logical corruption check succeeded가 핵심 항목 — 실패 시 OCR 백업으로 즉시 복구해야 함
    • cluvfy는 OCR 내용 자체는 검증하지 않음, 두 명령을 함께 사용해야 완전한 점검

    8. OCR 백업 이력 확인 및 수동 백업

     

    OCR은 Clusterware가 자동으로 4시간 주기 백업 수행, 필요 시 수동 백업도 가능

    -- [oelsvr1 — root]
    $ /u01/app/19.3.0/gridhome/bin/ocrconfig -showbackup
    
    PROT-24: Auto backups for the Oracle Cluster Registry are not available
    PROT-25: Manual backups for the Oracle Cluster Registry are not available

    OCR 백업 이력 확인, 한 번도 백업하지 않은 상태

    • PROT-24 / PROT-25: 아직 백업이 한 번도 생성되지 않은 상태 — 자동 백업은 Clusterware 기동 후 일정 시간이 지나야 첫 백업이 생성되므로, 설치 직후에는 정상적으로 나타날 수 있는 메시지
    • ocrconfig -manualbackup을 즉시 실행해 최초 백업을 확보하는 것이 안전
    -- 수동 백업 — 중요 변경 작업 직전 권장
    $ /u01/app/19.3.0/gridhome/bin/ocrconfig -manualbackup
    
    oelsvr1     2026/06/17 23:17:16     +OCR:/oelsvr-cluster/OCRBACKUP/backup_20260617_231716.ocr.258.1236208637     724960844

    OCR 수동 백업 진행

    백업 종류 보관 주기
    자동 백업 (backup00~02.ocr) 4시간 간격, 최근 3개 유지
    day.ocr 최근 1일 백업
    week.ocr 최근 1주 백업
    manualbackup DBA가 수동 실행, 보관 기간 제한 없음

     

    • 자동 백업은 Master Node에서만 생성되고, OCR이 저장된 ASM 디스크 그룹과 무관하게 OS 로컬 경로(GRID_HOME/cdata)에 저장됨
    • OCR 복구가 필요한 경우 ocrconfig -restore <백업파일> 명령으로 복원
    • 복원 후에는 전체 노드의 Clusterware 재기동 필요

    9. ADRCI — 장애 로그 조회

     

    ADRCI(Automatic Diagnostic Repository Command Interpreter): Grid와 DB의 진단 로그를 통합 조회하는 도구

    -- [oelsvr1 — grid]
    $ adrci
    
    ADRCI: Release 19.0.0.0.0 - Production on Wed Jun 17 09:45:21 2026
    Copyright (c) 1982, 2024, Oracle and/or its affiliates.  All rights reserved.
    
    ADR base = "/u01/app/grid"
    adrci> show homes
    
    ADR Homes:
    diag/asm/+asm/+ASM1
    diag/crs/oelsvr1/crs
    diag/crs/oelsvr2/crs
    diag/clients/user_grid/host_496654743_110
    diag/clients/user_root/host_496654743_110
    diag/tnslsnr/oelsvr1/asmnet1lsnr_asm
    diag/tnslsnr/oelsvr1/listener_scan1
    diag/tnslsnr/oelsvr1/listener_scan2
    diag/tnslsnr/oelsvr1/listener_scan3
    diag/tnslsnr/oelsvr1/listener
    diag/asmtool/user_grid/host_496654743_110
    diag/asmcmd/user_grid/oelsvr1.localdomain
    diag/asmcmd/user_oracle/oelsvr1.localdomain
    diag/kfod/oelsvr1/kfod
    
    adrci> set home diag/crs/oelsvr2/crs

    adrci 조회, 모든 ADR Home 목록, 조회 대상 ADR Home 지정

    adrci> show alert -tail 2
    
    2026-06-18 22:37:51.541000 +09:00
    2026-06-18 22:37:51.523 [CVUD(17297)]CRS-10051: CVU found following errors with Clusterware setup : PRVG-1260 : Command "/u01/app/19.3.0/gridhome/cv/remenv/cvuhelper /u01/app/19.3.0/gridhome 19 /u01/app/19.3.0/gridhome/jlib/cvuhelper19.jar /u01/app/19.3.0/gridhome -getOraclePatchList /u01/app/19.3.0/gridhome" to obtain Oracle patch status failed
    Unable to create patchObject,Possible causes are:,ORACLE_HOME/inventory/oneoffs/29401763_en_22759421 is corrupted. java.lang.RuntimeException: No Patch exists,Please check.,,
    PRVG-13606 : chrony daemon is not synchronized with any external time source on node "oelsvr1".
    PRVG-10048 : Name "oelsvr1" was not resolved to an address of the specified type by name servers "8.8.8.8".
    PRVG-13606 : chrony daemon is not synchronized with any external time source on node "oelsvr1".
    
    2026-06-18 22:37:51.523 [CVUD(17297)]CRS-10051: CVU found following errors with Clusterware setup : PRVG-1260 : Command "/u01/app/19.3.0/gridhome/cv/remenv/cvuhelper /u01/app/19.3.0/gridhome 19 /u01/app/19.3.0/gridhome/jlib/cvuhelper19.jar /u01/app/19.3.0/gridhome -getOraclePatchList /u01/app/19.3.0/gridhome" to obtain Oracle patch status failed
    Unable to create patchObject,Possible causes are:,ORACLE_HOME/inventory/oneoffs/29401763_en_22759421 is corrupted. java.lang.RuntimeException: No Patch exists,Please check.,,

     

    • CRS-10051: CVU가 자체 진단 중 발견한 오류를 Alert Log에 기록한 것, 패치 인벤토리 손상이나 시간 동기화(chrony) 미설정, DNS 이름 해석 실패 등 설치 직후 환경 점검 단계에서 흔히 나타남
    • PRVG-13606(chrony 미동기화), PRVG-10048(DNS 이름 해석 실패): 실제 클러스터 장애가 아니라 사전 점검(Prerequisite Check) 경고, 운영에 영향이 없다면 우선순위를 낮춰 별도로 조치
    명령어 용도
    show homes 등록된 모든 ADR Home(ASM·CRS·DB·리스너 등) 목록
    set home <경로> 조회 대상 ADR Home 지정
    show alert -tail N 최근 N줄 Alert Log 조회
    show alert -p "message_text LIKE '%ORA-%'" 특정 패턴 필터 조회
    • ADR Home은 CRS·ASM·DB·리스너별로 각각 독립적으로 존재
    • 장애 분석 시 어느 컴포넌트의 ADR Home인지 먼저 확인해야 함
    • DB 인스턴스의 ADR Home은 oracle 계정에서, CRS·ASM의 ADR Home은 grid 계정에서 조회하는 것이 일반적

    10. Grid 컴포넌트 로그 위치

     

    ADRCI 외에도 각 컴포넌트는 고유한 로그 디렉터리를 가지므로, 위치를 알아두면 장애 분석 속도 높일 수 있음

    -- [oelsvr1 — grid]
    $ ls $ORACLE_BASE/diag/crs/oelsvr1/crs/trace/ | tail -5
    crsd.trc
    ocssd.trc
    ohasd.trc
    crsd_oraagent_oracle.trc
    crsd_orarootagent_root.trc
    
    $ tail -20 $ORACLE_BASE/diag/crs/oelsvr1/crs/trace/alert.log
    
    2026-06-17 08:00:11.567 [ohasd(3210)]CRS-8500: Oracle Clusterware OHASD process is starting with operating system process ID 3210
    2026-06-17 08:00:45.892 [crsd(5678)]CRS-1012: The OCR service started on node oelsvr1.
    2026-06-17 08:01:02.331 [crsd(5678)]CRS-2772: Server 'oelsvr1' has been assigned to pool 'Generic'.

    클러스터웨어 로그 디렉터리 확인, alert log 확인

    컴포넌트 로그 경로
    Clusterware (CRS/CSS/OHASD) $ORACLE_BASE/diag/crs/<호스트명>/crs/trace/alert.log
    ASM $ORACLE_BASE/diag/asm/+asm/+ASM<n>/trace/alert_+ASM<n>.log
    DB 인스턴스 $ORACLE_BASE/diag/rdbms/<db_unique_name>/<instance>/trace/alert_<instance>.log
    리스너 $ORACLE_BASE/diag/tnslsnr/<호스트명>/listener/trace/listener.log
    Clusterware 설치 로그 $ORACLE_BASE/crsdata/<호스트명>/crsconfig/

     

    • Clusterware Alert Log의 CRS- 코드는 오라클 공식 문서의 CRS Error Messages에서 의미 조회 가능
    • 노드 Eviction, Split-Brain 같은 심각한 이벤트는 반드시 이 Alert Log에 CRS-1656, CRS-1607 등의 코드로 먼저 기록됨

    11. OHAS / CSS / CRS 온라인 상태 확인 절차

     

    장애 진단 시에는 아래 순서로 계층별 상태를 확인하는 것이 효율적

    -- [oelsvr1 — grid]
    -- 1단계: OHASD 레벨 확인
    $ crsctl check has
    CRS-4638: Oracle High Availability Services is online
    
    -- 2단계: CRS/CSS/EVM 4계층 확인
    $ crsctl check crs
    CRS-4638: Oracle High Availability Services is online
    CRS-4537: Cluster Ready Services is online
    CRS-4529: Cluster Synchronization Services is online
    CRS-4533: Event Manager is online

    OHASD 레벨, CRS/CSS/EVM 계층 확인

    -- 3단계: 전체 노드 클러스터 상태 확인
    $ crsctl check cluster -all

    전체 노드 클러스터 상태 확인

    -- 4단계: 리소스 단위 상세 상태 확인
    $ crsctl stat res -t

    리소스 단위 상세 상태 확인

    • 1단계에서 실패하면 OS 부팅 자체나 ohasd 서비스 문제, OS 레벨(systemctl status ohasd)부터 점검
    • 2단계까지는 정상인데 3단계에서 특정 노드만 비정상이라면, 해당 노드의 Private Interconnect 또는 Voting Disk 접근 문제 의심

    12. 주요 명령어 정리
    명령어 용도
    crsctl check has OHASD 온라인 여부 확인
    crsctl check crs OHASD/CRS/CSS/EVM 통합 확인
    crsctl check cluster -all 전체 노드 클러스터 상태 확인
    crsctl stat res -t 클러스터 리소스 상태 전체 조회
    crsctl get css misscount Network Heartbeat Eviction 기준 시간 조회
    srvctl status database -d <db> DB 전체 인스턴스 상태
    srvctl config database -d <db> DB 자동 시작 정책 등 설정 확인
    srvctl modify database -d <db> -policy 자동 시작 정책 변경
    ocrcheck OCR 논리적/물리적 정합성 검사
    cluvfy comp ocr OCR 환경 설정 정합성 검사
    ocrconfig -showbackup OCR 백업 이력 조회
    ocrconfig -manualbackup OCR 수동 백업 수행
    adrci Grid/DB 진단 로그 통합 조회

    핵심 요약

    주제 핵심 포인트
    기동 계층 ohasd → CRS/CSS/CTSS → ASM → 리스너 → DB 인스턴스 순서로 기동
    CSS Network/Disk Heartbeat 기반 멤버십 관리, misscount 초과 시 Eviction 발생
    crsctl vs srvctl crsctl은 클러스터 리소스 단위, srvctl은 DB·인스턴스·서비스 단위 제어
    자동 시작 정책 AUTOMATIC은 클러스터 기동 시 DB 자동 OPEN, MANUAL은 수동 기동 필요
    OCR 정합성 ocrcheck로 내용 검증, cluvfy로 환경 설정 검증 — 두 가지 모두 필요
    OCR 백업 4시간 자동 백업 + day/week 백업 + 수동 백업(manualbackup) 병행
    장애 진단 adrci로 컴포넌트별 ADR Home 통합 조회, Alert Log는 컴포넌트별 별도 경로 존재
    상태 확인 순서 OHASD → CRS/CSS/EVM → 전체 노드 → 리소스 상세, 계층 순서대로 점검

Designed by Tistory.