클러스터 파일 시스템은 한 노드의 커널과 디스크에 물리적으로 연결되어 있는 노드에서 실행되는 볼륨 관리자 및 기반 파일 시스템 사이의 프록시입니다.
클러스터 파일 시스템은 하나 이상의 노드에 물리적으로 연결되어 있는 글로벌 장치(디스크, 테이프, CD-ROM)에 의존합니다. 글로벌 장치는 노드가 기억 장치에 물리적으로 연결되었는지 여부에 관계없이 동일한 파일 이름(예: /dev/global/)을 통해 클러스터의 모든 노드에서 액세스할 수 있습니다. 정규 장치와 동일한 방법으로 글로벌 장치를 사용할 수 있습니다. 즉, newfs 또는 mkfs 명령을 사용하여 글로벌 장치에 파일 시스템을 만들 수 있습니다.
mount -g 명령을 사용하여 글로벌로 또는 mount 명령을 사용하여 로컬로 글로벌 장치에 파일 시스템을 마운트할 수 있습니다.
클러스터의 모든 노드에서 동일한 파일 이름(예: /global/foo)을 사용하여 클러스터 파일 시스템의 파일에 액세스할 수 있습니다.
클러스터 파일 시스템은 모든 클러스터 구성원에 마운트됩니다. 클러스터 구성원의 하위 세트에는 클러스터 파일 시스템을 마운트할 수 없습니다.
클러스터 파일 시스템은 별도로 구분되는 파일 시스템 유형이 아닙니다. 즉, 클라이언트에는 하부 파일 시스템(예: UFS)이 표시됩니다.
SunPlex 시스템에서는 모든 멀티호스트 디스크가 디스크 장치 그룹에 포함됩니다. Solstice DiskSuite 디스크 세트, VxVM 디스크 그룹 또는 소프트웨어 기반의 볼륨 관리자에 의해 제어되지 않는 개별 디스크가 디스크 장치 그룹이 될 수 있습니다.
클러스터 파일 시스템의 가용성을 높이려면 하부 디스크 기억 장치를 둘 이상의 노드에 연결해야 합니다. 따라서 클러스터 파일 시스템에 만든 로컬 파일 시스템(노드의 로컬 디스크에 저장된 파일 시스템)은 가용성이 높지 않습니다.
일반적인 파일 시스템과 같이 두 가지 방법으로 클러스터 파일 시스템을 마운트할 수 있습니다.
직접-명령행에서 mount 명령에 -g 또는 -o global 마운트 옵션을 사용하여 클러스터 파일 시스템을 마운트합니다. 예를 들어 다음과 같은 명령을 실행합니다.
# mount -g /dev/global/dsk/d0s0 /global/oracle/data |
자동-부트할 때 클러스터 파일 시스템을 마운트하도록 /etc/vfstab 파일에 global 마운트 옵션이 있는 항목을 만듭니다. 그런 다음 모든 노드의 /global 디렉토리 아래에 마운트 포인트를 만듭니다. /global 디렉토리는 권장 위치이며 반드시 지정해야 하는 것은 아닙니다. 다음은 클러스터 파일 시스템을 마운트하기 위해 /etc/vfstab 파일에 포함되는 행의 예입니다.
/dev/md/oracle/dsk/d1 /dev/md/oracle/rdsk/d1 /global/oracle/data ufs 2 yes global,logging |
Sun Cluster 소프트웨어에서 반드시 클러스터 파일 시스템에 이름 지정 정책을 사용해야 하는 것은 아니지만, /global/disk-device-group과 같이 동일한 디렉토리 아래에 모든 클러스터 파일 시스템에 대한 마운트 포인트를 만들면 쉽게 관리할 수 있습니다. 자세한 내용은 Sun Cluster 3.0 12/01 소프트웨어 설치 안내서 및 Sun Cluster 3.0 12/01 시스템 관리 안내서를 참조하십시오.
클러스터 파일 시스템에는 다음과 같은 기능이 있습니다.
파일 액세스 위치가 투명합니다. 프로세스가 위치에 관계없이 시스템에 있는 파일을 열 수 있으므로 모든 노드의 프로세스가 동일한 경로 이름을 사용하여 파일을 찾을 수 있습니다.
클러스터 파일 시스템이 파일을 읽을 때 해당 파일에 대한 액세스 시간을 갱신하지는 않습니다.
동기 프로토콜을 사용하여 파일이 동시에 여러 노드로부터 액세스될 경우에도 UNIX 파일 액세스 시멘틱을 보존합니다.
효율적으로 파일 데이터를 이동하기 위하여 zero-copy 벌크 I/O 이동과 함께 확장 캐싱이 사용됩니다.
클러스터 파일 시스템은 fcntl(2) 인터페이스를 사용하여 가용성이 높은 권장 파일 잠금 기능을 제공합니다. 여러 클러스터 노드에서 실행되는 응용프로그램은 클러스터 파일 시스템의 파일에 대한 권장 파일 잠금 기능을 사용하여 데이터 액세스를 동기화할 수 있습니다. 잠금이 유지되는 동안 클러스터에서 제거되는 노드와 장애가 발생하는 응용프로그램에서는 즉시 파일 잠금이 복원됩니다.
장애가 발생할 경우에도 데이터에 대한 액세스는 계속할 수 있습니다. 디스크에 대한 경로가 계속 작동하면 응용프로그램이 장애의 영향을 받지 않습니다. 이 기능은 원시 디스크 액세스와 모든 파일 시스템 작동에 적용됩니다.
클러스터 파일 시스템은 하부 파일 시스템 및 볼륨 관리 소프트웨어와 독립적으로 작동합니다. 클러스터 파일 시스템은 지원되는 디스크의 파일 시스템을 모두 글로벌로 만듭니다.
syncdir 마운트 옵션은 UFS를 기반 파일 시스템으로 사용하는 클러스터 파일 시스템에 사용할 수 있습니다. 그러나 syncdir을 지정하지 않으면 성능이 크게 향상됩니다. syncdir 옵션을 지정하면 쓰기 작업이 POSIX와 호환됩니다. 이 옵션을 지정하지 않으면 NFS 파일 시스템과 동일하게 작동합니다. 예를 들어, syncdir이 없으면 파일을 닫을 때까지 공간 부족 상태를 발견하지 못하는 경우가 있습니다. syncdir(및 POSIX 동작) 옵션이 있으면 쓰기 작업 중에 공간 부족 상태가 발견되었을 것입니다. syncdir 옵션을 지정하지 않아서 문제가 발생하는 경우가 있지만 지정하지 않으면 성능이 향상되는 이점이 있기 때문에 지정하지않는 것이 좋습니다.
글로벌 장치와 클러스터 파일 시스템에 대한 FAQ는 "파일 시스템 FAQ"를 참조하십시오.