'에 대한 나의 이전 기사에서GlusterFS(파일 시스템) 및 설치 소개 – 1부'는 파일 시스템에 대한 간략한 개요와 몇 가지 기본 명령을 설명하는 이점이었습니다. 두 가지 중요한 기능에 대해 언급할 가치가 있습니다. 자가 치유 그리고 재조정, 이 기사에서 에 대한 설명 없이 GlusterFS 아무 소용이 없을 것입니다. 용어에 익숙해지자 자가 치유 그리고 재조정.
이 기능은 복제된 볼륨에 사용할 수 있습니다. 복제된 볼륨이 있다고 가정합니다. [최소 복제본 수 2]. 일부 오류로 인해 복제본 브릭 중 하나 이상의 브릭이 잠시 다운되고 사용자가 우연히 온라인 브릭에서만 영향을 받는 마운트 지점에서 파일을 삭제했다고 가정합니다.
나중에 오프라인 브릭이 온라인 상태가 되면 이 브릭에서 해당 파일도 제거해야 합니다. 즉, 복구라고 하는 복제 브릭 간의 동기화를 수행해야 합니다. 오프라인 브릭에서 파일을 생성/수정하는 경우도 마찬가지입니다. GlusterFS에는 벽돌이 온라인 상태가 될 때마다 이러한 상황을 처리하는 내장형 자가 치유 데몬이 있습니다.
브릭이 하나만 있는 분산 볼륨을 고려하십시오. 예를 들어 우리는 10개의 파일을 생성 마운트 지점을 통해 볼륨에. 이제 볼륨에 브릭만 있으므로 모든 파일이 동일한 브릭에 있습니다. 볼륨에 브릭을 하나 더 추가할 때 두 브릭 간에 총 파일 수의 균형을 다시 조정해야 할 수 있습니다. GlusterFS에서 볼륨이 확장되거나 축소되는 경우 볼륨에 포함된 다양한 브릭 간에 데이터 균형을 다시 조정해야 합니다.
1. 다음 명령을 사용하여 복제된 볼륨을 생성합니다.
$ gluster 볼륨 생성 볼륨 복제본 2 192.168.1.16:/home/a 192.168.1.16:/home/b
메모: 동일한 서버에서 브릭을 사용하여 복제된 볼륨을 생성하면 동일한 것을 무시하고 진행해야 하는 경고가 발생할 수 있습니다.
2. 볼륨을 시작하고 마운트합니다.
$ gluster 볼륨 시작 vol. $ 마운트 -t glusterfs 192.168.1.16:/vol /mnt/
3. 마운트 지점에서 파일을 만듭니다.
$ 터치 /mnt/foo
4. 두 개의 복제 브릭에서 동일한 것을 확인합니다.
$ ls /home/a/ 푸. $ ls /home/b/ 푸
5. 이제 다음을 사용하여 해당 glusterfs 데몬을 종료하여 브릭 중 하나를 오프라인으로 보냅니다. PID 볼륨 상태 정보에서 가져왔습니다.
$ gluster 볼륨 상태 vol
볼륨 상태: vol. Gluster 프로세스 포트 온라인 Pid Brick 192.168.1.16:/home/a 49152 Y 3799 Brick 192.168.1.16:/home/b 49153 Y 3810 localhost의 NFS 서버 2049 Y 3824 자가 복구 데몬 3829 N/A
메모: 서버에 자가 치유 데몬이 있는지 확인합니다.
$ 죽일 3810
$ gluster 볼륨 상태 vol
볼륨 상태: vol Gluster 프로세스 포트 온라인 Pid Brick 192.168.1.16:/home/a 49152 Y 3799 Brick 192.168.1.16:/home/b N/A N N/A localhost의 NFS 서버 2049 Y 3824 localhost의 자가 치유 데몬 N/A Y 3829
이제 두 번째 벽돌이 오프라인 상태입니다.
6. 파일 삭제 푸 마운트 지점에서 벽돌의 내용물을 확인하십시오.
$ rm -f /mnt/foo. $ ls /home/a. $ ls /home/b. 푸
당신은 참조 푸 아직 두 번째 벽돌에 있습니다.
7. 이제 벽돌을 온라인으로 가져옵니다.
$ gluster 볼륨 시작 볼륨 강제. $ gluster 볼륨 상태 vol
볼륨 상태: vol Gluster 프로세스 포트 온라인 Pid Brick 192.168.1.16:/home/a 49152 Y 3799 Brick 192.168.1.16:/home/b 49153 Y 4110 localhost의 NFS 서버 2049 Y 4122 localhost의 자가 치유 데몬 N/A Y 4129
이제 벽돌이 온라인 상태입니다.
8. 벽돌의 내용물을 확인하십시오.
$ ls /home/a/ $ ls /home/b/
파일이 자가 치유 데몬에 의해 두 번째 벽돌에서 제거되었습니다.
메모: 용량이 큰 파일의 경우 자가 복구 작업이 성공적으로 완료되기까지 다소 시간이 소요될 수 있습니다. 다음 명령을 사용하여 치유 상태를 확인할 수 있습니다.
$ 글로스터 볼륨 힐 볼륨 정보
1. 분산 볼륨을 생성합니다.
$ gluster 생성 볼륨 배포 192.168.1.16:/home/c
2. 볼륨을 시작하고 마운트합니다.
$ gluster 볼륨 시작 배포. $ 마운트 -t glusterfs 192.168.1.16:/분배 /mnt/
3. 10개의 파일을 생성합니다.
$ touch /mnt/file{1..10} $ ls /mnt/ 파일1 파일10 파일2 파일3 파일4 파일5 파일6 파일7 파일8 파일9 $ls /home/c. 파일1 파일10 파일2 파일3 파일4 파일5 파일6 파일7 파일8 파일9
4. 볼륨에 다른 벽돌 추가 분배하다.
$ gluster 볼륨 추가 벽돌 배포 192.168.1.16:/home/d. $ ls /집/일
5. 다시 균형을 잡습니다.
$ gluster 볼륨 재조정 배포 시작 볼륨 재조정: 배포: 성공: 볼륨 배포에서 재조정 시작이 성공했습니다.
6. 내용을 확인하십시오.
$ ls /home/c. 파일1 파일2 파일5 파일6 파일8 $ ls /home/d. 파일10 파일3 파일4 파일7 파일9
파일이 재조정되었습니다.
메모: 다음 명령어를 실행하여 re-balance 상태를 확인할 수 있습니다.
$ gluster 볼륨 재조정 배포 상태
노드 재조정된 파일 크기 스캔 실패 상태 실행 시간(초) localhost 5 0Bytes 15 0 0 완료됨 1.00 볼륨 재조정: 배포: 성공:
이것으로 GlusterFS에서 이 시리즈를 마무리할 계획입니다. 자가 치유 및 균형 재조정 기능에 대한 의문 사항이 있으면 여기에서 자유롭게 의견을 말하십시오.