본문 바로가기

쓰기

storage

Glusterfs rpm 설치

by 이곤아이 posted Sep 22, 2021
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

Centos환경에서 GlusterFS설치 및 운용

  1. 다운로드 : http://download.gluster.org/pub/gluster/glusterfs/3.3/3.3.1/CentOS/
  2. 설치
    	$> yum install -y fuse
    	$> rpm -ivh glusterfs-3.3.1-1.el5.i386.rpm
    	$> rpm -ivh glusterfs-fuse-3.3.1-1.el5.i386.rpm
    	$> rpm -ivh glusterfs-devel-3.3.1-1.el5.i386.rpm
    	$> rpm -ivh glusterfs-server-3.3.1-1.el5.i386.rpm
  3. gluster 데몬 실행으로 설정
    	/etc/rc.d/init.d/glusterd start
    	chkconfig glusterd on
    	
    	* 관련경로
    	/etc/glusterfs/, /var/lib/glusterd/
  4. 서버에 fuse 모듈 적용 및 확인하기
    	modprobe fuse
    	echo "modprobe fuse" >> /etc/rc.local
    	dmesg | grep -i fuse
    	fuse init (API version 7.10) <-- 해당 내용이 없으면 fuse 모듈 적재가 안된 부분임.
  5. Storage Pool 구성
    1. Management 서버에서 스토리지로 연결할 서버 등록(자신은 등록하지 않아도 됨)
      		gluster peer probe 서버IP
      		ef) gluster peer probe 192.168.150.19
    2. Pool 확인
      		[root@localhost ~]# gluster peer status
      		Number of Peers: 1
      		Hostname: 192.168.150.19
      		Uuid: 0bb2e93b-1ab1-4420-91c0-e5bcf203586b
      		State: Peer in Cluster (Connected)
    3. Storage pool 제거
      		gluster peer detach 서버IP
      		
      		ef) gluster peer detach 192.168.150.19
    4. Volume 구성정보
      1. Volume 구성방식은 Distributed(분산저장, 기본)
        • 데이터가 들어오면 Brick중 한군데 서버에 저장이 됨
        • Distributed 모드에서 어느 하나 Brick이 중단될 경우, 중단된 Brick이 가지고 있는 데이터는 보이지 않게 됨.
      2. replicated(분산저장, replication 수 만큼 파일복사)
        • 데이터가 들어오면 Brick이 모두 데이터를 가지게 됨, 가장 안정적. 
      3. stripe(단독저장) 로 구성가능
        1. 데이터가 들어오면 한 데이터를 Brick에 분산 저장됨
        2. Stripe 모드에서 어느 하나 Brick이 중단될 경우, 데이터가 깨짐
    5. volume 생성 (Distributed 방식)
      		gluster volume create 볼륨이름 vmlnx001:/data vmlnx002:/data vmlnx003:/data vmlnx004:/data
      		
      		ef) gluster volume create data 192.168.150.18:/data 192.168.150.19:/data
      		
      		
      		gluster> volume status data
      		Status of volume: data
      		Gluster process                                         Port    Online  Pid
      		
      		------------------------------------------------------------------------------
      		
      		Brick 192.168.150.18:/data                              24011   Y       3245
      		Brick 192.168.150.19:/data                              24011   Y       2481
      		NFS Server on localhost                                 38467   Y       3251
      		NFS Server on 192.168.150.19                            38467   Y       2487
      		
      		gluster> volume info data
      		Volume Name: data
      		Type: Distribute
      		Volume ID: 556d6065-f888-4198-8782-65bc03979a0b
      		Status: Started
      		Number of Bricks: 3
      		Transport-type: tcp
      		Bricks:
      		Brick1: 192.168.150.18:/data
      		Brick2: 192.168.150.19:/data
      		Brick3: 192.168.150.16:/data
    6. volume 생성 (Replicate 방식)
      		gluster> volume create data replica 2 192.168.150.18:/data 192.168.150.19:/data
      		
      		생성한 volume 확인
      		gluster> volume info all
      		Volume Name: data
      		Type: Replicate
      		Volume ID: c2ecd1b8-708e-47d4-8f15-adcd1b081987
      		Status: Started
      		Number of Bricks: 1 x 2 = 2
      		Transport-type: tcp
      		Bricks:
      		Brick1: 192.168.150.19:/data
      		Brick2: 192.168.150.18:/data
    7. volume 생성 (stripe 방식)
      		gluster volume create data stripe 2 transport tcp 192.168.150.18:/data 192.168.150.19:/data
    8. volume 생성시 기존에 생성된 volume일 경우, 생성이 실패 한다
      ef) gluster volume create data replica 3 192.168.150.18:/data 192.168.150.19:/data 192.168.150.16:/data
      		
      		/data or a prefix of it is already part of a volume
      		 

      이 경우, 등록한 노드 폴더에 들어가면, .glusterfs라는 폴더가 존재한다.
      root@localhost data]# ls -al
      		합계 44
      		drwxr-xr-x  4 root root  4096 12월  6 16:00 .
      		drwxr-xr-x 24 root root  4096 12월  6 16:01 ..
      		drw-------  7 root root  4096 12월  6 15:17 .glusterfs
      		drwx------  2 root root 16384 12월  5 13:48 lost+found

      해결책은 해당 폴더 권한 수정 후 폴더 삭제하면 된다.
      		setfattr -x trusted.glusterfs.volume-id /data/
      		setfattr -x trusted.gfid /data/
      		rm -rf .glusterfs
    9. 생성할 볼륨 활성화
      		gluster> volume start data
    10. 생성한 볼륨 접근 허가 대역 지정
      		gluster volume set <volume_name> auth.allow <허가IP대역>
      		ef) gluster> volume set data  auth.allow 192.168.150.*
      		 
    11. Volume 삭제 방법
      gluster volume stop <volume_name>
      		gluster volume delete <volume_name>
      		
      		ef)
      		gluster volume stop data
      		gluster volume delete data
    12. 생성한 Volume 마운트
      		mount -t glusterfs <server_name>:<volume_name> <mount point>
      		mount -t glusterfs 192.168.150.18:/data /test/
      		
      		[root@localhost ~]# df -h
      		Filesystem            Size  Used Avail Use% Mounted on
      		/dev/sda2             4.9G  1.5G  3.2G  31% /
      		/dev/sda5             9.6G  151M  9.0G   2% /data
      		/dev/sda1              99M   12M   83M  13% /boot
      		tmpfs                1014M     0 1014M   0% /dev/shm
      		glusterfs#192.168.150.18:/data
      		                      9.6G  151M  9.0G   2% /test
    13. 자동으로 마운트시 /etc/fstab에 내용 추가
      		192.168.150.18:/data    /mnt                    glusterfs defaults,_netdev      0 0
      * 이 경우, netfs 서비스가 활성화 되어있어야 재부팅 해도 마운트를 한다.
    14. Volume 확장
      용량 부족시 증설가능 (replicate모드는 최초 설정한 Brick만큼 추가 해 주어야 한다.)
      		
      		gluster volume add-brick dist_vol 172.27.0.9:/data
      		ef) gluster volume add-brick data 192.168.150.16:/data
       
      		Brick추가 후 volume 상태
      		
      		추가 전)
      		gluster> volume status data
      		Status of volume: data
      		Gluster process                                         Port    Online  Pid
      		------------------------------------------------------------------------------
      		Brick 192.168.150.18:/data                              24011   Y       3245
      		Brick 192.168.150.19:/data                              24011   Y       2481
      		NFS Server on localhost                                 38467   Y       3251
      		NFS Server on 192.168.150.16                            38467   Y       4216
      		NFS Server on 192.168.150.19                            38467   Y       2487
      		
      		추가 후)
      		gluster> volume status data
      		Status of volume: data
      		Gluster process                                         Port    Online  Pid
      		------------------------------------------------------------------------------
      		Brick 192.168.150.18:/data                              24011   Y       3245
      		Brick 192.168.150.19:/data                              24011   Y       2481
      		Brick 192.168.150.16:/data                              24011   Y       4384
      		NFS Server on localhost                                 38467   Y       3268
      		NFS Server on 192.168.150.16                            38467   Y       4390
      		NFS Server on 192.168.150.19                            38467   Y       2501
    15. 성능튜닝
      gluster> volume set data performance.write-behind-window-size 1024MB
      		gluster> volume set data  performance.cache-size 512MB

       
TAG •
?

List of Articles
번호 분류 제목 글쓴이 조회 수 날짜
» storage Glusterfs rpm 설치 이곤아이 200 2021.09.22
4 storage DRBD 기술노트 이곤아이 246 2021.09.17
3 storage RHEL환경에서 VDO 사용하기 이곤아이 291 2021.09.17
2 storage Ceph 스토리지 구축 이곤아이 349 2021.09.14
1 storage centos6에서 iscsi 연결하기 이곤아이 307 2021.09.13
목록
Board Pagination Prev 1 Next
/ 1