우리는 SAN 없이 파일의 단일 장애 지점을 제거하려고 노력하고 있습니다. 현재 파일 서비스(로컬), 웹 서버 및 데이터베이스(VM 내)를 위한 단일 서버가 있습니다. GFS2와 함께 DRBD를 사용하여 클러스터 파일 시스템을 생성한 다음 호스트 OS, VM 및 공유 파일을 포함하여 해당 파일 시스템에서 최대한 많이 실행하는 방법을 살펴보겠습니다.
공유 소스에서 실행되는 마스터/슬레이브 설정에 두 개의 서버를 설정하고 싶습니다.; 그러나 서버의 하드웨어 구성(드라이브 포트 할당, 메인 보드의 실제 브랜드 및 모델, NIC 등)이 약간 다르기 때문에 하드웨어 구성 파일은 로컬(예: fstab 및 mdadm)에 유지됩니다.
이상적으로는,하나의 서버가 기본 서버로 작동합니다.. 패키지 관리는 클러스터 파일 시스템의 기본 서버에서만 발생합니다.왜냐하면 슬레이브 서버가 동일한 데이터(동일한 블록 장치의 데이터)를 사용하는 경우에는 그럴 필요가 없기 때문입니다.
마스터 서버는 단일 관리 지점이기도 합니다.두 서버 모두 데이터와 구성 파일을 공유하기 때문에 두 번째 서버는 단순히 서버 1에 구성되고 STONITH, Hearbeat, Pacemaker 등을 통해 구성되는 소프트웨어를 실행하기 위한 중복 하드웨어 세트로 사용됩니다.
하지만 읽어보니 대부분의 사람들이 서로 독립적으로 서버를 관리하고 cron 작업과 rsync를 사용하여 자동화하려고 시도하는 것 같습니다.
또한 대부분의 파일은 상당히 정적이고 사용자가 수정하는 것으로 보입니다. 즉, 사용자 입력 및/또는 하드웨어에 종속되지 않고 OS(로그, 스왑 파일 등)에 의해 적극적으로 수정되는 파일/폴더 수가 매우 적습니다.
우리는 (VM이 아닌) 기본 OS에서 제공되는 파일을 유지하고 싶습니다.
이제 질문이 있습니다.
소프트웨어 관리를 하드웨어 관리와 분리할 수 있나요? 독립적으로 관리해야 하는 유일한 것은 각 시스템의 하드웨어인 것 같습니다. 소프트웨어는 클러스터 파일 시스템을 통해 한번에 관리되어야 합니다. (틀렸을 수도 있으니 질문드립니다)
두 시스템 중 하나가 공유 파일 세트에서 한 번에 하나씩 호스트 OS를 실행할 수 있습니까? 즉, 두 시스템 모두 호스트 OS를 관리할 준비가 되어 있지만 슬레이브 시스템이 관리 작업을 선택하는 장애 조치까지 마스터만 수행할 수 있습니까? 아니면 이 가정이 부정확한 걸까요?
마스터가 다운될 때까지 머신을 슬레이브/유휴 상태로 설정할 수 있습니까? (크론 작업 일시 중지, 서비스 일시 중지 등) 이 중 일부는 펜싱 소프트웨어의 문제일 것이라고 가정합니다.
(이것은 동일한 데이터 세트에서 두 시스템을 모두 실행하는 방법에 대한 질문이 아닙니다.동시에; 그들은 서로 다른 시간에 동일한 데이터 세트에서 효과적으로 실행될 것입니다. 각 서버가 지속적으로 수정해야 하는 파일은 로컬 파일 시스템에 있습니다.
우리는 중복 서버를 설정하고 중복 관리를 최소화하고자 합니다.