glusterFS 설치
glusterFS 는 노드 볼륨을 상호 동기화 하기 위한 도구
주요 작업 내용
- 각 노드에 gluster 서버 기동
- 노드 간 클러스터링 설정
- 동기화 할 볼륨 생성
- 각 노드에 사용할 경로에 볼륨 마운트
1. 노드별 gluster Server 생성
- 기존 도커 중지
- docker stop gluster-server
- 도커 실행
docker run –rm \
-v glusterfs-lib:/var/lib/glusterd:z \
-v glusterfs-fs:/gluster/fs \
-d –privileged=true –net=host \
–restart on-failure –name gluster-server gluster/gluster-centos
2. gluster Server (컨테이너) 작업
한 컨테이너에서 실행
docker exec -it $(docker ps -q -f name=gluster) bash
노드간 클러스터링 설정
- export replica=클러스터링 노드수
- export node0=노드1 IP
- export node1=노드2 IP
- 클러스터링 노드 등록 (접속한 노드는 등록하지 않아도 됨)
- gluster peer probe ${node0}
- gluster peer probe ${node1}
- 클러스터링 등록/연결 상태 조회
- gluster peer status
볼륨 생성
- 볼륨 삭제
- gluster volume stop gVol
- gluster volume delete gVol
- 볼륨 생성
- gluster volume create gVol replica ${replica} transport tcp ${node0}:/gluster/fs ${node1}:/gluster/fs force
- 볼륨 설정
- gluster volume set gVol network.ping-timeout 1
- gluster volume set gVol ctime off
- 볼륨 사용
- gluster volume start gVol
- 상태 조회
- gluster volume info gVol
- gluster volume status gVol
3. 노드별 볼륨 마운트
gluster client 설치 (glusterfs 파일시스템 사용을 위함)
- 우분투
- apt install glusterfs-client
- centos
- yum install glusterfs-client
볼륨 마운트
- 마운트 제거
- umount ${GVOL_HOME}
- 마운트 생성
- mount -t glusterfs localhost:/gVol /data/test
- 상태 확인
- mount |grep gVol
- 권한 설정
- chmod -R 777 ${GVOL_HOME}
