Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

디스크 장애

디스크 장애(오류)는 디스크 스토리지 계층의 물리적 연결 단자의 단선, 미디어 파손, 배드 섹터, SCSI 오류 등 얘기치 않은 장애로 인해 디스크 I/O 에 오류가 발생하는 상황을 말합니다. 이러한 장애 들은 일시적으로 발생했다가 정상화 되기도 하고 영구적 장애로 이어지기도 합니다. bsr 에선 이러한 장애를 일시적 장애와 영구적 장애로 구분하고 유형에 따라 오류를 다르게 처리합니다.

일시적 장애는 스토리지 계층에서의 어떤 이유로 인해 오류가 잠시 발생 했다가 다시 정상화되는 상황입니다. 이럴 경우에는 디스크 교체가 필요한 정도의 심각한 상황이 아니기 때문에 되도록이면 서비스 운영을 지속하면서 기 발생된 에러에 대해서만 별도로 해소하고 복제는 계속 운영되도록 하는게 효율적입니다. 즉 일시적 오류 상황에서는 I/O 에러가 발생한 블록 영역을 out-of-sync 로 기록하고 해당 블록으로 재시도된 I/O 가 성공하면 자연스럽게 OOS 가 해소되도록 합니다.

영구적인 디스크 오류는 디스크 교체 등 디스크 장애에 대한 별도 조치가 필요한 상황으로 전체 재구성의 절차를 통해 복구해야 합니다.

...

Disk Error

Disk failure (error) refers to a situation in which disk I / O fails due to an unexpected failure such as disconnection of the physical connection terminal of the disk storage layer, media corruption, bad sector, or SCSI error. These disorders occur temporarily and then become normal and sometimes lead to permanent disorders. bsr categorizes these disorders as temporary and permanent, and treats them differently depending on the type.

Temporary failure is a situation where, for some reason at the storage layer, an error occurs briefly and then normalizes again. In this case, since it is not a serious situation that requires a replacement, it is efficient to keep the service running as much as possible to resolve the errors that have occurred and to keep the replication running. That is, in a temporary error situation, the block area where the I/O error occurred is recorded as out-of-sync, and if the I/O retried with the block succeeds, the OOS is naturally resolved.

Permanent disk failures require recovery from disk failures, such as disk replacement, and must be repaired through a full rebuild configuration procedure.

I/O error handling policy is set through the on-io-error option in the resource <disk> section.

Code Block
resource <resource> {
  disk {
    on-io-error <strategy>;
    ...
  }
  ...
}

해당 옵션을 <common> 섹션에 정의한다면 모든 리소스에 적용됩니다If the option is defined in the <common> section, it applies to all resources.

<strategy>는 다음과 같은 세 가지 옵션이 있습니다.

...