Go to main content
Oracle® ZFS Storage Appliance 관리 설⁠명⁠서, 릴⁠리⁠스 OS8.6.x

인쇄 보기 종료

업데이트 날짜: 2016년 9월
 
 

스플릿 브레인 조건 방지

클러스터화된 시스템의 일반 장애 모드를 스플릿 브레인이라고 하는데, 이 조건에서는 각 클러스터형 컨트롤러가 해당 피어에 장애가 발생했다고 판단하고 인계를 시도합니다. 추가 논리가 없으면 이 조건에서는 진단 또는 수정이 어려울 수 있는 예기치 못한 치명적인 동작이 광범위하게 발생할 수 있습니다. 이 조건을 정식으로 트리거하려면 컨트롤러에서 공유하는 통신 매체에 오류가 발생해야 합니다. Oracle ZFS Storage Appliance의 경우 클러스터 I/O 연결이 실패할 경우 이 조건이 발생합니다. 어플라이언스 소프트웨어는 내장된 삼중 연결 중복성(인계 트리거를 방지하기 위해 단일 연결만 필요) 외에 중재 절차를 수행하여 인계를 계속 진행할 컨트롤러를 결정합니다.

많은 중재 메커니즘이 비슷한 제품에서 사용되고 있습니다. 일반적으로 쿼럼 디스크(SCSI 예약 사용) 또는 쿼럼 서버를 사용합니다. 추가 하드웨어 없이 ATA 디스크 사용을 지원하기 위해 Oracle ZFS Storage Appliance는 스토리지 패브릭 자체를 사용하여 필요한 상호 배타성을 제공하는 다른 접근 방식을 사용합니다. 중재 프로세스는 스토리지 패브릭에 표시된 각 SAS 확장기에서 미리 정의된 순서로 SAS ZONE LOCK 명령을 수행하려는 시도로 구성됩니다. 이러한 잠금 시도에 모두 성공한 어플라이언스는 인계를 진행하고 나머지 어플라이언스는 자체 재설정됩니다. 부트 후 해당 피어에 연결할 수 없음을 감지한 클러스터화된 어플라이언스는 인계를 시도하고 동일한 중재 프로세스를 시작하므로 하나 이상의 클러스터 I/O 연결이 복원될 때까지 연속 루프로 재설정됩니다. 이를 통해 다른 컨트롤러에서 또 장애가 발생해도 중단 상태가 확장되지 않습니다. 이러한 SAS 영역 잠금은 페일백이 수행되거나 컨트롤러가 AKCS_OWNER 상태로 스토리지 패브릭에 대한 액세스를 최근 갱신한 지 약 10초 후 해제됩니다.

이 중재 메커니즘은 간단하고 저렴하며 추가 하드웨어가 필요하지 않지만 스토리지 패브릭에서 하나 이상의 공통 SAS 확장기에 액세스할 수 있는 클러스터화된 어플라이언스 모두에 의존합니다. 일반적인 조건에서 각 어플라이언스는 모든 확장기에 액세스하고 중재를 통해 2개 이상의 SAS 영역 잠금으로 구성됩니다. 그러나 어플라이언스가 어떠한 공통 확장기에도 액세스하지 않는 다중 실패 시나리오를 구성할 수도 있습니다. 예를 들어, 2개의 SAS 케이블이 분리되거나 Disk Shelf의 전원이 꺼진 경우에는 각 어플라이언스에서 분리 확장기의 하위 세트에 액세스합니다. 이 경우 각 어플라이언스는 연결 가능한 모든 확장기를 성공적으로 잠근 다음 해당 피어에 장애가 발생한 것으로 간주하여 인계를 시도합니다. 이러한 시도는 디스크 연계 충돌 및/또는 심각한 데이터 손상으로 인해 복구할 수 없는 중단을 유발합니다.

이러한 조건의 결과는 심각하지만 4회 이상 실패한 경우에만 발생합니다. Oracle ZFS Storage Appliance에 포함된 클러스터링 솔루션은 NSPF(No Single Point of Failure)이고 시스템에 대한 지나친 추가 비용 또는 복잡성 없이 데이터와 가용성을 오류로부터 보호하기 위해 설계되었습니다. 그러나 무제한 디스크 장애로부터 보호할 수 있는 RAID 레이아웃이 없는 것과 마찬가지로 대규모 장애가 여러 번 발생되면 서비스 및/또는 데이터가 손실될 수 있습니다.

그림 20  스플릿 브레인 방지

image:스플릿 브레인 방지

다행히 이러한 실패 시나리오는 대부분 사용자의 실수로 발생하므로 하드웨어를 올바르게 설치하고 직원에게 클러스터 설정 및 관리에 대한 최적의 사용법을 교육하여 완전히 방지할 수 있습니다. 관리자는 항상 3개의 클러스터 I/O 연결이 모두 연결되고 제대로 작동하는지 확인하고(그림 참조) 어플라이언스와 함께 제공된 설정 포스터에 나온 것과 같이 모든 스토리지에 케이블이 연결되었는지 확인해야 합니다. 클러스터를 운용 시스템에 배치하기 전과 그 이후에 항상 각 Disk Shelf(그림 참조)에서 두 경로가 검색되는 것이 특히 중요합니다. 단, 용량 증가 또는 결함이 있는 구성요소를 교체하기 위해 일시적으로 케이블을 연결하는 경우는 예외입니다. 관리자는 경보를 사용하여 클러스터 상호 연결 링크 및 Disk Shelf 경로를 모니터하고 신속하게 오류를 수정해야 합니다. 연결이 항상 올바르게 유지되도록 하면 하드웨어 또는 소프트웨어 구성요소에 장애가 발생하더라도 가용성 및 데이터 무결성을 모두 보호할 수 있습니다.

그림 21  클러스터의 두 경로

image:클러스터의 두 경로

관련 항목