GNU* 클러스터를 시작해야 하는데 다음 수준에 문제가 있습니다.
- 데이터베이스 수준? (복사)
- 파일 시스템? (분산형)
- 프로세스 수준?(예: Intel Fortran of Civilization 소프트웨어)
- 새로운 프로세스? (위와 같으나 약간의 차이가 있음)
데이터베이스 수준에서는 데이터베이스 백엔드마다 별도의 복제가 있다는 것을 알고 있습니다. Linux btrFS
와 freebsd는 분산 파일 시스템을 사용합니다 zfs
. 하지만 프로세스 클러스터와 해당 소프트웨어에 심각한 문제가 있습니다.
어쨌든 문제는 프로세스 수준에서 커널 수준은 무엇입니까? strt를 실행하면 분산 파일 시스템을 강제로 실행해야 합니까?
답변1
cman은 새로운 클러스터 프로젝트라고 redhat은 말했습니다.
Red Hat Cluster Suite 클러스터 인프라는 컴퓨터 그룹(노드 또는 멤버라고 함)이 클러스터로 함께 작동할 수 있도록 기본 기능을 제공합니다. 클러스터 인프라를 사용하여 클러스터를 구성한 후 다른 Red Hat Cluster Suite 구성 요소를 사용하여 클러스터 요구 사항을 충족할 수 있습니다(예: GFS 파일 시스템에서 파일을 공유하도록 클러스터 설정 또는 서비스 장애 조치 설정). 클러스터 인프라는 다음 기능을 수행합니다.
1. 클러스터 관리
2. 잠금 관리
3. 보호
4. 클러스터 구성 관리
클러스터 관리
클러스터 관리는 클러스터 쿼럼 및 클러스터 멤버십을 관리합니다. CMAN(Cluster Manager의 약어)은 Red Hat Enterprise Linux 5의 Red Hat Cluster Suite에서 클러스터 관리를 수행합니다. CMAN은 각 클러스터 노드에서 실행되는 분산 클러스터 관리자입니다. 클러스터 관리는 클러스터의 모든 노드에 분산됩니다("CMAN/DLM 개요").
CMAN은 클러스터 노드 수를 모니터링하여 클러스터 쿼럼을 추적합니다. 노드의 절반 이상이 활성 상태이면 클러스터에 쿼럼이 있는 것입니다. 노드의 절반(또는 그 이하)이 활성 상태이면 클러스터에 쿼럼이 없으며 모든 클러스터 활동이 중지됩니다. 클러스터 쿼럼은 동일한 클러스터의 두 인스턴스가 동시에 실행되는 "분할 브레인" 상황을 방지합니다. 분할 브레인 시나리오에서는 각 클러스터 인스턴스가 다른 클러스터 인스턴스에 대한 지식 없이 클러스터 리소스에 액세스할 수 있으므로 클러스터 무결성이 손상됩니다.
쿼럼은 이더넷을 통한 클러스터 노드 간의 메시지 통신에 의해 결정됩니다. 또는 이더넷을 통한 통신 메시지와 쿼럼 디스크를 조합하여 쿼럼을 결정할 수도 있습니다. 이더넷을 통한 쿼럼의 경우 쿼럼은 노드 투표의 50%에 1을 더한 값으로 구성됩니다. 쿼럼 디스크를 통한 쿼럼의 경우 쿼럼은 사용자가 지정한 조건으로 구성됩니다.
CMAN은 다른 클러스터 노드의 메시지를 모니터링하여 멤버십을 추적합니다. 클러스터 멤버십이 변경되면 클러스터 관리자는 다른 인프라 구성 요소에 이를 알리고 적절한 조치를 취합니다. 예를 들어, 노드 A가 클러스터에 참여하고 노드 B와 C가 이미 설치한 GFS 파일 시스템을 마운트하는 경우 노드 A에서 해당 GFS 파일 시스템을 사용하려면 추가 로그 및 잠금 관리가 필요합니다. 클러스터 노드가 지정된 시간 내에 메시지를 전송하지 않으면 클러스터 관리자는 클러스터에서 해당 노드를 제거하고 해당 노드가 구성원이 아닌 다른 클러스터 인프라 구성 요소와 통신합니다. 마찬가지로 다른 클러스터 인프라 구성 요소는 노드가 더 이상 클러스터의 구성원이 아니라는 알림을 받을 때 수행할 작업을 결정합니다. 예를 들어 펜싱은 더 이상 구성원이 아닌 노드를 보호합니다.
씨맨 홈페이지는여기.