Oracle Grid Infrastructure

2024. 9. 10. 21:00DBMS/ORACLE Admin

반응형

 Oracle Grid Infrastructure는 운영 체제의 init 데몬에 의해 시작되며, 시스템이 부팅될 때 필요한 프로세스들이 자동으로 실행되도록 구성된다. 이 구조는 Oracle Clusterware와 ASM(Automatic Storage Management)을 지원하며, 데이터베이스 인스턴스와 관련된 기능을 제공한다.

Oracle Grid Infrastructure의 구성 요소
1. OS
   - 운영체제는 Oracle Grid Infrastructure의 기본 환경을 제공하며 시스템이 부팅되면, 운영체제의 init 데몬이 그리드 인프라스트럭처를 시작하는 스크립트를 실행한다.

2. Init Daemon
   - init 데몬은 Unix/Linux 운영 체제에서 가장 먼저 시작되는 프로세스로, 시스템의 부팅 과정에서 다른 프로세스나 서비스들을 시작하고 관리하는 역할을 한다.

3. Grid Infrastructure
   - Oracle Grid Infrastructure는 Oracle Clusterware와 Oracle ASM을 포함하며, 클러스터 환경에서 데이터베이스를 지원하는 필수 서비스들을 제공한다.
   - 이 인프라는 init.ohasd 스크립트를 통해 시작된다.

4. Wrapper Script
   - /etc/init.d/init.ohas 스크립트는 Oracle High Availability Services Daemon (OHASD)을 실행하는 역할을 한다.
   - OHASD는 Oracle Clusterware의 여러 하위 프로세스들을 관리하고 시작하는 데 필요한 주요 데몬이다.

5. Daemon 및 프로세스들
   - ohasd.bin: OHASD는 클러스터와 ASM을 관리하고 고가용성 서비스를 제공하는 데 필요한 여러 프로세스를 시작한다.
   - oraagent.bin: Oracle 리소스를 관리하는 에이전트 프로세스이다.
   - orarootagent.bin: 루트 권한을 요구하는 리소스를 관리하는 프로세스이다.
   - diskmon.bin: 디스크 모니터링을 담당하는 프로세스이다.
   - cssdagent: Cluster Synchronization Services (CSS)를 관리하는 프로세스이다.
   - ocssd.bin: Oracle Cluster Synchronization Services 데몬으로, 클러스터 노드 간의 동기화를 유지한다.

6. ASM Instance
   - ASM은 Oracle 데이터베이스의 스토리지 관리를 담당하는 인스턴스로, 데이터 파일 및 리두 로그 파일 등의 관리를 효율적으로 수행한다.

7. 리스너 (Listener)
   - 클라이언트가 데이터베이스에 연결할 수 있도록 요청을 수신하는 네트워크 서비스이다.

8. DB Instance
   - Oracle 데이터베이스 인스턴스는 실제 데이터베이스의 메모리 및 프로세스 구조를 구성하며, 클러스터 환경에서는 여러 노드에서 실행될 수 있다.

9. 유저 정의 응용 프로그램
   - 유저가 정의한 특정 애플리케이션이나 서비스도 Oracle Grid Infrastructure를 통해 관리될 수 있다.

 

 

 


시스템 시작 시 Oracle Grid Infrastructure의 자동 실행
Oracle Grid Infrastructure를 설치한 후에는 시스템이 부팅될 때마다 그리드 인프라스트럭처가 자동으로 실행되도록 /etc/inittab 파일이 수정된다.

/etc/inittab 파일은 SysVinit 시스템에서 사용되는 초기화 파일로, 시스템이 부팅될 때 서비스와 프로세스를 설정하는 데 사용된다. 이 파일에는 시스템의 초기화 레벨(runlevel)과 각 레벨에서 실행될 서비스에 대한 정보를 정의한다.

h1:35: respawn: /etc/init.d/init.ohas run >/dev/null 2>&1 </dev/null

 

  • h1: 이 항목의 이름이다.
  • 35: 이 항목이 실행될 런레벨을 지정한다. 런레벨 3은 일반적으로 다중 사용자 모드로, 네트워크와 같은 서비스가 활성화되어 있는 상태이다.
  • respawn: 이 항목의 프로세스가 종료되면 다시 시작하도록 지시하며 해당 프로세스가 비정상적으로 종료되면 자동으로 다시 시작된다.
  • /etc/init.d/init.ohas run >/dev/null 2>&1 </dev/null: 실행할 명령어이다. >/dev/null 2>&1은 표준 출력(stdout)과 표준 오류(stderr)를 /dev/null로 리다이렉션하여 출력과 오류 메시지를 무시한다. </dev/null은 입력을 /dev/null에서 가져와 명령어가 입력을 기다리지 않도록 한다.

 

 

 

 

init.ohas 스크립트가 런레벨 35에서 항상 실행되며, 비정상 종료 시 자동으로 재시작된다.

특정 실행 레벨(예: 3 또는 5)로 부팅될 때 init.ohasd 스크립트가 실행되도록 보장하는 설정이다. respawn 키워드는 이 프로세스가 중단되면 자동으로 재시작되도록 설정하는 역할을 한다.

 
 
 

 

 

반응형