컨트롤러가 실패하거나 컨트롤러가 안내식 유지 관리를 통해 오프라인 상태로 전환되면 Oracle FS System은 페일오버 및 페일백을 사용하여 Oracle FS System을 정상 상태로 반환합니다. 페일오버는 오프라인 노드의 모든 리소스를 온라인 상태로 유지되는 노드로 전송합니다. 페일백은 노드가 다시 온라인 상태로 전환될 때 이러한 리소스를 오프라인 상태였던 노드로 다시 전송합니다.
정상적인 조건에서 쌍의 각 컨트롤러 노드는 해당 리소스를 사용하여 데이터 경로에 도착하는 I/O 요청을 처리합니다. 컨트롤러 노드는 활성-활성 쌍으로 상호 연결됩니다. 이 상호 연결을 통해 각 노드는 하나에서 오류가 발생할 경우 다른 노드를 지원할 수 있습니다.
하나의 컨트롤러 노드에서 오류가 발생하면 파일럿 및 파트너 컨트롤러 노드가 오류를 감지하고 확인합니다. 그런 다음 파트너 컨트롤러 노드에서 스토리지에 데이터 캐시 플러시, 컨트롤러 데이터 작업을 절약 모드로 변환 등 오류가 발생한 컨트롤러 노드의 모든 I/O 요청을 인계합니다.
컨트롤러 노드 페일오버는 예기치 않은 컨트롤러 노드 오류가 있거나 컨트롤러 노드 전원을 꺼야 하는 FRU(현장 교체 가능 장치) 또는 CRU(자가 교체 가능 장치)를 교체해야 하는 경우에 발생할 수 있습니다. 유지 관리 전에 컨트롤러 노드의 전원을 꺼야 하는 구성 요소의 경우 안내식 유지 관리에서 서비스해야 하는 컨트롤러 노드에 대해 페일오버 프로세스를 시작합니다.
페일오버 프로세스는 다음 작업을 수행합니다.파트너 컨트롤러 노드의 포트 리소스를 가정합니다.
파트너 컨트롤러 노드에서 메모리에 포함될 수 있는 메모리 리소스 및 관련 데이터를 가정합니다.
파트너 컨트롤러 노드의 작동 모드를 후기록 캐시에서 동시 기록 캐시로 변경됩니다.
파트너 컨트롤러 노드의 작동 모드가 일반에서 절약 모드로 변경합니다. 절약 모드에서는 모든 기록이 스토리지로 직접 수행됩니다.
컨트롤러 오류 처리나 유지 관리가 완료된 후 컨트롤러 노드에서 부트 주기를 시작합니다. 부트 주기 중에 시스템에서 컨트롤러 노드의 작동 상태를 확인한 다음 페일 백을 수행하여 서비스를 복구된 컨트롤러 노드로 복원합니다.
컨트롤러 노드가 파트너 노드로 페일오버된 후 컨트롤러 노드가 복구되거나 복구되고 부트될 때 시스템에서 페일백 작업을 수행합니다. 페일백 중에 모든 서비스와 리소스 로드를 처리하는 파트너 컨트롤러 노드가 해당 서비스와 리소스를 다시 복구된 컨트롤러 노드로 전송합니다.
컨트롤러 노드가 다시 온라인 상태로 전환될 때 해당 노드는 여러 상태를 통과합니다. Oracle FS System Manager(GUI)의 Event Log(이벤트 로그) 화면을 사용하여 온라인 상태로 돌아가는 컨트롤러 노드의 상태를 추적할 수 있습니다.