Linux에서 고가용성 클러스터 파일 시스템을 구성하는 방법

WBOY
풀어 주다: 2023-07-07 13:18:07
원래의
1641명이 탐색했습니다.

Linux에서 고가용성 클러스터 파일 시스템을 구성하는 방법

소개:
컴퓨터 분야에서 고가용성(high Availability)은 시스템의 신뢰성과 가용성을 향상시키는 것을 목표로 하는 기술입니다. 클러스터 환경에서 고가용성 파일 시스템은 시스템의 지속적인 운영을 보장하는 중요한 구성 요소 중 하나입니다. 이 기사에서는 Linux에서 고가용성 클러스터 파일 시스템을 구성하는 방법을 소개하고 해당 코드 예제를 제공합니다.

  1. 패키지 설치
    먼저, 시스템에 필요한 패키지가 설치되어 있는지 확인하세요. 대부분의 Linux 배포판에서 이러한 패키지는 패키지 관리 도구를 사용하여 설치할 수 있습니다. 다음은 일반적인 소프트웨어 패키지입니다.
  • Pacemaker: 파일 시스템의 상태와 리소스를 관리하기 위한 클러스터 관리 도구입니다.
  • Corosync: 클러스터 환경 구축 및 유지를 위한 통신 도구입니다.
  • DRBD: 디스크 미러링을 구현하는 데 사용되는 분산 복제 블록 장치입니다.
  • GFS2 또는 OCFS2: 고가용성 클러스터 파일 시스템을 제공하는 데 사용됩니다.

Ubuntu에서는 다음 명령을 사용하여 패키지를 설치할 수 있습니다.

sudo apt-get install pacemaker corosync drbd8-utils gfs2-utils
로그인 후 복사
  1. 클러스터 환경 구성
    먼저 노드 간 통신 및 리소스 관리를 포함한 클러스터 환경을 구성해야 합니다. 다음은 두 개의 노드(node1, node2)를 사용한 간단한 구성 예시입니다.
  • /etc/hosts 파일을 수정하고 노드가 서로 접속할 수 있도록 노드의 IP 주소와 호스트 이름을 추가합니다.
sudo nano /etc/hosts
로그인 후 복사

다음을 추가하세요:

192.168.1.100 node1 192.168.1.101 node2
로그인 후 복사
  • Corosync 통신을 구성하세요.

Corosync 구성 파일을 생성합니다.

sudo nano /etc/corosync/corosync.conf
로그인 후 복사

다음을 추가하세요:

totem { version: 2 secauth: off cluster_name: mycluster transport: udpu } nodelist { node { ring0_addr: node1 nodeid: 1 } node { ring0_addr: node2 nodeid: 2 } } quorum { provider: corosync_votequorum } logging { to_syslog: yes to_logfile: yes logfile: /var/log/corosync.log debug: off timestamp: on }
로그인 후 복사
  • Corosync 및 Pacemaker 서비스를 활성화하세요.
sudo systemctl enable corosync sudo systemctl enable pacemaker
로그인 후 복사

서비스를 시작합니다.

sudo systemctl start corosync sudo systemctl start pacemaker
로그인 후 복사
  1. DRBD 구성
    DRBD는 여러 노드 간 디스크 미러링을 구현하는 데 사용되는 분산 복제 블록 장치입니다. 다음은 두 개의 노드(node1 및 node2)가 있고 /dev/sdb를 공유 블록 장치로 사용하는 DRBD 구성의 예입니다.
  • DRBD 구성.

DRBD 구성 파일을 생성합니다.

sudo nano /etc/drbd.d/myresource.res
로그인 후 복사

다음을 추가하세요:

resource myresource { protocol C; on node1 { device /dev/drbd0; disk /dev/sdb; address 192.168.1.100:7789; meta-disk internal; } on node2 { device /dev/drbd0; disk /dev/sdb; address 192.168.1.101:7789; meta-disk internal; } net { allow-two-primaries; } startup { wfc-timeout 15; degr-wfc-timeout 60; } syncer { rate 100M; al-extents 257; } on-node-upgraded { # promote node1 to primary after a successful upgrade if [ "$(cat /proc/sys/kernel/osrelease)" != "$TW_AFTER_MAJOR.$TW_AFTER_MINOR.$TW_AFTER_UP" ] && [ "$(cat /proc/mounts | grep $DRBD_DEVICE)" = "" ] ; then /usr/bin/logger "DRBD on-node-upgraded handler: Promoting to primary after upgrade."; /usr/sbin/drbdsetup $DRBD_DEVICE primary; fi; } }
로그인 후 복사
  • DRBD를 초기화하세요.
sudo drbdadm create-md myresource
로그인 후 복사

DRBD를 시작하세요.

sudo systemctl start drbd
로그인 후 복사
  1. 클러스터 파일 시스템 구성
    GFS2 및 OCFS2와 같이 선택할 수 있는 여러 클러스터 파일 시스템이 있습니다. 다음은 GFS2를 예로 들어 설정한 예입니다.
  • 파일 시스템을 생성합니다.
sudo mkfs.gfs2 -p lock_gulmd -t mycluster:myresource /dev/drbd0
로그인 후 복사
  • 파일 시스템을 마운트합니다.
sudo mkdir /mnt/mycluster sudo mount -t gfs2 /dev/drbd0 /mnt/mycluster
로그인 후 복사
  • 파일 시스템 리소스를 추가하세요.
sudo pcs resource create myresource Filesystem device="/dev/drbd0" directory="/mnt/mycluster" fstype="gfs2" op start timeout="60s" op stop timeout="60s" op monitor interval="10s" op monitor timeout="20s" op monitor start-delay="5s" op monitor stop-delay="0s"
로그인 후 복사
  • 리소스를 활성화하고 시작하세요.
sudo pcs constraint order myresource-clone then start myresource sudo pcs constraint colocation add myresource with myresource-clone
로그인 후 복사
  1. 고가용성 테스트
    위 구성을 완료한 후 고가용성을 테스트할 수 있습니다. 테스트 단계는 다음과 같습니다.
  • 마스터 노드를 중지합니다.
sudo pcs cluster stop node1
로그인 후 복사
  • 대기 노드에서 파일 시스템이 제대로 실행되고 있는지 확인하세요.
sudo mount | grep "/mnt/mycluster"
로그인 후 복사
로그인 후 복사

출력은 대기 노드의 주소 및 마운트 지점이어야 합니다.

  • 마스터 노드를 복원합니다.
sudo pcs cluster start node1
로그인 후 복사
  • 마스터 노드에서 파일 시스템이 복원되었는지 확인하세요.
sudo mount | grep "/mnt/mycluster"
로그인 후 복사
로그인 후 복사

출력은 마스터 노드의 주소와 마운트 지점이어야 합니다.

결론:
고가용성 클러스터 파일 시스템을 구성하면 시스템의 안정성과 가용성을 향상시킬 수 있습니다. 이 문서에서는 Linux에서 고가용성 클러스터 파일 시스템을 구성하는 방법을 설명하고 해당 코드 예제를 제공합니다. 독자는 더 높은 가용성을 달성하기 위해 자신의 필요에 따라 적절하게 구성하고 조정할 수 있습니다.

위 내용은 Linux에서 고가용성 클러스터 파일 시스템을 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!